twetch-sdk 0.0.1

rust twetch sdk with wasm builds
Documentation
use bsv_wasm::ExtendedPrivateKey;

pub struct Wallet {
    seed: String,
}

impl Wallet {
    pub fn new(seed: String) -> Wallet {
        Wallet { seed }
    }

    pub fn xpriv(&self) -> Option<ExtendedPrivateKey> {
        let xpriv = match ExtendedPrivateKey::from_mnemonic(self.seed.as_bytes(), None) {
            Ok(v) => v,
            Err(_) => return None,
        };
        Some(xpriv)
    }

    pub fn xpriv_account(&self) -> Option<ExtendedPrivateKey> {
        let xpriv = match self.xpriv() {
            Some(v) => v.derive_from_path("m/0/0").unwrap(),
            None => return None,
        };

        Some(xpriv)
    }

    pub fn xpriv_wallet(&self) -> Option<ExtendedPrivateKey> {
        let xpriv = match self.xpriv() {
            Some(v) => v.derive_from_path("m/44'/0'/0'/0").unwrap(),
            None => return None,
        };

        Some(xpriv)
    }
}