reasampler_pure_library(package_format SOURCES package_format.cpp)
reasampler_test(package_format LINK package_format)

reasampler_pure_library(package_manifest
    SOURCES package_manifest.cpp
    LINK PUBLIC bank_model slot_map PRIVATE package_format json)
reasampler_test(package_manifest LINK package_manifest)

reasampler_pure_library(export_plan
    SOURCES export_plan.cpp
    LINK PUBLIC package_manifest PRIVATE package_format)
reasampler_test(export_plan LINK export_plan package_format)

# bytes.h is header-only (see src/core/wire/CLAUDE.md) — no wire link edge needed.
reasampler_pure_library(bank_package
    SOURCES bank_package.cpp
    LINK PUBLIC package_format package_manifest PRIVATE app_version)
# app_version: the tests pin the stamped writer semver against stampVersion().
reasampler_test(bank_package LINK bank_package app_version)
