use crate::curve::{CurvePrivateKey, CurvePublicKey, TweakableKey};
pub trait Secp256k1Backend {
type PublicKey: CurvePublicKey<Bytes = [u8; 33]> + TweakableKey;
type PrivateKey: CurvePrivateKey<Bytes = [u8; 32], PublicKey = Self::PublicKey> + TweakableKey;
}
#[cfg(feature = "k256")]
mod k256;
#[cfg(feature = "secp256k1")]
mod secp256k1;
#[cfg(feature = "k256")]
pub use self::k256::K256Backend;
#[cfg(feature = "secp256k1")]
pub use self::secp256k1::Secp256k1FfiBackend;