@atomiqlabs/sdk 8.1.8 → 8.3.1

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 (253) hide show
  1. package/dist/bitcoin/wallet/BitcoinWallet.d.ts +41 -5
  2. package/dist/bitcoin/wallet/BitcoinWallet.js +36 -1
  3. package/dist/bitcoin/wallet/IBitcoinWallet.d.ts +52 -2
  4. package/dist/bitcoin/wallet/IBitcoinWallet.js +2 -1
  5. package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.d.ts +42 -7
  6. package/dist/bitcoin/wallet/SingleAddressBitcoinWallet.js +36 -1
  7. package/dist/enums/FeeType.d.ts +7 -0
  8. package/dist/enums/FeeType.js +7 -0
  9. package/dist/enums/SwapAmountType.d.ts +7 -0
  10. package/dist/enums/SwapAmountType.js +7 -0
  11. package/dist/enums/SwapDirection.d.ts +7 -0
  12. package/dist/enums/SwapDirection.js +7 -0
  13. package/dist/enums/SwapType.d.ts +62 -1
  14. package/dist/enums/SwapType.js +62 -1
  15. package/dist/errors/IntermediaryError.d.ts +4 -0
  16. package/dist/errors/IntermediaryError.js +1 -0
  17. package/dist/errors/RequestError.d.ts +15 -1
  18. package/dist/errors/RequestError.js +8 -0
  19. package/dist/errors/UserError.d.ts +1 -0
  20. package/dist/errors/UserError.js +1 -0
  21. package/dist/index.d.ts +4 -5
  22. package/dist/index.js +3 -4
  23. package/dist/intermediaries/Intermediary.d.ts +57 -10
  24. package/dist/intermediaries/Intermediary.js +37 -10
  25. package/dist/intermediaries/IntermediaryDiscovery.d.ts +55 -22
  26. package/dist/intermediaries/IntermediaryDiscovery.js +35 -22
  27. package/dist/prices/RedundantSwapPrice.d.ts +24 -3
  28. package/dist/prices/RedundantSwapPrice.js +21 -1
  29. package/dist/prices/SingleSwapPrice.d.ts +9 -6
  30. package/dist/prices/SingleSwapPrice.js +10 -7
  31. package/dist/prices/SwapPriceWithChain.d.ts +54 -16
  32. package/dist/prices/SwapPriceWithChain.js +58 -20
  33. package/dist/prices/abstract/ISwapPrice.d.ts +94 -45
  34. package/dist/prices/abstract/ISwapPrice.js +103 -55
  35. package/dist/prices/providers/BinancePriceProvider.d.ts +7 -0
  36. package/dist/prices/providers/BinancePriceProvider.js +7 -0
  37. package/dist/prices/providers/CoinGeckoPriceProvider.d.ts +6 -0
  38. package/dist/prices/providers/CoinGeckoPriceProvider.js +6 -0
  39. package/dist/prices/providers/CoinPaprikaPriceProvider.d.ts +6 -0
  40. package/dist/prices/providers/CoinPaprikaPriceProvider.js +6 -0
  41. package/dist/prices/providers/CustomPriceProvider.d.ts +11 -0
  42. package/dist/prices/providers/CustomPriceProvider.js +11 -0
  43. package/dist/prices/providers/KrakenPriceProvider.d.ts +9 -0
  44. package/dist/prices/providers/KrakenPriceProvider.js +9 -0
  45. package/dist/prices/providers/OKXPriceProvider.d.ts +6 -0
  46. package/dist/prices/providers/OKXPriceProvider.js +6 -0
  47. package/dist/prices/providers/abstract/ExchangePriceProvider.d.ts +3 -0
  48. package/dist/prices/providers/abstract/ExchangePriceProvider.js +3 -0
  49. package/dist/storage/IUnifiedStorage.d.ts +19 -7
  50. package/dist/storage/UnifiedSwapStorage.d.ts +33 -3
  51. package/dist/storage/UnifiedSwapStorage.js +29 -1
  52. package/dist/storage-browser/IndexedDBUnifiedStorage.d.ts +31 -7
  53. package/dist/storage-browser/IndexedDBUnifiedStorage.js +29 -6
  54. package/dist/storage-browser/LocalStorageManager.d.ts +25 -1
  55. package/dist/storage-browser/LocalStorageManager.js +25 -1
  56. package/dist/swapper/Swapper.d.ts +302 -221
  57. package/dist/swapper/Swapper.js +376 -344
  58. package/dist/swapper/SwapperFactory.d.ts +41 -17
  59. package/dist/swapper/SwapperFactory.js +23 -2
  60. package/dist/swapper/SwapperUtils.d.ts +75 -28
  61. package/dist/swapper/SwapperUtils.js +107 -60
  62. package/dist/swapper/SwapperWithChain.d.ts +286 -91
  63. package/dist/swapper/SwapperWithChain.js +218 -64
  64. package/dist/swapper/SwapperWithSigner.d.ts +229 -80
  65. package/dist/swapper/SwapperWithSigner.js +190 -44
  66. package/dist/swaps/IAddressSwap.d.ts +10 -1
  67. package/dist/swaps/IAddressSwap.js +2 -1
  68. package/dist/swaps/IBTCWalletSwap.d.ts +24 -6
  69. package/dist/swaps/IBTCWalletSwap.js +2 -1
  70. package/dist/swaps/IClaimableSwap.d.ts +36 -4
  71. package/dist/swaps/IClaimableSwap.js +2 -1
  72. package/dist/swaps/IClaimableSwapWrapper.d.ts +11 -1
  73. package/dist/swaps/IRefundableSwap.d.ts +29 -3
  74. package/dist/swaps/IRefundableSwap.js +2 -1
  75. package/dist/swaps/ISwap.d.ts +159 -21
  76. package/dist/swaps/ISwap.js +90 -33
  77. package/dist/swaps/ISwapWithGasDrop.d.ts +6 -0
  78. package/dist/swaps/ISwapWithGasDrop.js +1 -0
  79. package/dist/swaps/ISwapWrapper.d.ts +157 -48
  80. package/dist/swaps/ISwapWrapper.js +130 -72
  81. package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.d.ts +49 -6
  82. package/dist/swaps/escrow_swaps/IEscrowSelfInitSwap.js +22 -12
  83. package/dist/swaps/escrow_swaps/IEscrowSwap.d.ts +65 -12
  84. package/dist/swaps/escrow_swaps/IEscrowSwap.js +38 -19
  85. package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.d.ts +39 -9
  86. package/dist/swaps/escrow_swaps/IEscrowSwapWrapper.js +30 -21
  87. package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.d.ts +31 -15
  88. package/dist/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.js +33 -18
  89. package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.d.ts +94 -29
  90. package/dist/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.js +90 -27
  91. package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.d.ts +22 -9
  92. package/dist/swaps/escrow_swaps/frombtc/IFromBTCWrapper.js +24 -11
  93. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.d.ts +275 -58
  94. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.js +516 -239
  95. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.d.ts +76 -25
  96. package/dist/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.js +131 -49
  97. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.d.ts +311 -51
  98. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.js +542 -193
  99. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.d.ts +87 -26
  100. package/dist/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.js +147 -58
  101. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.d.ts +209 -53
  102. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.js +449 -242
  103. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.d.ts +77 -23
  104. package/dist/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.js +116 -46
  105. package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.d.ts +197 -56
  106. package/dist/swaps/escrow_swaps/tobtc/IToBTCSwap.js +326 -189
  107. package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.d.ts +30 -5
  108. package/dist/swaps/escrow_swaps/tobtc/IToBTCWrapper.js +44 -19
  109. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.d.ts +60 -19
  110. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.js +74 -31
  111. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.d.ts +76 -50
  112. package/dist/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.js +106 -101
  113. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.d.ts +36 -13
  114. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.js +65 -19
  115. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.d.ts +46 -17
  116. package/dist/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.js +82 -27
  117. package/dist/swaps/spv_swaps/SpvFromBTCSwap.d.ts +328 -92
  118. package/dist/swaps/spv_swaps/SpvFromBTCSwap.js +460 -219
  119. package/dist/swaps/spv_swaps/SpvFromBTCWrapper.d.ts +76 -24
  120. package/dist/swaps/spv_swaps/SpvFromBTCWrapper.js +244 -124
  121. package/dist/swaps/trusted/ln/LnForGasSwap.d.ts +146 -18
  122. package/dist/swaps/trusted/ln/LnForGasSwap.js +173 -43
  123. package/dist/swaps/trusted/ln/LnForGasWrapper.d.ts +29 -10
  124. package/dist/swaps/trusted/ln/LnForGasWrapper.js +30 -11
  125. package/dist/swaps/trusted/onchain/OnchainForGasSwap.d.ts +200 -47
  126. package/dist/swaps/trusted/onchain/OnchainForGasSwap.js +230 -78
  127. package/dist/swaps/trusted/onchain/OnchainForGasWrapper.d.ts +34 -12
  128. package/dist/swaps/trusted/onchain/OnchainForGasWrapper.js +33 -14
  129. package/dist/types/AmountData.d.ts +2 -1
  130. package/dist/types/CustomPriceFunction.d.ts +7 -1
  131. package/dist/types/SwapExecutionAction.d.ts +74 -4
  132. package/dist/types/SwapWithSigner.d.ts +4 -1
  133. package/dist/types/SwapWithSigner.js +5 -2
  134. package/dist/types/Token.d.ts +11 -5
  135. package/dist/types/Token.js +6 -3
  136. package/dist/types/TokenAmount.d.ts +3 -0
  137. package/dist/types/TokenAmount.js +2 -0
  138. package/dist/types/fees/Fee.d.ts +2 -1
  139. package/dist/types/fees/FeeBreakdown.d.ts +2 -1
  140. package/dist/types/fees/PercentagePPM.d.ts +2 -0
  141. package/dist/types/fees/PercentagePPM.js +1 -0
  142. package/dist/types/lnurl/LNURLPay.d.ts +14 -6
  143. package/dist/types/lnurl/LNURLPay.js +6 -2
  144. package/dist/types/lnurl/LNURLWithdraw.d.ts +12 -5
  145. package/dist/types/lnurl/LNURLWithdraw.js +6 -2
  146. package/dist/types/wallets/LightningInvoiceCreateService.d.ts +20 -0
  147. package/dist/types/wallets/LightningInvoiceCreateService.js +15 -0
  148. package/dist/types/wallets/MinimalBitcoinWalletInterface.d.ts +3 -1
  149. package/dist/types/wallets/MinimalLightningNetworkWalletInterface.d.ts +3 -1
  150. package/dist/utils/BitcoinUtils.d.ts +1 -0
  151. package/dist/utils/BitcoinUtils.js +5 -1
  152. package/dist/utils/SwapUtils.d.ts +56 -1
  153. package/dist/utils/SwapUtils.js +53 -1
  154. package/dist/utils/TokenUtils.d.ts +10 -2
  155. package/dist/utils/TokenUtils.js +12 -4
  156. package/package.json +3 -3
  157. package/src/bitcoin/wallet/BitcoinWallet.ts +41 -5
  158. package/src/bitcoin/wallet/IBitcoinWallet.ts +57 -2
  159. package/src/bitcoin/wallet/SingleAddressBitcoinWallet.ts +42 -6
  160. package/src/enums/FeeType.ts +7 -0
  161. package/src/enums/SwapAmountType.ts +7 -0
  162. package/src/enums/SwapDirection.ts +7 -0
  163. package/src/enums/SwapType.ts +62 -2
  164. package/src/errors/IntermediaryError.ts +4 -0
  165. package/src/errors/RequestError.ts +15 -1
  166. package/src/errors/UserError.ts +1 -0
  167. package/src/index.ts +6 -5
  168. package/src/intermediaries/Intermediary.ts +57 -10
  169. package/src/intermediaries/IntermediaryDiscovery.ts +60 -27
  170. package/src/prices/RedundantSwapPrice.ts +24 -4
  171. package/src/prices/SingleSwapPrice.ts +10 -7
  172. package/src/prices/SwapPriceWithChain.ts +59 -21
  173. package/src/prices/abstract/ISwapPrice.ts +114 -65
  174. package/src/prices/providers/BinancePriceProvider.ts +7 -0
  175. package/src/prices/providers/CoinGeckoPriceProvider.ts +6 -0
  176. package/src/prices/providers/CoinPaprikaPriceProvider.ts +6 -0
  177. package/src/prices/providers/CustomPriceProvider.ts +11 -0
  178. package/src/prices/providers/KrakenPriceProvider.ts +9 -0
  179. package/src/prices/providers/OKXPriceProvider.ts +6 -0
  180. package/src/prices/providers/abstract/ExchangePriceProvider.ts +3 -0
  181. package/src/storage/IUnifiedStorage.ts +19 -7
  182. package/src/storage/UnifiedSwapStorage.ts +33 -3
  183. package/src/storage-browser/IndexedDBUnifiedStorage.ts +31 -8
  184. package/src/storage-browser/LocalStorageManager.ts +25 -1
  185. package/src/swapper/Swapper.ts +512 -378
  186. package/src/swapper/SwapperFactory.ts +44 -21
  187. package/src/swapper/SwapperUtils.ts +107 -60
  188. package/src/swapper/SwapperWithChain.ts +320 -81
  189. package/src/swapper/SwapperWithSigner.ts +263 -56
  190. package/src/swaps/IAddressSwap.ts +11 -1
  191. package/src/swaps/IBTCWalletSwap.ts +24 -8
  192. package/src/swaps/IClaimableSwap.ts +39 -4
  193. package/src/swaps/IClaimableSwapWrapper.ts +11 -2
  194. package/src/swaps/IRefundableSwap.ts +32 -3
  195. package/src/swaps/ISwap.ts +221 -82
  196. package/src/swaps/ISwapWithGasDrop.ts +6 -0
  197. package/src/swaps/ISwapWrapper.ts +212 -94
  198. package/src/swaps/escrow_swaps/IEscrowSelfInitSwap.ts +62 -18
  199. package/src/swaps/escrow_swaps/IEscrowSwap.ts +83 -37
  200. package/src/swaps/escrow_swaps/IEscrowSwapWrapper.ts +61 -30
  201. package/src/swaps/escrow_swaps/frombtc/IFromBTCLNWrapper.ts +37 -19
  202. package/src/swaps/escrow_swaps/frombtc/IFromBTCSelfInitSwap.ts +120 -51
  203. package/src/swaps/escrow_swaps/frombtc/IFromBTCWrapper.ts +24 -11
  204. package/src/swaps/escrow_swaps/frombtc/ln/FromBTCLNSwap.ts +559 -256
  205. package/src/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.ts +155 -61
  206. package/src/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.ts +590 -226
  207. package/src/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.ts +177 -74
  208. package/src/swaps/escrow_swaps/frombtc/onchain/FromBTCSwap.ts +470 -243
  209. package/src/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.ts +141 -59
  210. package/src/swaps/escrow_swaps/tobtc/IToBTCSwap.ts +352 -193
  211. package/src/swaps/escrow_swaps/tobtc/IToBTCWrapper.ts +48 -23
  212. package/src/swaps/escrow_swaps/tobtc/ln/ToBTCLNSwap.ts +86 -39
  213. package/src/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.ts +110 -110
  214. package/src/swaps/escrow_swaps/tobtc/onchain/ToBTCSwap.ts +88 -33
  215. package/src/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.ts +101 -31
  216. package/src/swaps/spv_swaps/SpvFromBTCSwap.ts +534 -263
  217. package/src/swaps/spv_swaps/SpvFromBTCWrapper.ts +289 -148
  218. package/src/swaps/trusted/ln/LnForGasSwap.ts +184 -45
  219. package/src/swaps/trusted/ln/LnForGasWrapper.ts +34 -15
  220. package/src/swaps/trusted/onchain/OnchainForGasSwap.ts +260 -86
  221. package/src/swaps/trusted/onchain/OnchainForGasWrapper.ts +41 -19
  222. package/src/types/AmountData.ts +2 -1
  223. package/src/types/CustomPriceFunction.ts +7 -1
  224. package/src/types/SwapExecutionAction.ts +84 -5
  225. package/src/types/SwapWithSigner.ts +7 -3
  226. package/src/types/Token.ts +12 -5
  227. package/src/types/TokenAmount.ts +3 -0
  228. package/src/types/fees/Fee.ts +2 -1
  229. package/src/types/fees/FeeBreakdown.ts +2 -1
  230. package/src/types/fees/PercentagePPM.ts +2 -0
  231. package/src/types/lnurl/LNURLPay.ts +14 -6
  232. package/src/types/lnurl/LNURLWithdraw.ts +12 -5
  233. package/src/types/wallets/LightningInvoiceCreateService.ts +26 -0
  234. package/src/types/wallets/MinimalBitcoinWalletInterface.ts +3 -1
  235. package/src/types/wallets/MinimalLightningNetworkWalletInterface.ts +3 -1
  236. package/src/utils/BitcoinUtils.ts +5 -0
  237. package/src/utils/SwapUtils.ts +61 -1
  238. package/src/utils/TokenUtils.ts +12 -4
  239. package/dist/bitcoin/BitcoinRpcWithAddressIndex.d.ts +0 -68
  240. package/dist/bitcoin/BitcoinRpcWithAddressIndex.js +0 -2
  241. package/dist/bitcoin/LightningNetworkApi.d.ts +0 -12
  242. package/dist/bitcoin/LightningNetworkApi.js +0 -2
  243. package/dist/bitcoin/mempool/MempoolApi.d.ts +0 -350
  244. package/dist/bitcoin/mempool/MempoolApi.js +0 -311
  245. package/dist/bitcoin/mempool/MempoolBitcoinBlock.d.ts +0 -44
  246. package/dist/bitcoin/mempool/MempoolBitcoinBlock.js +0 -48
  247. package/dist/bitcoin/mempool/MempoolBitcoinRpc.d.ts +0 -119
  248. package/dist/bitcoin/mempool/MempoolBitcoinRpc.js +0 -361
  249. package/dist/bitcoin/mempool/synchronizer/MempoolBtcRelaySynchronizer.d.ts +0 -22
  250. package/dist/bitcoin/mempool/synchronizer/MempoolBtcRelaySynchronizer.js +0 -105
  251. package/dist/errors/PaymentAuthError.d.ts +0 -11
  252. package/dist/errors/PaymentAuthError.js +0 -23
  253. package/src/errors/PaymentAuthError.ts +0 -26
