1#[macro_use]
23extern crate amplify;
24#[cfg(feature = "serde")]
25#[macro_use]
26extern crate serde_crate as serde;
27
28#[cfg(feature = "bdk")]
29mod bdk_provider;
30#[cfg(feature = "bp")]
31mod bp_provider;
32mod descriptor;
33mod filters;
34pub mod pay;
35mod errors;
36mod wallet;
37
38#[cfg(feature = "bp")]
39pub use descriptor::bp_wallet_integration;
40pub use descriptor::{DescriptorRgb, RgbDescr, TapretKey, WpkhDescr};
41pub use errors::{CompletionError, CompositionError, PayError, WalletError};
42pub use pay::{TransferParams, WalletProvider};
43pub use rgbstd::*;
44pub mod resolvers {
45 pub use rgbstd::indexers::AnyResolver;
46 #[cfg(any(
47 feature = "electrum_blocking",
48 feature = "esplora_blocking",
49 feature = "mempool_blocking"
50 ))]
51 pub use rgbstd::indexers::*;
52 use rgbstd::ChainNet;
53
54 use super::validation::{ResolveWitness, WitnessResolverError, WitnessStatus};
55 use super::Txid;
56
57 pub struct ContractIssueResolver;
58 impl ResolveWitness for ContractIssueResolver {
59 fn resolve_witness(&self, _: Txid) -> Result<WitnessStatus, WitnessResolverError> {
60 panic!("contract issue resolver must not be used for an already-existing contracts")
61 }
62 fn check_chain_net(&self, _: ChainNet) -> Result<(), WitnessResolverError> {
63 panic!("contract issue resolver must not be used for an already-existing contracts")
64 }
65 }
66}
67pub use filters::WalletFilter;
68pub use wallet::RgbWallet;