1
2
3
4
5
6
7
8
9
10
11
use super::{Chain, Key, Segment};
pub trait PrivateKey<T> {
type SecretKey;
fn secret_key(&self) -> crate::Result<Self::SecretKey>;
fn child_key(&self, segment: Segment) -> crate::Result<Key>;
fn derive(&self, chain: &Chain) -> crate::Result<Key>;
}