@@ -12,16 +12,36 @@ import { FeeType } from "../../../enums/FeeType";
12
12
  import { TokenAmount } from "../../../types/TokenAmount";
13
13
  import { BtcToken, SCToken } from "../../../types/Token";
14
14
  import { LoggerType } from "../../../utils/Logger";
15
+ import { SwapExecutionActionBitcoin } from "../../../types/SwapExecutionAction";
15
16
  /**
16
17
  * State enum for trusted on-chain gas swaps
18
+ *
17
19
  * @category Swaps
18
20
  */
19
21
  export declare enum OnchainForGasSwapState {
22
+ /**
23
+ * The swap quote expired without user sending in the BTC
24
+ */
20
25
  EXPIRED = -3,
26
+ /**
27
+ * The swap has failed after the intermediary already received the BTC on the source chain
28
+ */
21
29
  FAILED = -2,
30
+ /**
31
+ * Swap was refunded and BTC returned to the user's refund address
32
+ */
22
33
  REFUNDED = -1,
34
+ /**
35
+ * Swap was created
36
+ */
23
37
  PR_CREATED = 0,
38
+ /**
39
+ * The swap is finished after the intermediary sent funds on the destination chain
40
+ */
24
41
  FINISHED = 1,
42
+ /**
43
+ * Swap is refundable because the intermediary cannot honor the swap request on the destination chain
44
+ */
25
45
  REFUNDABLE = 2
26
46
  }
