async-hwi

```rust /// HWI is the common Hardware Wallet Interface.

[async_trait]

pub trait HWI: Debug { /// Return the device kind fn devicekind(&self) -> DeviceKind; /// Application version or OS version. async fn getversion(&self) -> Result; /// Check that the device is connected but not necessarily available. async fn isconnected(&self) -> Result<(), Error>; /// Get master fingerprint. async fn getfingerprint(&self) -> Result; /// Get the xpub with the given derivation path. async fn getextendedpubkey(&self, path: &DerivationPath) -> Result; /// Register a new wallet policy async fn registerwallet(&mut self, name: &str, policy: &str) -> Result; /// Sign a partially signed bitcoin transaction (PSBT). async fn signtx(&self, tx: &mut Psbt) -> Result<(), Error>; } ```

Devices supported

| name | App version | |---------------------------------------------------------|-------------| | Specter | v1.8.0 | | Ledger | v2.1.2 |