#![deny(warnings, clippy::pedantic)]
#![allow(
clippy::module_name_repetitions,
clippy::expl_impl_clone_on_copy,
clippy::missing_panics_doc,
clippy::missing_errors_doc,
clippy::must_use_candidate,
clippy::upper_case_acronyms,
clippy::too_many_arguments
)]
#[cfg(feature = "clarity")]
pub mod clarity;
pub mod crypto;
#[cfg(feature = "transaction")]
pub mod transaction;
#[cfg(feature = "wallet-sdk")]
pub mod wallet;
#[cfg(feature = "derive")]
pub mod derive {
pub use stacks_derive::*;
}
#[derive(Debug, Clone, thiserror::Error)]
pub enum Error {
#[error(transparent)]
Base58(#[from] crypto::b58::Error),
#[error(transparent)]
C32(#[from] crypto::c32::Error),
#[error(transparent)]
Hex(#[from] crypto::hex::Error),
#[cfg(feature = "clarity")]
#[error(transparent)]
Clarity(#[from] clarity::Error),
#[cfg(feature = "transaction")]
#[error(transparent)]
Transaction(#[from] transaction::Error),
#[cfg(feature = "wallet-sdk")]
#[error(transparent)]
Wallet(#[from] wallet::Error),
#[cfg(feature = "derive")]
#[error("{0}")]
Derive(String),
}
pub use secp256k1::PublicKey;
pub use secp256k1::SecretKey;