27
47
  export type OnchainForGasSwapInit = ISwapInit & {
@@ -36,12 +56,16 @@ export type OnchainForGasSwapInit = ISwapInit & {
36
56
  };
37
57
  export declare function isOnchainForGasSwapInit(obj: any): obj is OnchainForGasSwapInit;
38
58
  /**
39
- * Trusted on-chain BTC to gas token swap
59
+ * Trusted swap for Bitcoin -> Smart chains, to be used for minor amounts to get gas tokens on the
60
+ * destination chain, which is only needed for Solana, which still uses legacy swaps
61
+ *
40
62
  * @category Swaps
41
63
  */
42
64
  export declare class OnchainForGasSwap<T extends ChainType = ChainType> extends ISwap<T, OnchainForGasSwapTypeDefinition<T>> implements IAddressSwap, IBTCWalletSwap {
43
- getSmartChainNetworkFee: null;
44
- protected readonly TYPE: SwapType;
65
+ protected readonly TYPE: SwapType.TRUSTED_FROM_BTC;
66
+ /**
67
+ * @internal
68
+ */
45
69
  protected readonly logger: LoggerType;
46
70
  private readonly paymentHash;
47
71
  private readonly sequence;
@@ -51,54 +75,154 @@ export declare class OnchainForGasSwap<T extends ChainType = ChainType> extends
51
75
  private inputAmount;
52
76
  private outputAmount;
53
77
  private refundAddress?;
54
- scTxId?: string;
55
- txId?: string;
56
- refundTxId?: string;
57
- wrapper: OnchainForGasWrapper<T>;
78
+ /**
79
+ * Destination transaction ID on the smart chain side
80
+ * @private
81
+ */
82
+ private scTxId?;
83
+ /**
84
+ * Source transaction ID on the source (bitcoin) side
85
+ * @private
86
+ */
87
+ private txId?;
88
+ /**
89
+ * Transaction ID on the source (bitcoin) side used for refunding the funds back to the user
90
+ * @private
91
+ */
92
+ private refundTxId?;
93
+ /**
94
+ * @internal
95
+ */
96
+ protected readonly wrapper: OnchainForGasWrapper<T>;
58
97
  constructor(wrapper: OnchainForGasWrapper<T>, init: OnchainForGasSwapInit);
59
98
  constructor(wrapper: OnchainForGasWrapper<T>, obj: any);
99
+ /**
100
+ * @inheritDoc
101
+ * @internal
102
+ */
60
103
  protected upgradeVersion(): void;
61
104
  /**
62
- * In case swapFee in BTC is not supplied it recalculates it based on swap price
63
- * @protected
105
+ * @inheritDoc
106
+ * @internal
64
107
  */
65
108
  protected tryRecomputeSwapPrice(): void;
109
+ /**
110
+ * @inheritDoc
111
+ * @internal
112
+ */
66
113
  _getEscrowHash(): string;
114
+ /**
115
+ * @inheritDoc
116
+ */
67
117
  getOutputAddress(): string | null;
118
+ /**
119
+ * @inheritDoc
120
+ */
68
121
  getInputAddress(): string | null;
122
+ /**
123
+ * @inheritDoc
124
+ */
69
125
  getInputTxId(): string | null;
126
+ /**
127
+ * @inheritDoc
128
+ */
70
129
  getOutputTxId(): string | null;
130
+ /**
131
+ * @inheritDoc
132
+ */
71
133
  getId(): string;
134
+ /**
135
+ * @inheritDoc
136
+ */
72
137
  getAddress(): string;
138
+ /**
139
+ * @inheritDoc
140
+ */
73
141
  getHyperlink(): string;
142
+ /**
143
+ * @inheritDoc
144
+ */
74
145
  requiresAction(): boolean;
146
+ /**
147
+ * @inheritDoc
148
+ */
75
149
  isFinished(): boolean;
150
+ /**
151
+ * @inheritDoc
152
+ */
76
153
  isQuoteExpired(): boolean;
154
+ /**
155
+ * @inheritDoc
156
+ */
77
157
  isQuoteSoftExpired(): boolean;
158
+ /**
159
+ * @inheritDoc
160
+ */
78
161
  isFailed(): boolean;
162
+ /**
163
+ * @inheritDoc
164
+ */
79
165
  isSuccessful(): boolean;
80
- verifyQuoteValid(): Promise<boolean>;
166
+ /**
167
+ * @inheritDoc
168
+ * @internal
169
+ */
170
+ _verifyQuoteDefinitelyExpired(): Promise<boolean>;
171
+ /**
172
+ * @inheritDoc
173
+ * @internal
174
+ */
175
+ _verifyQuoteValid(): Promise<boolean>;
176
+ /**
177
+ * Returns an output amount in base units without a swap fee included, hence this value
178
+ * is larger than the actual output amount
179
+ *
180
+ * @internal
181
+ */
81
182
  protected getOutAmountWithoutFee(): bigint;
183
+ /**
184
+ * @inheritDoc
185
+ */
82
186
  getOutputToken(): SCToken<T["ChainId"]>;
187
+ /**
188
+ * @inheritDoc
189
+ */
83
190
  getOutput(): TokenAmount<T["ChainId"], SCToken<T["ChainId"]>, true>;
191
+ /**
192
+ * @inheritDoc
193
+ */
84
194
  getInputToken(): BtcToken<false>;
195
+ /**
196
+ * @inheritDoc
197
+ */
85
198
  getInput(): TokenAmount<T["ChainId"], BtcToken<false>, true>;
199
+ /**
200
+ * @inheritDoc
201
+ */
86
202
  getInputWithoutFee(): TokenAmount<T["ChainId"], BtcToken<false>, true>;
203
+ /**
204
+ * Returns the swap fee charged by the intermediary (LP) on this swap
205
+ *
206
+ * @internal
207
+ */
87
208
  protected getSwapFee(): Fee<T["ChainId"], BtcToken<false>, SCToken<T["ChainId"]>>;
209
+ /**
210
+ * @inheritDoc
211
+ */
88
212
  getFee(): Fee<T["ChainId"], BtcToken<false>, SCToken<T["ChainId"]>>;
213
+ /**
214
+ * @inheritDoc
215
+ */
89
216
  getFeeBreakdown(): [{
90
217
  type: FeeType.SWAP;
91
218
  fee: Fee<T["ChainId"], BtcToken<false>, SCToken<T["ChainId"]>>;
92
219
  }];
220
+ /**
221
+ * @inheritDoc
222
+ */
93
223
  getRequiredConfirmationsCount(): number;
94
224
  /**
95
- * Returns the PSBT that is already funded with wallet's UTXOs (runs a coin-selection algorithm to choose UTXOs to use),
96
- * also returns inputs indices that need to be signed by the wallet before submitting the PSBT back to the SDK with
97
- * `swap.submitPsbt()`
98
- *
99
- * @param _bitcoinWallet Sender's bitcoin wallet
100
- * @param feeRate Optional fee rate for the transaction, needs to be at least as big as {minimumBtcFeeRate} field
101
- * @param additionalOutputs additional outputs to add to the PSBT - can be used to collect fees from users
225
+ * @inheritDoc
102
226
  */
103
227
  getFundedPsbt(_bitcoinWallet: IBitcoinWallet | MinimalBitcoinWalletInterface, feeRate?: number, additionalOutputs?: ({
104
228
  amount: bigint;
@@ -113,52 +237,81 @@ export declare class OnchainForGasSwap<T extends ChainType = ChainType> extends
113
237
  signInputs: number[];
114
238
  }>;
115
239
  /**
116
- * Submits a PSBT signed by the wallet back to the SDK
117
- *
118
- * @param _psbt A psbt - either a Transaction object or a hex or base64 encoded PSBT string
240
+ * @inheritDoc
119
241
  */
120
242
  submitPsbt(_psbt: Transaction | string): Promise<string>;
243
+ /**
244
+ * @inheritDoc
245
+ */
121
246
  estimateBitcoinFee(_bitcoinWallet: IBitcoinWallet | MinimalBitcoinWalletInterface, feeRate?: number): Promise<TokenAmount<any, BtcToken<false>, true> | null>;
247
+ /**
248
+ * @inheritDoc
249
+ */
122
250
  sendBitcoinTransaction(wallet: IBitcoinWallet | MinimalBitcoinWalletInterfaceWithSigner, feeRate?: number): Promise<string>;
251
+ /**
252
+ * @inheritDoc
253
+ *
254
+ * @param options.bitcoinWallet Optional bitcoin wallet address specification to return a funded PSBT,
255
+ * if not provided an address is returned instead.
256
+ */
123
257
  txsExecute(options?: {
124
258
  bitcoinWallet?: MinimalBitcoinWalletInterface;
125
- }): Promise<{
126
- name: "Payment";
127
- description: string;
128
- chain: string;
129
- txs: ({
130
- address: string;
131
- amount: number;
132
- hyperlink: string;
133
- type: string;
134
- } | {
135
- type: string;
136
- psbt: Transaction;
137
- psbtHex: string;
138
- psbtBase64: string;
139
- signInputs: number[];
140
- address?: undefined;
141
- amount?: undefined;
142
- hyperlink?: undefined;
143
- })[];
144
- }[]>;
259
+ }): Promise<[
260
+ SwapExecutionActionBitcoin<"ADDRESS" | "FUNDED_PSBT">
261
+ ]>;
262
+ /**
263
+ * Queries the intermediary (LP) node for the state of the swap
264
+ *
265
+ * @param save Whether the save the result or not
266
+ *
267
+ * @returns Whether the swap was successful as `boolean` or `null` if the swap is still pending
268
+ * @internal
269
+ */
145
270
  protected checkAddress(save?: boolean): Promise<boolean | null>;
271
+ /**
272
+ * Sets the bitcoin address used for possible refunds in case something goes wrong with the swap
273
+ *
274
+ * @param refundAddress Bitcoin address to receive the refund to
275
+ * @internal
276
+ */
146
277
  protected setRefundAddress(refundAddress: string): Promise<void>;
147
278
  /**
148
- * A blocking promise resolving when payment was received by the intermediary and client can continue
149
- * rejecting in case of failure
279
+ * @inheritDoc
280
+ */
281
+ waitForBitcoinTransaction(updateCallback?: (txId?: string, confirmations?: number, targetConfirmations?: number, txEtaMs?: number) => void, checkIntervalSeconds?: number, abortSignal?: AbortSignal): Promise<string>;
282
+ /**
283
+ * Waits till the LP processes a refund for a failed swap. The swap must be in
284
+ * {@link OnchainForGasSwapState.REFUNDABLE} state
150
285
  *
286
+ * @param checkIntervalSeconds How often to check (default 5 seconds)
151
287
  * @param abortSignal Abort signal
152
- * @param checkIntervalSeconds How often to poll the intermediary for answer
153
- * @param updateCallback Callback called when txId is found, and also called with subsequent confirmations
154
- * @throws {PaymentAuthError} If swap expired or failed
155
- * @throws {Error} When in invalid state (not PR_CREATED)
156
288
  */
157
- waitForBitcoinTransaction(updateCallback?: (txId?: string, confirmations?: number, targetConfirmations?: number, txEtaMs?: number) => void, checkIntervalSeconds?: number, abortSignal?: AbortSignal): Promise<string>;
158
289
  waitTillRefunded(checkIntervalSeconds?: number, abortSignal?: AbortSignal): Promise<void>;
290
+ /**
291
+ * Requests a refund after the swap failed, this also waits till the refund is actually sent by the
292
+ * intermediary (LP). The swap must be in {@link OnchainForGasSwapState.REFUNDABLE} state
293
+ *
294
+ * @param refundAddress Bitcoin address to receive the refund to
295
+ * @param abortSignal Abort signal
296
+ */
159
297
  requestRefund(refundAddress?: string, abortSignal?: AbortSignal): Promise<void>;
298
+ /**
299
+ * @inheritDoc
300
+ */
160
301
  serialize(): any;
302
+ /**
303
+ * @inheritDoc
304
+ * @internal
305
+ */
161
306
  _getInitiator(): string;
307
+ /**
308
+ * @inheritDoc
309
+ * @internal
310
+ */
162
311
  _sync(save?: boolean): Promise<boolean>;
312
+ /**
313
+ * @inheritDoc
314
+ * @internal
315
+ */
163
316
  _tick(save?: boolean): Promise<boolean>;
164
317
  }