@atomiqlabs/sdk 8.6.5 → 8.6.6
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.
- package/dist/SmartChainAssets.d.ts +181 -181
- package/dist/SmartChainAssets.js +181 -181
- package/dist/bitcoin/coinselect2/accumulative.d.ts +6 -6
- package/dist/bitcoin/coinselect2/accumulative.js +51 -52
- package/dist/bitcoin/coinselect2/blackjack.d.ts +6 -6
- package/dist/bitcoin/coinselect2/blackjack.js +37 -38
- package/dist/bitcoin/coinselect2/index.d.ts +17 -19
- package/dist/bitcoin/coinselect2/index.js +69 -69
- package/dist/bitcoin/coinselect2/utils.d.ts +75 -77
- package/dist/bitcoin/coinselect2/utils.js +123 -123
- package/dist/bitcoin/wallet/BitcoinWallet.d.ts +128 -130
- package/dist/bitcoin/wallet/BitcoinWallet.js +322 -322
- package/dist/bitcoin/wallet/IBitcoinWallet.d.ts +78 -78
- package/dist/bitcoin/wallet/IBitcoinWallet.js +20 -21
- package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.d.ts +99 -101
- package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.js +176 -176
- package/dist/enums/FeeType.d.ts +15 -15
- package/dist/enums/FeeType.js +19 -19
- package/dist/enums/SwapAmountType.d.ts +15 -15
- package/dist/enums/SwapAmountType.js +19 -19
- package/dist/enums/SwapDirection.d.ts +15 -15
- package/dist/enums/SwapDirection.js +19 -19
- package/dist/enums/SwapSide.d.ts +15 -15
- package/dist/enums/SwapSide.js +19 -19
- package/dist/enums/SwapType.d.ts +75 -75
- package/dist/enums/SwapType.js +79 -79
- package/dist/errors/IntermediaryError.d.ts +13 -13
- package/dist/errors/IntermediaryError.js +27 -27
- package/dist/errors/RequestError.d.ts +32 -32
- package/dist/errors/RequestError.js +54 -54
- package/dist/errors/UserError.d.ts +8 -8
- package/dist/errors/UserError.js +16 -16
- package/dist/events/UnifiedSwapEventListener.d.ts +23 -23
- package/dist/events/UnifiedSwapEventListener.js +130 -130
- package/dist/http/HttpUtils.d.ts +27 -27
- package/dist/http/HttpUtils.js +90 -91
- package/dist/http/paramcoders/IParamReader.d.ts +8 -8
- package/dist/http/paramcoders/IParamReader.js +2 -2
- package/dist/http/paramcoders/ParamDecoder.d.ts +42 -44
- package/dist/http/paramcoders/ParamDecoder.js +137 -137
- package/dist/http/paramcoders/ParamEncoder.d.ts +18 -20
- package/dist/http/paramcoders/ParamEncoder.js +36 -36
- package/dist/http/paramcoders/SchemaVerifier.d.ts +26 -26
- package/dist/http/paramcoders/SchemaVerifier.js +145 -145
- package/dist/http/paramcoders/client/ResponseParamDecoder.d.ts +11 -11
- package/dist/http/paramcoders/client/ResponseParamDecoder.js +57 -57
- package/dist/http/paramcoders/client/StreamParamEncoder.d.ts +11 -13
- package/dist/http/paramcoders/client/StreamParamEncoder.js +26 -26
- package/dist/http/paramcoders/client/StreamingFetchPromise.d.ts +16 -16
- package/dist/http/paramcoders/client/StreamingFetchPromise.js +173 -174
- package/dist/index.d.ts +85 -85
- package/dist/index.js +158 -158
- package/dist/intermediaries/Intermediary.d.ts +157 -157
- package/dist/intermediaries/Intermediary.js +142 -142
- package/dist/intermediaries/IntermediaryDiscovery.d.ts +198 -199
- package/dist/intermediaries/IntermediaryDiscovery.js +406 -406
- package/dist/intermediaries/apis/IntermediaryAPI.d.ts +437 -438
- package/dist/intermediaries/apis/IntermediaryAPI.js +603 -602
- package/dist/intermediaries/apis/TrustedIntermediaryAPI.d.ts +155 -155
- package/dist/intermediaries/apis/TrustedIntermediaryAPI.js +137 -137
- package/dist/lnurl/LNURL.d.ts +102 -102
- package/dist/lnurl/LNURL.js +321 -321
- package/dist/prices/RedundantSwapPrice.d.ts +110 -110
- package/dist/prices/RedundantSwapPrice.js +222 -222
- package/dist/prices/SingleSwapPrice.d.ts +34 -34
- package/dist/prices/SingleSwapPrice.js +44 -44
- package/dist/prices/SwapPriceWithChain.d.ts +107 -107
- package/dist/prices/SwapPriceWithChain.js +128 -128
- package/dist/prices/abstract/ICachedSwapPrice.d.ts +28 -28
- package/dist/prices/abstract/ICachedSwapPrice.js +62 -62
- package/dist/prices/abstract/IPriceProvider.d.ts +81 -81
- package/dist/prices/abstract/IPriceProvider.js +74 -74
- package/dist/prices/abstract/ISwapPrice.d.ts +168 -168
- package/dist/prices/abstract/ISwapPrice.js +279 -279
- package/dist/prices/providers/BinancePriceProvider.d.ts +23 -23
- package/dist/prices/providers/BinancePriceProvider.js +30 -30
- package/dist/prices/providers/CoinGeckoPriceProvider.d.ts +23 -23
- package/dist/prices/providers/CoinGeckoPriceProvider.js +29 -29
- package/dist/prices/providers/CoinPaprikaPriceProvider.d.ts +25 -25
- package/dist/prices/providers/CoinPaprikaPriceProvider.js +29 -29
- package/dist/prices/providers/CustomPriceProvider.d.ts +24 -24
- package/dist/prices/providers/CustomPriceProvider.js +35 -35
- package/dist/prices/providers/KrakenPriceProvider.d.ts +38 -38
- package/dist/prices/providers/KrakenPriceProvider.js +45 -45
- package/dist/prices/providers/OKXPriceProvider.d.ts +34 -34
- package/dist/prices/providers/OKXPriceProvider.js +29 -29
- package/dist/prices/providers/abstract/ExchangePriceProvider.d.ts +17 -17
- package/dist/prices/providers/abstract/ExchangePriceProvider.js +21 -21
- package/dist/prices/providers/abstract/HttpPriceProvider.d.ts +7 -7
- package/dist/prices/providers/abstract/HttpPriceProvider.js +12 -12
- package/dist/storage/IUnifiedStorage.d.ts +85 -85
- package/dist/storage/IUnifiedStorage.js +2 -2
- package/dist/storage/UnifiedSwapStorage.d.ts +114 -114
- package/dist/storage/UnifiedSwapStorage.js +116 -116
- package/dist/storage-browser/IndexedDBUnifiedStorage.d.ts +63 -63
- package/dist/storage-browser/IndexedDBUnifiedStorage.js +298 -298
- package/dist/storage-browser/LocalStorageManager.d.ts +49 -49
- package/dist/storage-browser/LocalStorageManager.js +93 -93
- package/dist/swapper/Swapper.d.ts +686 -687
- package/dist/swapper/Swapper.js +1603 -1603
- package/dist/swapper/SwapperFactory.d.ts +135 -135
- package/dist/swapper/SwapperFactory.js +162 -162
- package/dist/swapper/SwapperUtils.d.ts +200 -200
- package/dist/swapper/SwapperUtils.js +467 -467
- package/dist/swapper/SwapperWithChain.d.ts +404 -404
- package/dist/swapper/SwapperWithChain.js +469 -469
- package/dist/swapper/SwapperWithSigner.d.ts +322 -322
- package/dist/swapper/SwapperWithSigner.js +318 -318
- package/dist/swaps/IAddressSwap.d.ts +22 -22
- package/dist/swaps/IAddressSwap.js +13 -14
- package/dist/swaps/IBTCWalletSwap.d.ts +73 -73
- package/dist/swaps/IBTCWalletSwap.js +17 -18
- package/dist/swaps/IClaimableSwap.d.ts +49 -49
- package/dist/swaps/IClaimableSwap.js +14 -15
- package/dist/swaps/IClaimableSwapWrapper.d.ts +15 -15
- package/dist/swaps/IClaimableSwapWrapper.js +2 -2
- package/dist/swaps/IRefundableSwap.d.ts +43 -43
- package/dist/swaps/IRefundableSwap.js +13 -14
- package/dist/swaps/ISwap.d.ts +386 -387
- package/dist/swaps/ISwap.js +346 -346
- package/dist/swaps/ISwapWithGasDrop.d.ts +21 -21
- package/dist/swaps/ISwapWithGasDrop.js +11 -12
- package/dist/swaps/ISwapWrapper.d.ts +283 -285
- package/dist/swaps/ISwapWrapper.js +353 -353
- package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.d.ts +98 -98
- package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.js +126 -126
- package/dist/swaps/escrow_swaps/IEscrowSwap.d.ts +133 -135
- package/dist/swaps/escrow_swaps/IEscrowSwap.js +169 -169
- package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.d.ts +114 -115
- package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.js +134 -134
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.d.ts +98 -101
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.js +130 -130
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.d.ts +162 -162
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.js +190 -190
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.d.ts +58 -58
- package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.js +78 -78
- package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.d.ts +529 -531
- package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.js +1285 -1285
- package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.d.ts +181 -184
- package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.js +418 -418
- package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.d.ts +581 -583
- package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.js +1371 -1371
- package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.d.ts +225 -228
- package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.js +506 -506
- package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.d.ts +458 -458
- package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.js +1126 -1126
- package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.d.ts +190 -191
- package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.js +378 -378
- package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.d.ts +403 -403
- package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.js +924 -924
- package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.d.ts +62 -62
- package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.js +112 -112
- package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.d.ts +125 -127
- package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.js +256 -256
- package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.d.ts +241 -242
- package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.js +520 -520
- package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.d.ts +73 -73
- package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.js +155 -155
- package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.d.ts +127 -128
- package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.js +278 -278
- package/dist/swaps/spv_swaps/SpvFromBTCSwap.d.ts +630 -630
- package/dist/swaps/spv_swaps/SpvFromBTCSwap.js +1443 -1443
- package/dist/swaps/spv_swaps/SpvFromBTCWrapper.d.ts +213 -207
- package/dist/swaps/spv_swaps/SpvFromBTCWrapper.js +756 -755
- package/dist/swaps/trusted/ln/LnForGasSwap.d.ts +261 -261
- package/dist/swaps/trusted/ln/LnForGasSwap.js +511 -511
- package/dist/swaps/trusted/ln/LnForGasWrapper.d.ts +40 -40
- package/dist/swaps/trusted/ln/LnForGasWrapper.js +82 -82
- package/dist/swaps/trusted/onchain/OnchainForGasSwap.d.ts +342 -342
- package/dist/swaps/trusted/onchain/OnchainForGasSwap.js +715 -715
- package/dist/swaps/trusted/onchain/OnchainForGasWrapper.d.ts +68 -69
- package/dist/swaps/trusted/onchain/OnchainForGasWrapper.js +92 -92
- package/dist/types/AmountData.d.ts +10 -10
- package/dist/types/AmountData.js +2 -2
- package/dist/types/CustomPriceFunction.d.ts +11 -11
- package/dist/types/CustomPriceFunction.js +2 -2
- package/dist/types/PriceInfoType.d.ts +28 -28
- package/dist/types/PriceInfoType.js +56 -57
- package/dist/types/SwapExecutionAction.d.ts +88 -88
- package/dist/types/SwapExecutionAction.js +2 -2
- package/dist/types/SwapStateInfo.d.ts +5 -5
- package/dist/types/SwapStateInfo.js +2 -2
- package/dist/types/SwapWithSigner.d.ts +17 -17
- package/dist/types/SwapWithSigner.js +42 -43
- package/dist/types/Token.d.ts +99 -99
- package/dist/types/Token.js +76 -76
- package/dist/types/TokenAmount.d.ts +69 -69
- package/dist/types/TokenAmount.js +59 -60
- package/dist/types/fees/Fee.d.ts +50 -50
- package/dist/types/fees/Fee.js +2 -2
- package/dist/types/fees/FeeBreakdown.d.ts +11 -11
- package/dist/types/fees/FeeBreakdown.js +2 -2
- package/dist/types/fees/PercentagePPM.d.ts +17 -17
- package/dist/types/fees/PercentagePPM.js +17 -18
- package/dist/types/lnurl/LNURLPay.d.ts +61 -61
- package/dist/types/lnurl/LNURLPay.js +30 -31
- package/dist/types/lnurl/LNURLWithdraw.d.ts +48 -48
- package/dist/types/lnurl/LNURLWithdraw.js +26 -27
- package/dist/types/wallets/LightningInvoiceCreateService.d.ts +24 -24
- package/dist/types/wallets/LightningInvoiceCreateService.js +14 -15
- package/dist/types/wallets/MinimalBitcoinWalletInterface.d.ts +23 -23
- package/dist/types/wallets/MinimalBitcoinWalletInterface.js +2 -2
- package/dist/types/wallets/MinimalLightningNetworkWalletInterface.d.ts +9 -9
- package/dist/types/wallets/MinimalLightningNetworkWalletInterface.js +2 -2
- package/dist/utils/AutomaticClockDriftCorrection.d.ts +1 -1
- package/dist/utils/AutomaticClockDriftCorrection.js +69 -70
- package/dist/utils/BitcoinUtils.d.ts +12 -14
- package/dist/utils/BitcoinUtils.js +101 -102
- package/dist/utils/BitcoinWalletUtils.d.ts +7 -7
- package/dist/utils/BitcoinWalletUtils.js +13 -14
- package/dist/utils/Logger.d.ts +7 -7
- package/dist/utils/Logger.js +11 -12
- package/dist/utils/RetryUtils.d.ts +22 -22
- package/dist/utils/RetryUtils.js +66 -67
- package/dist/utils/SwapUtils.d.ts +88 -88
- package/dist/utils/SwapUtils.js +72 -72
- package/dist/utils/TimeoutUtils.d.ts +17 -17
- package/dist/utils/TimeoutUtils.js +54 -55
- package/dist/utils/TokenUtils.d.ts +19 -19
- package/dist/utils/TokenUtils.js +36 -37
- package/dist/utils/TypeUtils.d.ts +7 -7
- package/dist/utils/TypeUtils.js +2 -2
- package/dist/utils/Utils.d.ts +56 -58
- package/dist/utils/Utils.js +193 -194
- package/package.json +1 -1
- package/src/intermediaries/apis/IntermediaryAPI.ts +4 -2
- package/src/swaps/spv_swaps/SpvFromBTCWrapper.ts +8 -0
|
@@ -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,21 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.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
|
-
}
|
|
21
|
-
exports.isIBitcoinWallet = isIBitcoinWallet;
|
|
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,101 +1,99 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* Bitcoin
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
protected readonly
|
|
16
|
-
protected readonly
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
*
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
* @param
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
static mnemonicToPrivateKey(mnemonic: string, network?: BitcoinNetwork | BTC_NETWORK, derivationPath?: string): Promise<string>;
|
|
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
|
+
}
|