#![cfg_attr(docsrs, feature(doc_auto_cfg))]
#![cfg_attr(feature = "async", allow(async_fn_in_trait))]
#[cfg(all(
feature = "async",
any(
feature = "resolver-esplora",
feature = "resolver-electrum",
/*feature = "resolver-bitcoinrpc"*/
)
))]
compile_error!("async feature must not be used with non-async resolvers");
#[cfg(all(feature = "async", feature = "fs"))]
compile_error!("async feature must not be used with fs feature");
extern crate alloc;
#[macro_use]
extern crate amplify;
#[cfg(feature = "serde")]
#[macro_use]
extern crate serde;
extern crate core;
pub extern crate rgbdescr as descriptors;
mod utxoset;
mod owner;
mod coinselect;
mod runtime;
mod info;
pub mod resolvers;
pub use coinselect::CoinselectStrategy;
pub use info::{CodexInfo, ContractInfo};
#[cfg(feature = "fs")]
pub use owner::file::FileHolder;
pub use owner::{Holder, MultiHolder, Owner, OwnerProvider};
#[cfg(feature = "fs")]
pub use runtime::file::{ConsignmentStream, RgbpRuntimeDir, Transfer};
pub use runtime::{FinalizeError, PayError, Payment, RgbRuntime, TransferError};
pub use utxoset::{MemUtxos, UtxoSet};