#![warn(missing_docs)]
mod bip38;
mod bip39;
mod bip85;
mod derive;
mod diagram;
mod macros;
#[doc(no_inline)]
pub use bitcoin::{self, bip32::Xpriv, bip32::Xpub};
pub use bip38::{Bip38 as BIP38, MnemonicEncryption};
pub use bip39::{Bip39 as BIP39, Language, Mnemonic};
pub use bip85::{Bip85 as BIP85, Password, Wif};
pub use derive::{Bip32 as BIP32, Bip44 as BIP44, Bip49 as BIP49, Bip84 as BIP84};
pub use diagram::{AnimateDiagram, ComplexDiagram, Diagram, GenericDiagram, SimpleDiagram};
#[cfg(feature = "serde")]
pub use diagram::{Matrix, ToMatrix};
pub mod error {
#[derive(thiserror::Error, Debug)]
pub enum Error {
#[error("Diagram: {0}")]
DiagramError(#[from] crate::diagram::Error),
#[error("BIP38: {0}")]
Bip38Error(#[from] crate::bip38::Bip38Error),
#[error("BIP39: {0}")]
Bip39Error(#[from] crate::bip39::Bip39Error),
#[error("BIP85: {0}")]
Bip85Error(#[from] crate::bip85::Error),
#[error("Derive: {0}")]
DeriveError(#[from] crate::derive::DeriveError),
#[error("bip32 error: {0}")]
Bip32Error(#[from] bitcoin::bip32::Error),
}
}
pub use error::Error;
#[cfg(not(feature = "testnet"))]
pub const NETWORK: bitcoin::NetworkKind = bitcoin::NetworkKind::Main;
#[cfg(feature = "testnet")]
pub const NETWORK: bitcoin::NetworkKind = bitcoin::NetworkKind::Test;