@atomiqlabs/sdk 8.6.6 → 8.6.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/dist/SmartChainAssets.d.ts +181 -181
  2. package/dist/SmartChainAssets.js +181 -181
  3. package/dist/bitcoin/coinselect2/accumulative.d.ts +6 -6
  4. package/dist/bitcoin/coinselect2/accumulative.js +52 -51
  5. package/dist/bitcoin/coinselect2/blackjack.d.ts +6 -6
  6. package/dist/bitcoin/coinselect2/blackjack.js +38 -37
  7. package/dist/bitcoin/coinselect2/index.d.ts +19 -17
  8. package/dist/bitcoin/coinselect2/index.js +69 -69
  9. package/dist/bitcoin/coinselect2/utils.d.ts +77 -75
  10. package/dist/bitcoin/coinselect2/utils.js +123 -123
  11. package/dist/bitcoin/wallet/BitcoinWallet.d.ts +130 -128
  12. package/dist/bitcoin/wallet/BitcoinWallet.js +322 -322
  13. package/dist/bitcoin/wallet/IBitcoinWallet.d.ts +78 -78
  14. package/dist/bitcoin/wallet/IBitcoinWallet.js +21 -20
  15. package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.d.ts +101 -99
  16. package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.js +190 -176
  17. package/dist/enums/FeeType.d.ts +15 -15
  18. package/dist/enums/FeeType.js +19 -19
  19. package/dist/enums/SwapAmountType.d.ts +15 -15
  20. package/dist/enums/SwapAmountType.js +19 -19
  21. package/dist/enums/SwapDirection.d.ts +15 -15
  22. package/dist/enums/SwapDirection.js +19 -19
  23. package/dist/enums/SwapSide.d.ts +15 -15
  24. package/dist/enums/SwapSide.js +19 -19
  25. package/dist/enums/SwapType.d.ts +75 -75
  26. package/dist/enums/SwapType.js +79 -79
  27. package/dist/errors/IntermediaryError.d.ts +13 -13
  28. package/dist/errors/IntermediaryError.js +27 -27
  29. package/dist/errors/RequestError.d.ts +32 -32
  30. package/dist/errors/RequestError.js +54 -54
  31. package/dist/errors/UserError.d.ts +8 -8
  32. package/dist/errors/UserError.js +16 -16
  33. package/dist/events/UnifiedSwapEventListener.d.ts +23 -23
  34. package/dist/events/UnifiedSwapEventListener.js +130 -130
  35. package/dist/http/HttpUtils.d.ts +27 -27
  36. package/dist/http/HttpUtils.js +91 -90
  37. package/dist/http/paramcoders/IParamReader.d.ts +8 -8
  38. package/dist/http/paramcoders/IParamReader.js +2 -2
  39. package/dist/http/paramcoders/ParamDecoder.d.ts +44 -42
  40. package/dist/http/paramcoders/ParamDecoder.js +137 -137
  41. package/dist/http/paramcoders/ParamEncoder.d.ts +20 -18
  42. package/dist/http/paramcoders/ParamEncoder.js +36 -36
  43. package/dist/http/paramcoders/SchemaVerifier.d.ts +26 -26
  44. package/dist/http/paramcoders/SchemaVerifier.js +145 -145
  45. package/dist/http/paramcoders/client/ResponseParamDecoder.d.ts +11 -11
  46. package/dist/http/paramcoders/client/ResponseParamDecoder.js +57 -57
  47. package/dist/http/paramcoders/client/StreamParamEncoder.d.ts +13 -11
  48. package/dist/http/paramcoders/client/StreamParamEncoder.js +26 -26
  49. package/dist/http/paramcoders/client/StreamingFetchPromise.d.ts +16 -16
  50. package/dist/http/paramcoders/client/StreamingFetchPromise.js +174 -173
  51. package/dist/index.d.ts +85 -85
  52. package/dist/index.js +158 -158
  53. package/dist/intermediaries/Intermediary.d.ts +157 -157
  54. package/dist/intermediaries/Intermediary.js +142 -142
  55. package/dist/intermediaries/IntermediaryDiscovery.d.ts +199 -198
  56. package/dist/intermediaries/IntermediaryDiscovery.js +406 -406
  57. package/dist/intermediaries/apis/IntermediaryAPI.d.ts +439 -437
  58. package/dist/intermediaries/apis/IntermediaryAPI.js +603 -603
  59. package/dist/intermediaries/apis/TrustedIntermediaryAPI.d.ts +155 -155
  60. package/dist/intermediaries/apis/TrustedIntermediaryAPI.js +137 -137
  61. package/dist/lnurl/LNURL.d.ts +102 -102
  62. package/dist/lnurl/LNURL.js +321 -321
  63. package/dist/prices/RedundantSwapPrice.d.ts +110 -110
  64. package/dist/prices/RedundantSwapPrice.js +222 -222
  65. package/dist/prices/SingleSwapPrice.d.ts +34 -34
  66. package/dist/prices/SingleSwapPrice.js +44 -44
  67. package/dist/prices/SwapPriceWithChain.d.ts +107 -107
  68. package/dist/prices/SwapPriceWithChain.js +128 -128
  69. package/dist/prices/abstract/ICachedSwapPrice.d.ts +28 -28
  70. package/dist/prices/abstract/ICachedSwapPrice.js +62 -62
  71. package/dist/prices/abstract/IPriceProvider.d.ts +81 -81
  72. package/dist/prices/abstract/IPriceProvider.js +74 -74
  73. package/dist/prices/abstract/ISwapPrice.d.ts +168 -168
  74. package/dist/prices/abstract/ISwapPrice.js +279 -279
  75. package/dist/prices/providers/BinancePriceProvider.d.ts +23 -23
  76. package/dist/prices/providers/BinancePriceProvider.js +30 -30
  77. package/dist/prices/providers/CoinGeckoPriceProvider.d.ts +23 -23
  78. package/dist/prices/providers/CoinGeckoPriceProvider.js +29 -29
  79. package/dist/prices/providers/CoinPaprikaPriceProvider.d.ts +25 -25
  80. package/dist/prices/providers/CoinPaprikaPriceProvider.js +29 -29
  81. package/dist/prices/providers/CustomPriceProvider.d.ts +24 -24
  82. package/dist/prices/providers/CustomPriceProvider.js +35 -35
  83. package/dist/prices/providers/KrakenPriceProvider.d.ts +38 -38
  84. package/dist/prices/providers/KrakenPriceProvider.js +45 -45
  85. package/dist/prices/providers/OKXPriceProvider.d.ts +34 -34
  86. package/dist/prices/providers/OKXPriceProvider.js +29 -29
  87. package/dist/prices/providers/abstract/ExchangePriceProvider.d.ts +17 -17
  88. package/dist/prices/providers/abstract/ExchangePriceProvider.js +21 -21
  89. package/dist/prices/providers/abstract/HttpPriceProvider.d.ts +7 -7
  90. package/dist/prices/providers/abstract/HttpPriceProvider.js +12 -12
  91. package/dist/storage/IUnifiedStorage.d.ts +85 -85
  92. package/dist/storage/IUnifiedStorage.js +2 -2
  93. package/dist/storage/UnifiedSwapStorage.d.ts +114 -114
  94. package/dist/storage/UnifiedSwapStorage.js +116 -116
  95. package/dist/storage-browser/IndexedDBUnifiedStorage.d.ts +63 -63
  96. package/dist/storage-browser/IndexedDBUnifiedStorage.js +298 -298
  97. package/dist/storage-browser/LocalStorageManager.d.ts +49 -49
  98. package/dist/storage-browser/LocalStorageManager.js +93 -93
  99. package/dist/swapper/Swapper.d.ts +687 -686
  100. package/dist/swapper/Swapper.js +1603 -1603
  101. package/dist/swapper/SwapperFactory.d.ts +135 -135
  102. package/dist/swapper/SwapperFactory.js +162 -162
  103. package/dist/swapper/SwapperUtils.d.ts +200 -200
  104. package/dist/swapper/SwapperUtils.js +467 -467
  105. package/dist/swapper/SwapperWithChain.d.ts +404 -404
  106. package/dist/swapper/SwapperWithChain.js +469 -469
  107. package/dist/swapper/SwapperWithSigner.d.ts +322 -322
  108. package/dist/swapper/SwapperWithSigner.js +318 -318
  109. package/dist/swaps/IAddressSwap.d.ts +22 -22
  110. package/dist/swaps/IAddressSwap.js +14 -13
  111. package/dist/swaps/IBTCWalletSwap.d.ts +73 -73
  112. package/dist/swaps/IBTCWalletSwap.js +18 -17
  113. package/dist/swaps/IClaimableSwap.d.ts +49 -49
  114. package/dist/swaps/IClaimableSwap.js +15 -14
  115. package/dist/swaps/IClaimableSwapWrapper.d.ts +15 -15
  116. package/dist/swaps/IClaimableSwapWrapper.js +2 -2
  117. package/dist/swaps/IRefundableSwap.d.ts +43 -43
  118. package/dist/swaps/IRefundableSwap.js +14 -13
  119. package/dist/swaps/ISwap.d.ts +387 -386
  120. package/dist/swaps/ISwap.js +346 -346
  121. package/dist/swaps/ISwapWithGasDrop.d.ts +21 -21
  122. package/dist/swaps/ISwapWithGasDrop.js +12 -11
  123. package/dist/swaps/ISwapWrapper.d.ts +285 -283
  124. package/dist/swaps/ISwapWrapper.js +353 -353
  125. package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.d.ts +98 -98
  126. package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.js +126 -126
  127. package/dist/swaps/escrow_swaps/IEscrowSwap.d.ts +135 -133
  128. package/dist/swaps/escrow_swaps/IEscrowSwap.js +169 -169
  129. package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.d.ts +115 -114
  130. package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.js +134 -134
  131. package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.d.ts +101 -98
  132. package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.js +130 -130
  133. package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.d.ts +162 -162
  134. package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.js +190 -190
  135. package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.d.ts +58 -58
  136. package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.js +78 -78
  137. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.d.ts +531 -529
  138. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.js +1285 -1285
  139. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.d.ts +184 -181
  140. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.js +418 -418
  141. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.d.ts +583 -581
  142. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.js +1371 -1371
  143. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.d.ts +228 -225
  144. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.js +506 -506
  145. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.d.ts +458 -458
  146. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.js +1126 -1126
  147. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.d.ts +191 -190
  148. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.js +378 -378
  149. package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.d.ts +403 -403
  150. package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.js +924 -924
  151. package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.d.ts +62 -62
  152. package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.js +112 -112
  153. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.d.ts +127 -125
  154. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.js +256 -256
  155. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.d.ts +242 -241
  156. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.js +520 -520
  157. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.d.ts +73 -73
  158. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.js +155 -155
  159. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.d.ts +128 -127
  160. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.js +278 -278
  161. package/dist/swaps/spv_swaps/SpvFromBTCSwap.d.ts +630 -630
  162. package/dist/swaps/spv_swaps/SpvFromBTCSwap.js +1443 -1443
  163. package/dist/swaps/spv_swaps/SpvFromBTCWrapper.d.ts +214 -213
  164. package/dist/swaps/spv_swaps/SpvFromBTCWrapper.js +756 -756
  165. package/dist/swaps/trusted/ln/LnForGasSwap.d.ts +261 -261
  166. package/dist/swaps/trusted/ln/LnForGasSwap.js +511 -511
  167. package/dist/swaps/trusted/ln/LnForGasWrapper.d.ts +40 -40
  168. package/dist/swaps/trusted/ln/LnForGasWrapper.js +82 -82
  169. package/dist/swaps/trusted/onchain/OnchainForGasSwap.d.ts +342 -342
  170. package/dist/swaps/trusted/onchain/OnchainForGasSwap.js +715 -715
  171. package/dist/swaps/trusted/onchain/OnchainForGasWrapper.d.ts +69 -68
  172. package/dist/swaps/trusted/onchain/OnchainForGasWrapper.js +92 -92
  173. package/dist/types/AmountData.d.ts +10 -10
  174. package/dist/types/AmountData.js +2 -2
  175. package/dist/types/CustomPriceFunction.d.ts +11 -11
  176. package/dist/types/CustomPriceFunction.js +2 -2
  177. package/dist/types/PriceInfoType.d.ts +28 -28
  178. package/dist/types/PriceInfoType.js +57 -56
  179. package/dist/types/SwapExecutionAction.d.ts +88 -88
  180. package/dist/types/SwapExecutionAction.js +2 -2
  181. package/dist/types/SwapStateInfo.d.ts +5 -5
  182. package/dist/types/SwapStateInfo.js +2 -2
  183. package/dist/types/SwapWithSigner.d.ts +17 -17
  184. package/dist/types/SwapWithSigner.js +43 -42
  185. package/dist/types/Token.d.ts +99 -99
  186. package/dist/types/Token.js +76 -76
  187. package/dist/types/TokenAmount.d.ts +69 -69
  188. package/dist/types/TokenAmount.js +60 -59
  189. package/dist/types/fees/Fee.d.ts +50 -50
  190. package/dist/types/fees/Fee.js +2 -2
  191. package/dist/types/fees/FeeBreakdown.d.ts +11 -11
  192. package/dist/types/fees/FeeBreakdown.js +2 -2
  193. package/dist/types/fees/PercentagePPM.d.ts +17 -17
  194. package/dist/types/fees/PercentagePPM.js +18 -17
  195. package/dist/types/lnurl/LNURLPay.d.ts +61 -61
  196. package/dist/types/lnurl/LNURLPay.js +31 -30
  197. package/dist/types/lnurl/LNURLWithdraw.d.ts +48 -48
  198. package/dist/types/lnurl/LNURLWithdraw.js +27 -26
  199. package/dist/types/wallets/LightningInvoiceCreateService.d.ts +24 -24
  200. package/dist/types/wallets/LightningInvoiceCreateService.js +15 -14
  201. package/dist/types/wallets/MinimalBitcoinWalletInterface.d.ts +23 -23
  202. package/dist/types/wallets/MinimalBitcoinWalletInterface.js +2 -2
  203. package/dist/types/wallets/MinimalLightningNetworkWalletInterface.d.ts +9 -9
  204. package/dist/types/wallets/MinimalLightningNetworkWalletInterface.js +2 -2
  205. package/dist/utils/AutomaticClockDriftCorrection.d.ts +1 -1
  206. package/dist/utils/AutomaticClockDriftCorrection.js +70 -69
  207. package/dist/utils/BitcoinUtils.d.ts +14 -12
  208. package/dist/utils/BitcoinUtils.js +102 -101
  209. package/dist/utils/BitcoinWalletUtils.d.ts +7 -7
  210. package/dist/utils/BitcoinWalletUtils.js +14 -13
  211. package/dist/utils/Logger.d.ts +7 -7
  212. package/dist/utils/Logger.js +12 -11
  213. package/dist/utils/RetryUtils.d.ts +22 -22
  214. package/dist/utils/RetryUtils.js +67 -66
  215. package/dist/utils/SwapUtils.d.ts +88 -88
  216. package/dist/utils/SwapUtils.js +72 -72
  217. package/dist/utils/TimeoutUtils.d.ts +17 -17
  218. package/dist/utils/TimeoutUtils.js +55 -54
  219. package/dist/utils/TokenUtils.d.ts +19 -19
  220. package/dist/utils/TokenUtils.js +37 -36
  221. package/dist/utils/TypeUtils.d.ts +7 -7
  222. package/dist/utils/TypeUtils.js +2 -2
  223. package/dist/utils/Utils.d.ts +58 -56
  224. package/dist/utils/Utils.js +194 -193
  225. package/package.json +1 -1
  226. package/src/bitcoin/wallet/SingleAddressBitcoinWallet.ts +14 -2
