#![allow(deprecated)]
pub mod seed;
#[cfg(feature = "wots_deprecated_do_not_use")]
#[cfg_attr(docsrs, doc(cfg(feature = "wots_deprecated_do_not_use")))]
#[cfg_attr(not(test), deprecated)]
pub mod wots;
use crate::{
encoding::ternary::{Trits, T1B1},
keys::ternary::seed::Seed,
signatures::ternary::PrivateKey,
};
pub trait PrivateKeyGenerator {
type PrivateKey: PrivateKey;
type Error;
fn generate_from_seed(&self, seed: &Seed, index: usize) -> Result<Self::PrivateKey, Self::Error> {
self.generate_from_entropy(seed.subseed(index).as_trits())
}
fn generate_from_entropy(&self, entropy: &Trits<T1B1>) -> Result<Self::PrivateKey, Self::Error>;
}