@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,62 +1,62 @@
|
|
|
1
|
-
import { IToBTCSwap, ToBTCSwapState } from "./IToBTCSwap";
|
|
2
|
-
import { ChainType, ClaimEvent, InitializeEvent, RefundEvent } from "@atomiqlabs/base";
|
|
3
|
-
import { ISwapWrapperOptions, SwapTypeDefinition } from "../../ISwapWrapper";
|
|
4
|
-
import { Intermediary, SingleChainReputationType } from "../../../intermediaries/Intermediary";
|
|
5
|
-
import { IEscrowSwapWrapper } from "../IEscrowSwapWrapper";
|
|
6
|
-
import { AmountData } from "../../../types/AmountData";
|
|
7
|
-
export type IToBTCDefinition<T extends ChainType, W extends IToBTCWrapper<T, any>, S extends IToBTCSwap<T>> = SwapTypeDefinition<T, W, S>;
|
|
8
|
-
/**
|
|
9
|
-
* Base class for wrappers of escrow-based Smart chain -> Bitcoin (on-chain & lightning) swaps
|
|
10
|
-
*
|
|
11
|
-
* @category Swaps/Smart chain → Bitcoin
|
|
12
|
-
*/
|
|
13
|
-
export declare abstract class IToBTCWrapper<T extends ChainType, D extends IToBTCDefinition<T, IToBTCWrapper<T, D>, IToBTCSwap<T, D>>, O extends ISwapWrapperOptions = ISwapWrapperOptions> extends IEscrowSwapWrapper<T, D, O> {
|
|
14
|
-
/**
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
17
|
-
protected readonly tickSwapState: ToBTCSwapState[];
|
|
18
|
-
/**
|
|
19
|
-
* @internal
|
|
20
|
-
*/
|
|
21
|
-
readonly _pendingSwapStates: ToBTCSwapState[];
|
|
22
|
-
/**
|
|
23
|
-
* @internal
|
|
24
|
-
*/
|
|
25
|
-
readonly _refundableSwapStates: ToBTCSwapState[];
|
|
26
|
-
/**
|
|
27
|
-
* Pre-fetches intermediary's reputation, doesn't throw, instead aborts via abortController and returns null
|
|
28
|
-
*
|
|
29
|
-
* @param amountData
|
|
30
|
-
* @param lp Intermediary
|
|
31
|
-
* @param abortController
|
|
32
|
-
* @returns Intermediary's reputation or null if failed
|
|
33
|
-
* @throws {IntermediaryError} If the intermediary vault doesn't exist
|
|
34
|
-
*
|
|
35
|
-
* @internal
|
|
36
|
-
*/
|
|
37
|
-
protected preFetchIntermediaryReputation(amountData: Omit<AmountData, "amount">, lp: Intermediary, abortController: AbortController): Promise<SingleChainReputationType | undefined>;
|
|
38
|
-
/**
|
|
39
|
-
* Pre-fetches feeRate for a given swap
|
|
40
|
-
*
|
|
41
|
-
* @param signer Address of the swap initiator
|
|
42
|
-
* @param amountData
|
|
43
|
-
* @param claimHash optional hash of the swap or null
|
|
44
|
-
* @param abortController
|
|
45
|
-
* @returns Fee rate
|
|
46
|
-
*
|
|
47
|
-
* @internal
|
|
48
|
-
*/
|
|
49
|
-
protected preFetchFeeRate(signer: string, amountData: Omit<AmountData, "amount">, claimHash: string | undefined, abortController: AbortController): Promise<string | undefined>;
|
|
50
|
-
/**
|
|
51
|
-
* @internal
|
|
52
|
-
*/
|
|
53
|
-
protected processEventInitialize(swap: D["Swap"], event: InitializeEvent<T["Data"]>): Promise<boolean>;
|
|
54
|
-
/**
|
|
55
|
-
* @internal
|
|
56
|
-
*/
|
|
57
|
-
protected processEventClaim(swap: D["Swap"], event: ClaimEvent<T["Data"]>): Promise<boolean>;
|
|
58
|
-
/**
|
|
59
|
-
* @internal
|
|
60
|
-
*/
|
|
61
|
-
protected processEventRefund(swap: D["Swap"], event: RefundEvent<T["Data"]>): Promise<boolean>;
|
|
62
|
-
}
|
|
1
|
+
import { IToBTCSwap, ToBTCSwapState } from "./IToBTCSwap";
|
|
2
|
+
import { ChainType, ClaimEvent, InitializeEvent, RefundEvent } from "@atomiqlabs/base";
|
|
3
|
+
import { ISwapWrapperOptions, SwapTypeDefinition } from "../../ISwapWrapper";
|
|
4
|
+
import { Intermediary, SingleChainReputationType } from "../../../intermediaries/Intermediary";
|
|
5
|
+
import { IEscrowSwapWrapper } from "../IEscrowSwapWrapper";
|
|
6
|
+
import { AmountData } from "../../../types/AmountData";
|
|
7
|
+
export type IToBTCDefinition<T extends ChainType, W extends IToBTCWrapper<T, any>, S extends IToBTCSwap<T>> = SwapTypeDefinition<T, W, S>;
|
|
8
|
+
/**
|
|
9
|
+
* Base class for wrappers of escrow-based Smart chain -> Bitcoin (on-chain & lightning) swaps
|
|
10
|
+
*
|
|
11
|
+
* @category Swaps/Smart chain → Bitcoin
|
|
12
|
+
*/
|
|
13
|
+
export declare abstract class IToBTCWrapper<T extends ChainType, D extends IToBTCDefinition<T, IToBTCWrapper<T, D>, IToBTCSwap<T, D>>, O extends ISwapWrapperOptions = ISwapWrapperOptions> extends IEscrowSwapWrapper<T, D, O> {
|
|
14
|
+
/**
|
|
15
|
+
* @internal
|
|
16
|
+
*/
|
|
17
|
+
protected readonly tickSwapState: ToBTCSwapState[];
|
|
18
|
+
/**
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
readonly _pendingSwapStates: ToBTCSwapState[];
|
|
22
|
+
/**
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
readonly _refundableSwapStates: ToBTCSwapState[];
|
|
26
|
+
/**
|
|
27
|
+
* Pre-fetches intermediary's reputation, doesn't throw, instead aborts via abortController and returns null
|
|
28
|
+
*
|
|
29
|
+
* @param amountData
|
|
30
|
+
* @param lp Intermediary
|
|
31
|
+
* @param abortController
|
|
32
|
+
* @returns Intermediary's reputation or null if failed
|
|
33
|
+
* @throws {IntermediaryError} If the intermediary vault doesn't exist
|
|
34
|
+
*
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
protected preFetchIntermediaryReputation(amountData: Omit<AmountData, "amount">, lp: Intermediary, abortController: AbortController): Promise<SingleChainReputationType | undefined>;
|
|
38
|
+
/**
|
|
39
|
+
* Pre-fetches feeRate for a given swap
|
|
40
|
+
*
|
|
41
|
+
* @param signer Address of the swap initiator
|
|
42
|
+
* @param amountData
|
|
43
|
+
* @param claimHash optional hash of the swap or null
|
|
44
|
+
* @param abortController
|
|
45
|
+
* @returns Fee rate
|
|
46
|
+
*
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
protected preFetchFeeRate(signer: string, amountData: Omit<AmountData, "amount">, claimHash: string | undefined, abortController: AbortController): Promise<string | undefined>;
|
|
50
|
+
/**
|
|
51
|
+
* @internal
|
|
52
|
+
*/
|
|
53
|
+
protected processEventInitialize(swap: D["Swap"], event: InitializeEvent<T["Data"]>): Promise<boolean>;
|
|
54
|
+
/**
|
|
55
|
+
* @internal
|
|
56
|
+
*/
|
|
57
|
+
protected processEventClaim(swap: D["Swap"], event: ClaimEvent<T["Data"]>): Promise<boolean>;
|
|
58
|
+
/**
|
|
59
|
+
* @internal
|
|
60
|
+
*/
|
|
61
|
+
protected processEventRefund(swap: D["Swap"], event: RefundEvent<T["Data"]>): Promise<boolean>;
|
|
62
|
+
}
|
|
@@ -1,112 +1,112 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IToBTCWrapper = void 0;
|
|
4
|
-
const IToBTCSwap_1 = require("./IToBTCSwap");
|
|
5
|
-
const IntermediaryError_1 = require("../../../errors/IntermediaryError");
|
|
6
|
-
const IEscrowSwapWrapper_1 = require("../IEscrowSwapWrapper");
|
|
7
|
-
/**
|
|
8
|
-
* Base class for wrappers of escrow-based Smart chain -> Bitcoin (on-chain & lightning) swaps
|
|
9
|
-
*
|
|
10
|
-
* @category Swaps/Smart chain → Bitcoin
|
|
11
|
-
*/
|
|
12
|
-
class IToBTCWrapper extends IEscrowSwapWrapper_1.IEscrowSwapWrapper {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
/**
|
|
16
|
-
* @internal
|
|
17
|
-
*/
|
|
18
|
-
this.tickSwapState = [IToBTCSwap_1.ToBTCSwapState.CREATED, IToBTCSwap_1.ToBTCSwapState.COMMITED, IToBTCSwap_1.ToBTCSwapState.SOFT_CLAIMED];
|
|
19
|
-
/**
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
this._pendingSwapStates = [
|
|
23
|
-
IToBTCSwap_1.ToBTCSwapState.CREATED,
|
|
24
|
-
IToBTCSwap_1.ToBTCSwapState.QUOTE_SOFT_EXPIRED,
|
|
25
|
-
IToBTCSwap_1.ToBTCSwapState.COMMITED,
|
|
26
|
-
IToBTCSwap_1.ToBTCSwapState.SOFT_CLAIMED,
|
|
27
|
-
IToBTCSwap_1.ToBTCSwapState.REFUNDABLE
|
|
28
|
-
];
|
|
29
|
-
/**
|
|
30
|
-
* @internal
|
|
31
|
-
*/
|
|
32
|
-
this._refundableSwapStates = [IToBTCSwap_1.ToBTCSwapState.REFUNDABLE];
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Pre-fetches intermediary's reputation, doesn't throw, instead aborts via abortController and returns null
|
|
36
|
-
*
|
|
37
|
-
* @param amountData
|
|
38
|
-
* @param lp Intermediary
|
|
39
|
-
* @param abortController
|
|
40
|
-
* @returns Intermediary's reputation or null if failed
|
|
41
|
-
* @throws {IntermediaryError} If the intermediary vault doesn't exist
|
|
42
|
-
*
|
|
43
|
-
* @internal
|
|
44
|
-
*/
|
|
45
|
-
preFetchIntermediaryReputation(amountData, lp, abortController) {
|
|
46
|
-
return lp.getReputation(this.chainIdentifier, this._contract, [amountData.token.toString()], abortController.signal).then(res => {
|
|
47
|
-
if (res == null)
|
|
48
|
-
throw new IntermediaryError_1.IntermediaryError("Invalid data returned - invalid LP vault");
|
|
49
|
-
return res;
|
|
50
|
-
}).catch(e => {
|
|
51
|
-
this.logger.warn("preFetchIntermediaryReputation(): Error: ", e);
|
|
52
|
-
abortController.abort(e);
|
|
53
|
-
return undefined;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Pre-fetches feeRate for a given swap
|
|
58
|
-
*
|
|
59
|
-
* @param signer Address of the swap initiator
|
|
60
|
-
* @param amountData
|
|
61
|
-
* @param claimHash optional hash of the swap or null
|
|
62
|
-
* @param abortController
|
|
63
|
-
* @returns Fee rate
|
|
64
|
-
*
|
|
65
|
-
* @internal
|
|
66
|
-
*/
|
|
67
|
-
preFetchFeeRate(signer, amountData, claimHash, abortController) {
|
|
68
|
-
return this._contract.getInitPayInFeeRate(signer, this._chain.randomAddress(), amountData.token, claimHash)
|
|
69
|
-
.catch(e => {
|
|
70
|
-
this.logger.warn("preFetchFeeRate(): Error: ", e);
|
|
71
|
-
abortController.abort(e);
|
|
72
|
-
return undefined;
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* @internal
|
|
77
|
-
*/
|
|
78
|
-
async processEventInitialize(swap, event) {
|
|
79
|
-
if (swap._state === IToBTCSwap_1.ToBTCSwapState.CREATED || swap._state === IToBTCSwap_1.ToBTCSwapState.QUOTE_SOFT_EXPIRED) {
|
|
80
|
-
swap._state = IToBTCSwap_1.ToBTCSwapState.COMMITED;
|
|
81
|
-
return true;
|
|
82
|
-
}
|
|
83
|
-
return false;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* @internal
|
|
87
|
-
*/
|
|
88
|
-
async processEventClaim(swap, event) {
|
|
89
|
-
if (swap._state !== IToBTCSwap_1.ToBTCSwapState.REFUNDED && swap._state !== IToBTCSwap_1.ToBTCSwapState.CLAIMED) {
|
|
90
|
-
await swap._setPaymentResult({
|
|
91
|
-
secret: event.result,
|
|
92
|
-
txId: Buffer.from(event.result, "hex").reverse().toString("hex")
|
|
93
|
-
}).catch(e => {
|
|
94
|
-
this.logger.warn(`processEventClaim(): Failed to set payment result ${event.result}: `, e);
|
|
95
|
-
});
|
|
96
|
-
swap._state = IToBTCSwap_1.ToBTCSwapState.CLAIMED;
|
|
97
|
-
return true;
|
|
98
|
-
}
|
|
99
|
-
return false;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* @internal
|
|
103
|
-
*/
|
|
104
|
-
processEventRefund(swap, event) {
|
|
105
|
-
if (swap._state !== IToBTCSwap_1.ToBTCSwapState.CLAIMED && swap._state !== IToBTCSwap_1.ToBTCSwapState.REFUNDED) {
|
|
106
|
-
swap._state = IToBTCSwap_1.ToBTCSwapState.REFUNDED;
|
|
107
|
-
return Promise.resolve(true);
|
|
108
|
-
}
|
|
109
|
-
return Promise.resolve(false);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
exports.IToBTCWrapper = IToBTCWrapper;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IToBTCWrapper = void 0;
|
|
4
|
+
const IToBTCSwap_1 = require("./IToBTCSwap");
|
|
5
|
+
const IntermediaryError_1 = require("../../../errors/IntermediaryError");
|
|
6
|
+
const IEscrowSwapWrapper_1 = require("../IEscrowSwapWrapper");
|
|
7
|
+
/**
|
|
8
|
+
* Base class for wrappers of escrow-based Smart chain -> Bitcoin (on-chain & lightning) swaps
|
|
9
|
+
*
|
|
10
|
+
* @category Swaps/Smart chain → Bitcoin
|
|
11
|
+
*/
|
|
12
|
+
class IToBTCWrapper extends IEscrowSwapWrapper_1.IEscrowSwapWrapper {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
/**
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
this.tickSwapState = [IToBTCSwap_1.ToBTCSwapState.CREATED, IToBTCSwap_1.ToBTCSwapState.COMMITED, IToBTCSwap_1.ToBTCSwapState.SOFT_CLAIMED];
|
|
19
|
+
/**
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
this._pendingSwapStates = [
|
|
23
|
+
IToBTCSwap_1.ToBTCSwapState.CREATED,
|
|
24
|
+
IToBTCSwap_1.ToBTCSwapState.QUOTE_SOFT_EXPIRED,
|
|
25
|
+
IToBTCSwap_1.ToBTCSwapState.COMMITED,
|
|
26
|
+
IToBTCSwap_1.ToBTCSwapState.SOFT_CLAIMED,
|
|
27
|
+
IToBTCSwap_1.ToBTCSwapState.REFUNDABLE
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
this._refundableSwapStates = [IToBTCSwap_1.ToBTCSwapState.REFUNDABLE];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Pre-fetches intermediary's reputation, doesn't throw, instead aborts via abortController and returns null
|
|
36
|
+
*
|
|
37
|
+
* @param amountData
|
|
38
|
+
* @param lp Intermediary
|
|
39
|
+
* @param abortController
|
|
40
|
+
* @returns Intermediary's reputation or null if failed
|
|
41
|
+
* @throws {IntermediaryError} If the intermediary vault doesn't exist
|
|
42
|
+
*
|
|
43
|
+
* @internal
|
|
44
|
+
*/
|
|
45
|
+
preFetchIntermediaryReputation(amountData, lp, abortController) {
|
|
46
|
+
return lp.getReputation(this.chainIdentifier, this._contract, [amountData.token.toString()], abortController.signal).then(res => {
|
|
47
|
+
if (res == null)
|
|
48
|
+
throw new IntermediaryError_1.IntermediaryError("Invalid data returned - invalid LP vault");
|
|
49
|
+
return res;
|
|
50
|
+
}).catch(e => {
|
|
51
|
+
this.logger.warn("preFetchIntermediaryReputation(): Error: ", e);
|
|
52
|
+
abortController.abort(e);
|
|
53
|
+
return undefined;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Pre-fetches feeRate for a given swap
|
|
58
|
+
*
|
|
59
|
+
* @param signer Address of the swap initiator
|
|
60
|
+
* @param amountData
|
|
61
|
+
* @param claimHash optional hash of the swap or null
|
|
62
|
+
* @param abortController
|
|
63
|
+
* @returns Fee rate
|
|
64
|
+
*
|
|
65
|
+
* @internal
|
|
66
|
+
*/
|
|
67
|
+
preFetchFeeRate(signer, amountData, claimHash, abortController) {
|
|
68
|
+
return this._contract.getInitPayInFeeRate(signer, this._chain.randomAddress(), amountData.token, claimHash)
|
|
69
|
+
.catch(e => {
|
|
70
|
+
this.logger.warn("preFetchFeeRate(): Error: ", e);
|
|
71
|
+
abortController.abort(e);
|
|
72
|
+
return undefined;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* @internal
|
|
77
|
+
*/
|
|
78
|
+
async processEventInitialize(swap, event) {
|
|
79
|
+
if (swap._state === IToBTCSwap_1.ToBTCSwapState.CREATED || swap._state === IToBTCSwap_1.ToBTCSwapState.QUOTE_SOFT_EXPIRED) {
|
|
80
|
+
swap._state = IToBTCSwap_1.ToBTCSwapState.COMMITED;
|
|
81
|
+
return true;
|
|
82
|
+
}
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @internal
|
|
87
|
+
*/
|
|
88
|
+
async processEventClaim(swap, event) {
|
|
89
|
+
if (swap._state !== IToBTCSwap_1.ToBTCSwapState.REFUNDED && swap._state !== IToBTCSwap_1.ToBTCSwapState.CLAIMED) {
|
|
90
|
+
await swap._setPaymentResult({
|
|
91
|
+
secret: event.result,
|
|
92
|
+
txId: Buffer.from(event.result, "hex").reverse().toString("hex")
|
|
93
|
+
}).catch(e => {
|
|
94
|
+
this.logger.warn(`processEventClaim(): Failed to set payment result ${event.result}: `, e);
|
|
95
|
+
});
|
|
96
|
+
swap._state = IToBTCSwap_1.ToBTCSwapState.CLAIMED;
|
|
97
|
+
return true;
|
|
98
|
+
}
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* @internal
|
|
103
|
+
*/
|
|
104
|
+
processEventRefund(swap, event) {
|
|
105
|
+
if (swap._state !== IToBTCSwap_1.ToBTCSwapState.CLAIMED && swap._state !== IToBTCSwap_1.ToBTCSwapState.REFUNDED) {
|
|
106
|
+
swap._state = IToBTCSwap_1.ToBTCSwapState.REFUNDED;
|
|
107
|
+
return Promise.resolve(true);
|
|
108
|
+
}
|
|
109
|
+
return Promise.resolve(false);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
exports.IToBTCWrapper = IToBTCWrapper;
|
|
@@ -1,127 +1,125 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
*
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
private
|
|
36
|
-
private
|
|
37
|
-
private
|
|
38
|
-
private
|
|
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
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
serialize(): any;
|
|
127
|
-
}
|
|
1
|
+
import { ToBTCLNDefinition, ToBTCLNWrapper } from "./ToBTCLNWrapper";
|
|
2
|
+
import { IToBTCSwap, IToBTCSwapInit } from "../IToBTCSwap";
|
|
3
|
+
import { SwapType } from "../../../../enums/SwapType";
|
|
4
|
+
import { ChainType, SwapData } from "@atomiqlabs/base";
|
|
5
|
+
import { Buffer } from "buffer";
|
|
6
|
+
import { LNURLPaySuccessAction } from "../../../../lnurl/LNURL";
|
|
7
|
+
import { TokenAmount } from "../../../../types/TokenAmount";
|
|
8
|
+
import { BtcToken } from "../../../../types/Token";
|
|
9
|
+
import { LoggerType } from "../../../../utils/Logger";
|
|
10
|
+
import { LNURLDecodedSuccessAction } from "../../../../types/lnurl/LNURLPay";
|
|
11
|
+
export type ToBTCLNSwapInit<T extends SwapData> = IToBTCSwapInit<T> & {
|
|
12
|
+
confidence: number;
|
|
13
|
+
pr?: string;
|
|
14
|
+
lnurl?: string;
|
|
15
|
+
successAction?: LNURLPaySuccessAction;
|
|
16
|
+
};
|
|
17
|
+
export declare function isToBTCLNSwapInit<T extends SwapData>(obj: any): obj is ToBTCLNSwapInit<T>;
|
|
18
|
+
/**
|
|
19
|
+
* Escrow based (HTLC) swap for Smart chains -> Bitcoin lightning
|
|
20
|
+
*
|
|
21
|
+
* @category Swaps/Smart chain → Lightning
|
|
22
|
+
*/
|
|
23
|
+
export declare class ToBTCLNSwap<T extends ChainType = ChainType> extends IToBTCSwap<T, ToBTCLNDefinition<T>> {
|
|
24
|
+
protected readonly TYPE = SwapType.TO_BTCLN;
|
|
25
|
+
/**
|
|
26
|
+
* @internal
|
|
27
|
+
*/
|
|
28
|
+
protected readonly outputToken: BtcToken<true>;
|
|
29
|
+
/**
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
protected readonly logger: LoggerType;
|
|
33
|
+
private readonly usesClaimHashAsId;
|
|
34
|
+
private readonly confidence;
|
|
35
|
+
private pr?;
|
|
36
|
+
private secret?;
|
|
37
|
+
private lnurl?;
|
|
38
|
+
private successAction?;
|
|
39
|
+
/**
|
|
40
|
+
* Sets the LNURL data for the swap
|
|
41
|
+
*
|
|
42
|
+
* @internal
|
|
43
|
+
*/
|
|
44
|
+
_setLNURLData(lnurl: string, successAction?: LNURLPaySuccessAction): void;
|
|
45
|
+
constructor(wrapper: ToBTCLNWrapper<T>, init: ToBTCLNSwapInit<T["Data"]>);
|
|
46
|
+
constructor(wrapper: ToBTCLNWrapper<T>, obj: any);
|
|
47
|
+
/**
|
|
48
|
+
* @inheritDoc
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
_setPaymentResult(result: {
|
|
52
|
+
secret?: string;
|
|
53
|
+
txId?: string;
|
|
54
|
+
}, check?: boolean): Promise<boolean>;
|
|
55
|
+
/**
|
|
56
|
+
* @inheritDoc
|
|
57
|
+
*/
|
|
58
|
+
getOutputToken(): BtcToken<true>;
|
|
59
|
+
/**
|
|
60
|
+
* @inheritDoc
|
|
61
|
+
*/
|
|
62
|
+
getOutput(): TokenAmount<BtcToken<true>>;
|
|
63
|
+
/**
|
|
64
|
+
* @inheritDoc
|
|
65
|
+
*/
|
|
66
|
+
getOutputTxId(): string | null;
|
|
67
|
+
/**
|
|
68
|
+
* @inheritDoc
|
|
69
|
+
*/
|
|
70
|
+
getOutputAddress(): string | null;
|
|
71
|
+
/**
|
|
72
|
+
* Returns payment secret (pre-image) as a proof of payment
|
|
73
|
+
*/
|
|
74
|
+
getSecret(): string | null;
|
|
75
|
+
/**
|
|
76
|
+
* Returns the confidence of the intermediary that this payment will succeed.
|
|
77
|
+
*
|
|
78
|
+
* @returns Decimal value between 0 and 1, where 0 is not likely and 1 is very likely
|
|
79
|
+
*/
|
|
80
|
+
getConfidence(): number;
|
|
81
|
+
/**
|
|
82
|
+
* Checks whether a swap is likely to fail, based on the confidence as reported by the intermediary (LP)
|
|
83
|
+
*/
|
|
84
|
+
willLikelyFail(): boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Tries to detect if the target lightning invoice is a non-custodial mobile wallet, extract care must be taken
|
|
87
|
+
* for such a wallet **to be online** when attempting to make a swap sending to such a wallet
|
|
88
|
+
*/
|
|
89
|
+
isPayingToNonCustodialWallet(): boolean;
|
|
90
|
+
/**
|
|
91
|
+
* @inheritDoc
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
protected getIdentifierHash(): Buffer;
|
|
95
|
+
/**
|
|
96
|
+
* @inheritDoc
|
|
97
|
+
* @internal
|
|
98
|
+
*/
|
|
99
|
+
protected getLpIdentifier(): string;
|
|
100
|
+
/**
|
|
101
|
+
* Returns the payment hash of the swap, i.e. a payment hash of the lightning network invoice that
|
|
102
|
+
* is about to be paid
|
|
103
|
+
*/
|
|
104
|
+
getPaymentHash(): Buffer | null;
|
|
105
|
+
/**
|
|
106
|
+
* Whether this is an LNURL-pay swap
|
|
107
|
+
*/
|
|
108
|
+
isLNURL(): boolean;
|
|
109
|
+
/**
|
|
110
|
+
* Gets the used LNURL-pay link or `null` if this is not an LNURL-pay swap
|
|
111
|
+
*/
|
|
112
|
+
getLNURL(): string | null;
|
|
113
|
+
/**
|
|
114
|
+
* Checks whether this LNURL-pay payment contains a success action
|
|
115
|
+
*/
|
|
116
|
+
hasSuccessAction(): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Returns the success action after a successful payment, else `null`
|
|
119
|
+
*/
|
|
120
|
+
getSuccessAction(): LNURLDecodedSuccessAction | null;
|
|
121
|
+
/**
|
|
122
|
+
* @inheritDoc
|
|
123
|
+
*/
|
|
124
|
+
serialize(): any;
|
|
125
|
+
}
|