mod hd;
mod key;
mod keygen;
mod point;
mod resharing;
mod schnorr;
mod signature;
mod signing;
pub use hd::{HARDENED_KEY_START, derive_chain_code, import_key};
pub use key::{KEY_VERSION, Key};
pub use keygen::Keygen;
pub use point::PointError;
pub use resharing::Resharing;
pub use signature::SignatureData;
pub use signing::Signing;
#[derive(Debug)]
pub enum Error {
Validation(String),
Point(PointError),
Serde(serde_json::Error),
Tss(Box<crate::tss::TssError>),
}
impl std::fmt::Display for Error {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Error::Validation(m) => write!(f, "frosttss: {m}"),
Error::Point(e) => write!(f, "{e}"),
Error::Serde(e) => write!(f, "frosttss: json: {e}"),
Error::Tss(e) => write!(f, "{e}"),
}
}
}
impl std::error::Error for Error {}
impl From<PointError> for Error {
fn from(e: PointError) -> Self {
Error::Point(e)
}
}
impl From<serde_json::Error> for Error {
fn from(e: serde_json::Error) -> Self {
Error::Serde(e)
}
}
impl From<crate::tss::TssError> for Error {
fn from(e: crate::tss::TssError) -> Self {
Error::Tss(Box::new(e))
}
}