1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
4#![cfg_attr(
5 docsrs,
6 doc(html_logo_url = "https://github.com/bitcoindevkit/bdk/raw/master/static/bdk.png")
7)]
8#![no_std]
9#![allow(deprecated)] #![warn(missing_docs)]
11#![allow(clippy::uninlined_format_args)]
12
13#[cfg(feature = "std")]
14#[macro_use]
15extern crate std;
16
17#[doc(hidden)]
18#[macro_use]
19pub extern crate alloc;
20pub extern crate bdk_chain as chain;
21#[cfg(feature = "file_store")]
22pub extern crate bdk_file_store as file_store;
23#[cfg(feature = "keys-bip39")]
24pub extern crate bip39;
25pub extern crate bitcoin;
26pub extern crate miniscript;
27pub extern crate serde;
28pub extern crate serde_json;
29
30pub mod descriptor;
31pub mod keys;
32pub mod psbt;
33#[cfg(feature = "test-utils")]
34pub mod test_utils;
35
36#[cfg(feature = "test-utils")]
37pub mod persist_test_utils;
38
39mod types;
40mod wallet;
41
42pub(crate) use bdk_chain::collections;
43#[cfg(feature = "rusqlite")]
44pub use bdk_chain::rusqlite;
45#[cfg(feature = "rusqlite")]
46pub use bdk_chain::rusqlite_impl;
47pub use descriptor::template;
48pub use descriptor::HdKeyPaths;
49pub use signer;
50pub use signer::SignOptions;
51pub use tx_builder::*;
52pub use types::*;
53pub use wallet::*;
54
55pub fn version() -> &'static str {
57 env!("CARGO_PKG_VERSION", "unknown")
58}