@@ -1,78 +1,78 @@
1
- import { Transaction } from "@scure/btc-signer";
2
- /**
3
- * Type guard to check if an object implements {@link IBitcoinWallet}
4
- *
5
- * @category Bitcoin
6
- */
7
- export declare function isIBitcoinWallet(val: any): val is IBitcoinWallet;
8
- /**
9
- * Interface to be implemented by Bitcoin wallets
10
- *
11
- * @category Bitcoin
12
- */
13
- export interface IBitcoinWallet {
14
- /**
15
- * Signs and broadcasts a transaction sending `amount` of sats to `address`, optionally with the
16
- * `feeRate` sats/vB fee rate.
17
- *
18
- * @param address Destination address of the transaction
19
- * @param amount Amount of satoshis to send (1 BTC = 100,000,000 sats)
20
- * @param feeRate Optional fee rate in sats/vB to use for the transaction
21
- */
22
- sendTransaction(address: string, amount: bigint, feeRate?: number): Promise<string>;
23
- /**
24
- * Funds (populates the inputs) for a given PSBT from wallet's UTXO set
25
- *
26
- * @param psbt PSBT to add the inputs to
27
- * @param feeRate Optional fee rate in sats/vB to use for the transaction
28
- */
29
- fundPsbt(psbt: Transaction, feeRate?: number): Promise<Transaction>;
30
- /**
31
- * Signs inputs in the provided PSBT
32
- *
33
- * @param psbt A PSBT to sign
34
- * @param signInputs Indices of the inputs to sign
35
- */
36
- signPsbt(psbt: Transaction, signInputs: number[]): Promise<Transaction>;
37
- /**
38
- * Returns the current fee rate in sats/vB
39
- */
40
- getFeeRate(): Promise<number>;
41
- /**
42
- * Estimates a total fee in satoshis for a given transaction
43
- *
44
- * @param address Destination address of the transaction
45
- * @param amount Amount of satoshis to send (1 BTC = 100,000,000 sats)
46
- * @param feeRate Optional fee rate in sats/vB to use for the transaction
47
- */
48
- getTransactionFee(address: string, amount: bigint, feeRate?: number): Promise<number>;
49
- /**
50
- * Estimates a total fee in satoshis for a given transaction as identified by the PSBT
51
- *
52
- * @param psbt A PSBT to which additional inputs from wallet's UTXO set will be added and fee estimated
53
- * @param feeRate Optional fee rate in sats/vB to use for the transaction
54
- */
55
- getFundedPsbtFee(psbt: Transaction, feeRate?: number): Promise<number>;
56
- /**
57
- * Returns the bitcoin address suitable for receiving funds
58
- */
59
- getReceiveAddress(): string;
60
- /**
61
- * Returns confirmed and unconfirmed balance in satoshis of the wallet
62
- */
63
- getBalance(): Promise<{
64
- confirmedBalance: bigint;
65
- unconfirmedBalance: bigint;
66
- }>;
67
- /**
68
- * Returns the maximum spendable balance in satoshis given a specific PSBT that should be funded
69
- *
70
- * @param psbt A PSBT to which additional inputs from wallet's UTXO set will be added and fee estimated
71
- * @param feeRate Optional fee rate in sats/vB to use for the transaction
72
- */
73
- getSpendableBalance(psbt?: Transaction, feeRate?: number): Promise<{
74
- balance: bigint;
75
- feeRate: number;
76
- totalFee: number;
77
- }>;
78
- }
1
+ import { Transaction } from "@scure/btc-signer";
2
+ /**
3
+ * Type guard to check if an object implements {@link IBitcoinWallet}
4
+ *
5
+ * @category Bitcoin
6
+ */
7
+ export declare function isIBitcoinWallet(val: any): val is IBitcoinWallet;
8
+ /**
9
+ * Interface to be implemented by Bitcoin wallets
10
+ *
11
+ * @category Bitcoin
12
+ */
13
+ export interface IBitcoinWallet {
14
+ /**
15
+ * Signs and broadcasts a transaction sending `amount` of sats to `address`, optionally with the
16
+ * `feeRate` sats/vB fee rate.
17
+ *
18
+ * @param address Destination address of the transaction
19
+ * @param amount Amount of satoshis to send (1 BTC = 100,000,000 sats)
20
+ * @param feeRate Optional fee rate in sats/vB to use for the transaction
21
+ */
22
+ sendTransaction(address: string, amount: bigint, feeRate?: number): Promise<string>;
23
+ /**
24
+ * Funds (populates the inputs) for a given PSBT from wallet's UTXO set
25
+ *
26
+ * @param psbt PSBT to add the inputs to
27
+ * @param feeRate Optional fee rate in sats/vB to use for the transaction
28
+ */
29
+ fundPsbt(psbt: Transaction, feeRate?: number): Promise<Transaction>;
30
+ /**
31
+ * Signs inputs in the provided PSBT
32
+ *
33
+ * @param psbt A PSBT to sign
34
+ * @param signInputs Indices of the inputs to sign
35
+ */
36
+ signPsbt(psbt: Transaction, signInputs: number[]): Promise<Transaction>;
37
+ /**
38
+ * Returns the current fee rate in sats/vB
39
+ */
40
+ getFeeRate(): Promise<number>;
41
+ /**
42
+ * Estimates a total fee in satoshis for a given transaction
43
+ *
44
+ * @param address Destination address of the transaction
45
+ * @param amount Amount of satoshis to send (1 BTC = 100,000,000 sats)
46
+ * @param feeRate Optional fee rate in sats/vB to use for the transaction
47
+ */
48
+ getTransactionFee(address: string, amount: bigint, feeRate?: number): Promise<number>;
49
+ /**
50
+ * Estimates a total fee in satoshis for a given transaction as identified by the PSBT
51
+ *
52
+ * @param psbt A PSBT to which additional inputs from wallet's UTXO set will be added and fee estimated
53
+ * @param feeRate Optional fee rate in sats/vB to use for the transaction
54
+ */
55
+ getFundedPsbtFee(psbt: Transaction, feeRate?: number): Promise<number>;
56
+ /**
57
+ * Returns the bitcoin address suitable for receiving funds
58
+ */
59
+ getReceiveAddress(): string;
60
+ /**
61
+ * Returns confirmed and unconfirmed balance in satoshis of the wallet
62
+ */
63
+ getBalance(): Promise<{
64
+ confirmedBalance: bigint;
65
+ unconfirmedBalance: bigint;
66
+ }>;
67
+ /**
68
+ * Returns the maximum spendable balance in satoshis given a specific PSBT that should be funded
69
+ *
70
+ * @param psbt A PSBT to which additional inputs from wallet's UTXO set will be added and fee estimated
71
+ * @param feeRate Optional fee rate in sats/vB to use for the transaction
72
+ */
73
+ getSpendableBalance(psbt?: Transaction, feeRate?: number): Promise<{
74
+ balance: bigint;
75
+ feeRate: number;
76
+ totalFee: number;
77
+ }>;
78
+ }
@@ -1,20 +1,21 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isIBitcoinWallet = isIBitcoinWallet;
4
- /**
5
- * Type guard to check if an object implements {@link IBitcoinWallet}
6
- *
7
- * @category Bitcoin
8
- */
9
- function isIBitcoinWallet(val) {
10
- return val !== null &&
11
- typeof (val.sendTransaction) === "function" &&
12
- typeof (val.fundPsbt) === "function" &&
13
- typeof (val.signPsbt) === "function" &&
14
- typeof (val.getFeeRate) === "function" &&
15
- typeof (val.getTransactionFee) === "function" &&
16
- typeof (val.getFundedPsbtFee) === "function" &&
17
- typeof (val.getReceiveAddress) === "function" &&
18
- typeof (val.getBalance) === "function" &&
19
- typeof (val.getSpendableBalance) === "function";
20
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isIBitcoinWallet = void 0;
4
+ /**
5
+ * Type guard to check if an object implements {@link IBitcoinWallet}
6
+ *
7
+ * @category Bitcoin
8
+ */
9
+ function isIBitcoinWallet(val) {
10
+ return val !== null &&
11
+ typeof (val.sendTransaction) === "function" &&
12
+ typeof (val.fundPsbt) === "function" &&
13
+ typeof (val.signPsbt) === "function" &&
14
+ typeof (val.getFeeRate) === "function" &&
15
+ typeof (val.getTransactionFee) === "function" &&
16
+ typeof (val.getFundedPsbtFee) === "function" &&
17
+ typeof (val.getReceiveAddress) === "function" &&
18
+ typeof (val.getBalance) === "function" &&
19
+ typeof (val.getSpendableBalance) === "function";
20
+ }
21
+ exports.isIBitcoinWallet = isIBitcoinWallet;
@@ -1,99 +1,101 @@
1
- import { CoinselectAddressTypes } from "../coinselect2";
2
- import { BTC_NETWORK } from "@scure/btc-signer/utils";
3
- import { Transaction } from "@scure/btc-signer";
4
- import { Buffer } from "buffer";
5
- import { BitcoinWallet } from "./BitcoinWallet";
6
- import { BitcoinNetwork, BitcoinRpcWithAddressIndex } from "@atomiqlabs/base";
7
- /**
8
- * Bitcoin wallet implementation deriving a single address from a WIF encoded private key
9
- *
10
- * @category Bitcoin
11
- */
12
- export declare class SingleAddressBitcoinWallet extends BitcoinWallet {
13
- protected readonly privKey?: Uint8Array;
14
- protected readonly pubkey: Uint8Array;
15
- protected readonly address: string;
16
- protected readonly addressType: CoinselectAddressTypes;
17
- constructor(mempoolApi: BitcoinRpcWithAddressIndex<any>, _network: BitcoinNetwork | BTC_NETWORK, addressDataOrWIF: string | {
18
- address: string;
19
- publicKey: string;
20
- }, feeMultiplier?: number, feeOverride?: number);
21
- /**
22
- * Returns all the wallet addresses controlled by the wallet
23
- *
24
- * @protected
25
- */
26
- protected toBitcoinWalletAccounts(): [{
27
- pubkey: string;
28
- address: string;
29
- addressType: CoinselectAddressTypes;
30
- }];
31
- /**
32
- * @inheritDoc
33
- */
34
- sendTransaction(address: string, amount: bigint, feeRate?: number): Promise<string>;
35
- /**
36
- * @inheritDoc
37
- */
38
- fundPsbt(inputPsbt: Transaction, feeRate?: number): Promise<Transaction>;
39
- /**
40
- * @inheritDoc
41
- */
42
- signPsbt(psbt: Transaction, signInputs: number[]): Promise<Transaction>;
43
- /**
44
- * @inheritDoc
45
- */
46
- getTransactionFee(address: string, amount: bigint, feeRate?: number): Promise<number>;
47
- /**
48
- * @inheritDoc
49
- */
50
- getFundedPsbtFee(basePsbt: Transaction, feeRate?: number): Promise<number>;
51
- /**
52
- * @inheritDoc
53
- */
54
- getReceiveAddress(): string;
55
- /**
56
- * Returns the public key of the wallet
57
- */
58
- getPublicKey(): string;
59
- /**
60
- * @inheritDoc
61
- */
62
- getBalance(): Promise<{
63
- confirmedBalance: bigint;
64
- unconfirmedBalance: bigint;
65
- }>;
66
- /**
67
- * @inheritDoc
68
- */
69
- getSpendableBalance(psbt?: Transaction, feeRate?: number): Promise<{
70
- balance: bigint;
71
- feeRate: number;
72
- totalFee: number;
73
- }>;
74
- /**
75
- * Generates a new random private key WIF that can be used to instantiate the bitcoin wallet instance
76
- *
77
- * @returns A WIF encoded bitcoin private key
78
- */
79
- static generateRandomPrivateKey(network?: BitcoinNetwork | BTC_NETWORK): string;
80
- /**
81
- * Generates a 12-word long mnemonic from any entropy source with 128-bits or more, the entropy is first hashed
82
- * using sha256, and the first 16 bytes of the hash are used to generate the mnemonic
83
- *
84
- * @param entropy Entropy to use for generating the mnemonic
85
- */
86
- static mnemonicFromEntropy(entropy: Buffer): string;
87
- /**
88
- * Generates a random 12-word long mnemonic
89
- */
90
- static generateRandomMnemonic(): string;
91
- /**
92
- * Generates a WIF private key from mnemonic phrase
93
- *
94
- * @param mnemonic Mnemonic to generate the WIF key from
95
- * @param network Optional bitcoin network to generate the WIF for
96
- * @param derivationPath Optional custom derivation path to use for deriving the wallet
97
- */
98
- static mnemonicToPrivateKey(mnemonic: string, network?: BitcoinNetwork | BTC_NETWORK, derivationPath?: string): Promise<string>;
99
- }
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { CoinselectAddressTypes } from "../coinselect2";
4
+ import { BTC_NETWORK } from "@scure/btc-signer/utils";
5
+ import { Transaction } from "@scure/btc-signer";
6
+ import { Buffer } from "buffer";
7
+ import { BitcoinWallet } from "./BitcoinWallet";
8
+ import { BitcoinNetwork, BitcoinRpcWithAddressIndex } from "@atomiqlabs/base";
9
+ /**
10
+ * Bitcoin wallet implementation deriving a single address from a WIF encoded private key
11
+ *
12
+ * @category Bitcoin
13
+ */
14
+ export declare class SingleAddressBitcoinWallet extends BitcoinWallet {
15
+ protected readonly privKey?: Uint8Array;
16
+ protected readonly pubkey: Uint8Array;
17
+ protected readonly address: string;
18
+ protected readonly addressType: CoinselectAddressTypes;
19
+ constructor(mempoolApi: BitcoinRpcWithAddressIndex<any>, _network: BitcoinNetwork | BTC_NETWORK, addressDataOrWIF: string | {
20
+ address: string;
21
+ publicKey: string;
22
+ }, feeMultiplier?: number, feeOverride?: number);
23
+ /**
24
+ * Returns all the wallet addresses controlled by the wallet
25
+ *
26
+ * @protected
27
+ */
28
+ protected toBitcoinWalletAccounts(): [{
29
+ pubkey: string;
30
+ address: string;
31
+ addressType: CoinselectAddressTypes;
32
+ }];
33
+ /**
34
+ * @inheritDoc
35
+ */
36
+ sendTransaction(address: string, amount: bigint, feeRate?: number): Promise<string>;
37
+ /**
38
+ * @inheritDoc
39
+ */
40
+ fundPsbt(inputPsbt: Transaction, feeRate?: number): Promise<Transaction>;
41
+ /**
42
+ * @inheritDoc
43
+ */
44
+ signPsbt(psbt: Transaction, signInputs: number[]): Promise<Transaction>;
45
+ /**
46
+ * @inheritDoc
47
+ */
48
+ getTransactionFee(address: string, amount: bigint, feeRate?: number): Promise<number>;
49
+ /**
50
+ * @inheritDoc
51
+ */
52
+ getFundedPsbtFee(basePsbt: Transaction, feeRate?: number): Promise<number>;
53
+ /**
54
+ * @inheritDoc
55
+ */
56
+ getReceiveAddress(): string;
57
+ /**
58
+ * Returns the public key of the wallet
59
+ */
60
+ getPublicKey(): string;
61
+ /**
62
+ * @inheritDoc
63
+ */
64
+ getBalance(): Promise<{
65
+ confirmedBalance: bigint;
66
+ unconfirmedBalance: bigint;
67
+ }>;
68
+ /**
69
+ * @inheritDoc
70
+ */
71
+ getSpendableBalance(psbt?: Transaction, feeRate?: number): Promise<{
72
+ balance: bigint;
73
+ feeRate: number;
74
+ totalFee: number;
75
+ }>;
76
+ /**
77
+ * Generates a new random private key WIF that can be used to instantiate the bitcoin wallet instance
78
+ *
79
+ * @returns A WIF encoded bitcoin private key
80
+ */
81
+ static generateRandomPrivateKey(network?: BitcoinNetwork | BTC_NETWORK): string;
82
+ /**
83
+ * Generates a 12-word long mnemonic from any entropy source with 128-bits or more, the entropy is first hashed
84
+ * using sha256, and the first 16 bytes of the hash are used to generate the mnemonic
85
+ *
86
+ * @param entropy Entropy to use for generating the mnemonic
87
+ */
88
+ static mnemonicFromEntropy(entropy: Buffer): string;
89
+ /**
90
+ * Generates a random 12-word long mnemonic
91
+ */
92
+ static generateRandomMnemonic(): string;
93
+ /**
94
+ * Generates a WIF private key from mnemonic phrase
95
+ *
96
+ * @param mnemonic Mnemonic to generate the WIF key from
97
+ * @param network Optional bitcoin network to generate the WIF for
98
+ * @param derivationPath Optional custom derivation path to use for deriving the wallet
99
+ */
100
+ static mnemonicToPrivateKey(mnemonic: string, network?: BitcoinNetwork | BTC_NETWORK, derivationPath?: string): Promise<string>;
101
+ }