privacy_core/lib.rs
1//! privacy-core — shared, halo2-free foundation for the privacy-indexer and privacy-relayer.
2//!
3//! Contains only the light, proving-stack-free pieces both services need:
4//! * `ethereum` — event-log decode + bundle/erc/finalize calldata encode (ethabi).
5//! * `types` — plain serde data structures (stored bundle, indexed notes/bundles).
6//! * `intent` — BTC shield-intent helpers (single-sig federation V1).
7//!
8//! The Fr/circuit/witness machinery (proving, note decryption, key derivation, Poseidon)
9//! deliberately stays out of this crate so the services don't pull in halo2.
10
11pub mod commitment_tree;
12pub mod ethereum;
13pub mod intent;
14pub mod types;
15
16// Convenience re-exports.
17pub use intent::{build_shield_intent_v1, bundle_content_sha256, BridgeError, BtcDepositConfigV1, ShieldIntentV1};
18pub use types::{
19 OrchardIndexBatch, OrchardIndexedAbiNote, OrchardIndexedBundle, OrchardStoredAction,
20 OrchardStoredBundle,
21};