Skip to main content

csv_adapter_bitcoin/
lib.rs

1//! Bitcoin Adapter for CSV (Client-Side Validation)
2//!
3//! This adapter implements the AnchorLayer trait for Bitcoin,
4//! using UTXOs as single-use seals and Tapret/Opret for commitment publication.
5
6#![warn(missing_docs)]
7#![allow(missing_docs)]
8#![allow(dead_code)]
9
10pub mod adapter;
11pub mod bip341;
12pub mod config;
13pub mod error;
14pub mod proofs;
15pub mod proofs_new;
16pub mod rpc;
17pub mod seal;
18pub mod signatures;
19pub mod spv;
20pub mod tapret;
21pub mod testnet_deploy;
22pub mod tx_builder;
23pub mod types;
24pub mod wallet;
25
26#[cfg(feature = "rpc")]
27pub mod real_rpc;
28
29#[cfg(feature = "signet-rest")]
30pub mod mempool_rpc;
31
32pub use adapter::BitcoinAnchorLayer;
33pub use bip341::{derive_output_key, generate_test_keypair, Bip341Error, TaprootOutput};
34pub use config::{BitcoinConfig, Network};
35pub use rpc::BitcoinRpc;
36pub use spv::SpvVerifier;
37pub use tapret::{
38    mine_tapret_nonce, OpretCommitment, TapretCommitment, TapretError, TAPRET_SCRIPT_SIZE,
39};
40pub use tx_builder::{CommitmentData, CommitmentTxBuilder, TxBuilderError};
41pub use types::{BitcoinAnchorRef, BitcoinFinalityProof, BitcoinInclusionProof, BitcoinSealRef};
42pub use wallet::{Bip86Path, DerivedTaprootKey, SealWallet, WalletError, WalletUtxo};
43
44#[cfg(feature = "rpc")]
45pub use real_rpc::real_rpc::{RealBitcoinRpc, TxInfo};
46
47#[cfg(feature = "signet-rest")]
48pub use mempool_rpc::MempoolSignetRpc;