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#![warn(missing_docs)]
10#![allow(clippy::uninlined_format_args)]
11
12#[cfg(feature = "std")]
13#[macro_use]
14extern crate std;
15
16#[doc(hidden)]
17#[macro_use]
18pub extern crate alloc;
19pub extern crate bdk_chain as chain;
20#[cfg(feature = "file_store")]
21pub extern crate bdk_file_store as file_store;
22#[cfg(feature = "keys-bip39")]
23pub extern crate bip39;
24pub extern crate bitcoin;
25pub extern crate miniscript;
26pub extern crate serde;
27pub extern crate serde_json;
28
29pub mod descriptor;
30pub mod keys;
31pub mod psbt;
32#[cfg(feature = "test-utils")]
33pub mod test_utils;
34mod types;
35mod wallet;
36
37pub(crate) use bdk_chain::collections;
38#[cfg(feature = "rusqlite")]
39pub use bdk_chain::rusqlite;
40#[cfg(feature = "rusqlite")]
41pub use bdk_chain::rusqlite_impl;
42pub use descriptor::template;
43pub use descriptor::HdKeyPaths;
44pub use signer;
45pub use signer::SignOptions;
46pub use tx_builder::*;
47pub use types::*;
48pub use wallet::*;
49
50pub fn version() -> &'static str {
52 env!("CARGO_PKG_VERSION", "unknown")
53}