You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`tx-builder/utils.ts`| Constants & helpers specific to size/fee calculation inside the builder. |
40
+
|**wallet/**| Stateful, observable wallet core and signer. |
41
+
|`wallet/BitcoinWallet.ts`| Polls provider, maintains `balance$`, `utxos$`, history & pending TXs via RxJS. |
42
+
|`wallet/BitcoinSigner.ts`| Thin wrapper around `@bitcoinerlab/secp256k1` for PSBT input signing + key zeroisation. |
43
+
|`index.ts`| Package entry point. |
45
44
46
45
## **High Level Overview**
47
46
48
47
### Common
49
48
50
49
Handles all deterministic key derivation (BIP-32, Electrum), address transformation, and Taproot tweaking. It is strictly pure code with no network or disk I/O. It contains some common types shared across all other modules.
51
50
52
-
53
51
### Provider
54
52
55
53
A thin abstraction (BlockchainDataProvider) encodes everything the wallet needs from a chain service: block tip, UTXOs, mempool, fee estimates, and broadcast. The provider isolates all network I/O and normalises raw REST/RPC responses into the package’s own types (BlockInfo, UTxO, TransactionHistoryEntry, …).
@@ -75,5 +73,3 @@ This module provides:
75
73
-**Input** selection Extension point for input selection, comes with a GreedyInputSelector that implements a simple, deterministic algorithm.
76
74
-**Builder** TransactionBuilder composes PSBTs, computes vBytes, and enforces dust rules.
77
75
-**Signer** BitcoinSigner wraps @bitcoinerlab/secp256k1, signs each PSBT input, and scrubs the private key from memory.
0 commit comments