@atomiqlabs/sdk 8.6.4 → 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 -166
- package/dist/prices/abstract/ISwapPrice.js +279 -267
- 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 -341
- package/dist/swaps/ISwapWithGasDrop.d.ts +21 -21
- package/dist/swaps/ISwapWithGasDrop.js +11 -12
- package/dist/swaps/ISwapWrapper.d.ts +283 -284
- 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 -417
- 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 -377
- 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/prices/abstract/ISwapPrice.ts +19 -6
- package/src/swaps/ISwap.ts +17 -6
- package/src/swaps/ISwapWrapper.ts +4 -3
- package/src/swaps/escrow_swaps/frombtc/ln/FromBTCLNWrapper.ts +4 -2
- package/src/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoSwap.ts +4 -1
- package/src/swaps/escrow_swaps/frombtc/ln_auto/FromBTCLNAutoWrapper.ts +2 -2
- package/src/swaps/escrow_swaps/frombtc/onchain/FromBTCWrapper.ts +4 -2
- package/src/swaps/escrow_swaps/tobtc/ln/ToBTCLNWrapper.ts +6 -6
- package/src/swaps/escrow_swaps/tobtc/onchain/ToBTCWrapper.ts +5 -5
- package/src/swaps/spv_swaps/SpvFromBTCSwap.ts +4 -1
- package/src/swaps/spv_swaps/SpvFromBTCWrapper.ts +10 -2
- package/src/swaps/trusted/ln/LnForGasWrapper.ts +1 -1
- package/src/swaps/trusted/onchain/OnchainForGasWrapper.ts +1 -1
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
import { FieldTypeEnum, RequestSchemaResult } from "../../http/paramcoders/SchemaVerifier";
|
|
2
|
-
export declare enum AddressStatusResponseCodes {
|
|
3
|
-
EXPIRED = 10001,
|
|
4
|
-
PAID = 10000,
|
|
5
|
-
AWAIT_PAYMENT = 10010,
|
|
6
|
-
AWAIT_CONFIRMATION = 10011,
|
|
7
|
-
PENDING = 10013,
|
|
8
|
-
TX_SENT = 10012,
|
|
9
|
-
REFUNDED = 10014,
|
|
10
|
-
DOUBLE_SPENT = 10015,
|
|
11
|
-
REFUNDABLE = 10016
|
|
12
|
-
}
|
|
13
|
-
export type AddressStatusResponse = {
|
|
14
|
-
code: AddressStatusResponseCodes.TX_SENT | AddressStatusResponseCodes.PAID;
|
|
15
|
-
msg: string;
|
|
16
|
-
data: {
|
|
17
|
-
adjustedAmount: string;
|
|
18
|
-
adjustedTotal: string;
|
|
19
|
-
adjustedFee?: string;
|
|
20
|
-
adjustedFeeSats?: string;
|
|
21
|
-
txId: string;
|
|
22
|
-
scTxId: string;
|
|
23
|
-
};
|
|
24
|
-
} | {
|
|
25
|
-
code: AddressStatusResponseCodes.AWAIT_CONFIRMATION | AddressStatusResponseCodes.PENDING;
|
|
26
|
-
msg: string;
|
|
27
|
-
data: {
|
|
28
|
-
adjustedAmount: string;
|
|
29
|
-
adjustedTotal: string;
|
|
30
|
-
adjustedFee?: string;
|
|
31
|
-
adjustedFeeSats?: string;
|
|
32
|
-
txId: string;
|
|
33
|
-
};
|
|
34
|
-
} | {
|
|
35
|
-
code: AddressStatusResponseCodes.REFUNDABLE;
|
|
36
|
-
msg: string;
|
|
37
|
-
data: {
|
|
38
|
-
adjustedAmount: string;
|
|
39
|
-
};
|
|
40
|
-
} | {
|
|
41
|
-
code: AddressStatusResponseCodes.REFUNDED | AddressStatusResponseCodes.DOUBLE_SPENT;
|
|
42
|
-
msg: string;
|
|
43
|
-
data: {
|
|
44
|
-
txId: string;
|
|
45
|
-
};
|
|
46
|
-
} | {
|
|
47
|
-
code: AddressStatusResponseCodes.AWAIT_PAYMENT | AddressStatusResponseCodes.EXPIRED;
|
|
48
|
-
msg: string;
|
|
49
|
-
};
|
|
50
|
-
export type TrustedFromBTCInit = {
|
|
51
|
-
address: string;
|
|
52
|
-
amount: bigint;
|
|
53
|
-
token: string;
|
|
54
|
-
refundAddress?: string;
|
|
55
|
-
};
|
|
56
|
-
declare const TrustedFromBTCResponseSchema: {
|
|
57
|
-
readonly paymentHash: FieldTypeEnum.String;
|
|
58
|
-
readonly sequence: FieldTypeEnum.BigInt;
|
|
59
|
-
readonly btcAddress: FieldTypeEnum.String;
|
|
60
|
-
readonly amountSats: FieldTypeEnum.BigInt;
|
|
61
|
-
readonly swapFeeSats: FieldTypeEnum.BigInt;
|
|
62
|
-
readonly swapFee: FieldTypeEnum.BigInt;
|
|
63
|
-
readonly total: FieldTypeEnum.BigInt;
|
|
64
|
-
readonly intermediaryKey: FieldTypeEnum.String;
|
|
65
|
-
readonly recommendedFee: FieldTypeEnum.Number;
|
|
66
|
-
readonly expiresAt: FieldTypeEnum.Number;
|
|
67
|
-
};
|
|
68
|
-
export type TrustedFromBTCResponseType = RequestSchemaResult<typeof TrustedFromBTCResponseSchema>;
|
|
69
|
-
export declare enum InvoiceStatusResponseCodes {
|
|
70
|
-
EXPIRED = 10001,
|
|
71
|
-
PAID = 10000,
|
|
72
|
-
AWAIT_PAYMENT = 10010,
|
|
73
|
-
PENDING = 10011,
|
|
74
|
-
TX_SENT = 10012
|
|
75
|
-
}
|
|
76
|
-
export type InvoiceStatusResponse = {
|
|
77
|
-
code: InvoiceStatusResponseCodes.TX_SENT | InvoiceStatusResponseCodes.PAID;
|
|
78
|
-
msg: string;
|
|
79
|
-
data: {
|
|
80
|
-
txId: string;
|
|
81
|
-
};
|
|
82
|
-
} | {
|
|
83
|
-
code: Exclude<InvoiceStatusResponseCodes, InvoiceStatusResponseCodes.TX_SENT | InvoiceStatusResponseCodes.PAID>;
|
|
84
|
-
msg: string;
|
|
85
|
-
};
|
|
86
|
-
export type TrustedFromBTCLNInit = {
|
|
87
|
-
address: string;
|
|
88
|
-
amount: bigint;
|
|
89
|
-
token: string;
|
|
90
|
-
};
|
|
91
|
-
declare const TrustedFromBTCLNResponseSchema: {
|
|
92
|
-
readonly pr: FieldTypeEnum.String;
|
|
93
|
-
readonly swapFee: FieldTypeEnum.BigInt;
|
|
94
|
-
readonly swapFeeSats: FieldTypeEnum.BigInt;
|
|
95
|
-
readonly total: FieldTypeEnum.BigInt;
|
|
96
|
-
};
|
|
97
|
-
export type TrustedFromBTCLNResponseType = RequestSchemaResult<typeof TrustedFromBTCLNResponseSchema>;
|
|
98
|
-
export declare class TrustedIntermediaryAPI {
|
|
99
|
-
/**
|
|
100
|
-
* Fetches the invoice status from the intermediary node
|
|
101
|
-
*
|
|
102
|
-
* @param url Url of the trusted intermediary
|
|
103
|
-
* @param paymentHash Payment hash of the lightning invoice
|
|
104
|
-
* @param timeout Timeout in milliseconds
|
|
105
|
-
* @param abortSignal
|
|
106
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
107
|
-
*/
|
|
108
|
-
static getInvoiceStatus(url: string, paymentHash: string, timeout?: number, abortSignal?: AbortSignal): Promise<InvoiceStatusResponse>;
|
|
109
|
-
/**
|
|
110
|
-
* Initiate a trusted swap from BTCLN to SC native currency, retries!
|
|
111
|
-
*
|
|
112
|
-
* @param chainIdentifier
|
|
113
|
-
* @param baseUrl Base url of the trusted swap intermediary
|
|
114
|
-
* @param init Initialization parameters
|
|
115
|
-
* @param timeout Timeout in milliseconds for the request
|
|
116
|
-
* @param abortSignal
|
|
117
|
-
* @throws {RequestError} If the response is non-200
|
|
118
|
-
*/
|
|
119
|
-
static initTrustedFromBTCLN(chainIdentifier: string, baseUrl: string, init: TrustedFromBTCLNInit, timeout?: number, abortSignal?: AbortSignal): Promise<TrustedFromBTCLNResponseType>;
|
|
120
|
-
/**
|
|
121
|
-
* Fetches the address status from the intermediary node
|
|
122
|
-
*
|
|
123
|
-
* @param url Url of the trusted intermediary
|
|
124
|
-
* @param paymentHash Payment hash of the swap
|
|
125
|
-
* @param sequence Sequence number of the swap
|
|
126
|
-
* @param timeout Timeout in milliseconds
|
|
127
|
-
* @param abortSignal
|
|
128
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
129
|
-
*/
|
|
130
|
-
static getAddressStatus(url: string, paymentHash: string, sequence: bigint, timeout?: number, abortSignal?: AbortSignal): Promise<AddressStatusResponse>;
|
|
131
|
-
/**
|
|
132
|
-
* Sets the refund address for an on-chain gas swap
|
|
133
|
-
*
|
|
134
|
-
* @param url Url of the trusted intermediary
|
|
135
|
-
* @param paymentHash Payment hash of the swap
|
|
136
|
-
* @param sequence Sequence number of the swap
|
|
137
|
-
* @param refundAddress Refund address to set for the swap
|
|
138
|
-
* @param timeout Timeout in milliseconds
|
|
139
|
-
* @param abortSignal
|
|
140
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
141
|
-
*/
|
|
142
|
-
static setRefundAddress(url: string, paymentHash: string, sequence: bigint, refundAddress: string, timeout?: number, abortSignal?: AbortSignal): Promise<void>;
|
|
143
|
-
/**
|
|
144
|
-
* Initiate a trusted swap from BTC to SC native currency, retries!
|
|
145
|
-
*
|
|
146
|
-
* @param chainIdentifier
|
|
147
|
-
* @param baseUrl Base url of the trusted swap intermediary
|
|
148
|
-
* @param init Initialization parameters
|
|
149
|
-
* @param timeout Timeout in milliseconds for the request
|
|
150
|
-
* @param abortSignal
|
|
151
|
-
* @throws {RequestError} If the response is non-200
|
|
152
|
-
*/
|
|
153
|
-
static initTrustedFromBTC(chainIdentifier: string, baseUrl: string, init: TrustedFromBTCInit, timeout?: number, abortSignal?: AbortSignal): Promise<TrustedFromBTCResponseType>;
|
|
154
|
-
}
|
|
155
|
-
export {};
|
|
1
|
+
import { FieldTypeEnum, RequestSchemaResult } from "../../http/paramcoders/SchemaVerifier";
|
|
2
|
+
export declare enum AddressStatusResponseCodes {
|
|
3
|
+
EXPIRED = 10001,
|
|
4
|
+
PAID = 10000,
|
|
5
|
+
AWAIT_PAYMENT = 10010,
|
|
6
|
+
AWAIT_CONFIRMATION = 10011,
|
|
7
|
+
PENDING = 10013,
|
|
8
|
+
TX_SENT = 10012,
|
|
9
|
+
REFUNDED = 10014,
|
|
10
|
+
DOUBLE_SPENT = 10015,
|
|
11
|
+
REFUNDABLE = 10016
|
|
12
|
+
}
|
|
13
|
+
export type AddressStatusResponse = {
|
|
14
|
+
code: AddressStatusResponseCodes.TX_SENT | AddressStatusResponseCodes.PAID;
|
|
15
|
+
msg: string;
|
|
16
|
+
data: {
|
|
17
|
+
adjustedAmount: string;
|
|
18
|
+
adjustedTotal: string;
|
|
19
|
+
adjustedFee?: string;
|
|
20
|
+
adjustedFeeSats?: string;
|
|
21
|
+
txId: string;
|
|
22
|
+
scTxId: string;
|
|
23
|
+
};
|
|
24
|
+
} | {
|
|
25
|
+
code: AddressStatusResponseCodes.AWAIT_CONFIRMATION | AddressStatusResponseCodes.PENDING;
|
|
26
|
+
msg: string;
|
|
27
|
+
data: {
|
|
28
|
+
adjustedAmount: string;
|
|
29
|
+
adjustedTotal: string;
|
|
30
|
+
adjustedFee?: string;
|
|
31
|
+
adjustedFeeSats?: string;
|
|
32
|
+
txId: string;
|
|
33
|
+
};
|
|
34
|
+
} | {
|
|
35
|
+
code: AddressStatusResponseCodes.REFUNDABLE;
|
|
36
|
+
msg: string;
|
|
37
|
+
data: {
|
|
38
|
+
adjustedAmount: string;
|
|
39
|
+
};
|
|
40
|
+
} | {
|
|
41
|
+
code: AddressStatusResponseCodes.REFUNDED | AddressStatusResponseCodes.DOUBLE_SPENT;
|
|
42
|
+
msg: string;
|
|
43
|
+
data: {
|
|
44
|
+
txId: string;
|
|
45
|
+
};
|
|
46
|
+
} | {
|
|
47
|
+
code: AddressStatusResponseCodes.AWAIT_PAYMENT | AddressStatusResponseCodes.EXPIRED;
|
|
48
|
+
msg: string;
|
|
49
|
+
};
|
|
50
|
+
export type TrustedFromBTCInit = {
|
|
51
|
+
address: string;
|
|
52
|
+
amount: bigint;
|
|
53
|
+
token: string;
|
|
54
|
+
refundAddress?: string;
|
|
55
|
+
};
|
|
56
|
+
declare const TrustedFromBTCResponseSchema: {
|
|
57
|
+
readonly paymentHash: FieldTypeEnum.String;
|
|
58
|
+
readonly sequence: FieldTypeEnum.BigInt;
|
|
59
|
+
readonly btcAddress: FieldTypeEnum.String;
|
|
60
|
+
readonly amountSats: FieldTypeEnum.BigInt;
|
|
61
|
+
readonly swapFeeSats: FieldTypeEnum.BigInt;
|
|
62
|
+
readonly swapFee: FieldTypeEnum.BigInt;
|
|
63
|
+
readonly total: FieldTypeEnum.BigInt;
|
|
64
|
+
readonly intermediaryKey: FieldTypeEnum.String;
|
|
65
|
+
readonly recommendedFee: FieldTypeEnum.Number;
|
|
66
|
+
readonly expiresAt: FieldTypeEnum.Number;
|
|
67
|
+
};
|
|
68
|
+
export type TrustedFromBTCResponseType = RequestSchemaResult<typeof TrustedFromBTCResponseSchema>;
|
|
69
|
+
export declare enum InvoiceStatusResponseCodes {
|
|
70
|
+
EXPIRED = 10001,
|
|
71
|
+
PAID = 10000,
|
|
72
|
+
AWAIT_PAYMENT = 10010,
|
|
73
|
+
PENDING = 10011,
|
|
74
|
+
TX_SENT = 10012
|
|
75
|
+
}
|
|
76
|
+
export type InvoiceStatusResponse = {
|
|
77
|
+
code: InvoiceStatusResponseCodes.TX_SENT | InvoiceStatusResponseCodes.PAID;
|
|
78
|
+
msg: string;
|
|
79
|
+
data: {
|
|
80
|
+
txId: string;
|
|
81
|
+
};
|
|
82
|
+
} | {
|
|
83
|
+
code: Exclude<InvoiceStatusResponseCodes, InvoiceStatusResponseCodes.TX_SENT | InvoiceStatusResponseCodes.PAID>;
|
|
84
|
+
msg: string;
|
|
85
|
+
};
|
|
86
|
+
export type TrustedFromBTCLNInit = {
|
|
87
|
+
address: string;
|
|
88
|
+
amount: bigint;
|
|
89
|
+
token: string;
|
|
90
|
+
};
|
|
91
|
+
declare const TrustedFromBTCLNResponseSchema: {
|
|
92
|
+
readonly pr: FieldTypeEnum.String;
|
|
93
|
+
readonly swapFee: FieldTypeEnum.BigInt;
|
|
94
|
+
readonly swapFeeSats: FieldTypeEnum.BigInt;
|
|
95
|
+
readonly total: FieldTypeEnum.BigInt;
|
|
96
|
+
};
|
|
97
|
+
export type TrustedFromBTCLNResponseType = RequestSchemaResult<typeof TrustedFromBTCLNResponseSchema>;
|
|
98
|
+
export declare class TrustedIntermediaryAPI {
|
|
99
|
+
/**
|
|
100
|
+
* Fetches the invoice status from the intermediary node
|
|
101
|
+
*
|
|
102
|
+
* @param url Url of the trusted intermediary
|
|
103
|
+
* @param paymentHash Payment hash of the lightning invoice
|
|
104
|
+
* @param timeout Timeout in milliseconds
|
|
105
|
+
* @param abortSignal
|
|
106
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
107
|
+
*/
|
|
108
|
+
static getInvoiceStatus(url: string, paymentHash: string, timeout?: number, abortSignal?: AbortSignal): Promise<InvoiceStatusResponse>;
|
|
109
|
+
/**
|
|
110
|
+
* Initiate a trusted swap from BTCLN to SC native currency, retries!
|
|
111
|
+
*
|
|
112
|
+
* @param chainIdentifier
|
|
113
|
+
* @param baseUrl Base url of the trusted swap intermediary
|
|
114
|
+
* @param init Initialization parameters
|
|
115
|
+
* @param timeout Timeout in milliseconds for the request
|
|
116
|
+
* @param abortSignal
|
|
117
|
+
* @throws {RequestError} If the response is non-200
|
|
118
|
+
*/
|
|
119
|
+
static initTrustedFromBTCLN(chainIdentifier: string, baseUrl: string, init: TrustedFromBTCLNInit, timeout?: number, abortSignal?: AbortSignal): Promise<TrustedFromBTCLNResponseType>;
|
|
120
|
+
/**
|
|
121
|
+
* Fetches the address status from the intermediary node
|
|
122
|
+
*
|
|
123
|
+
* @param url Url of the trusted intermediary
|
|
124
|
+
* @param paymentHash Payment hash of the swap
|
|
125
|
+
* @param sequence Sequence number of the swap
|
|
126
|
+
* @param timeout Timeout in milliseconds
|
|
127
|
+
* @param abortSignal
|
|
128
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
129
|
+
*/
|
|
130
|
+
static getAddressStatus(url: string, paymentHash: string, sequence: bigint, timeout?: number, abortSignal?: AbortSignal): Promise<AddressStatusResponse>;
|
|
131
|
+
/**
|
|
132
|
+
* Sets the refund address for an on-chain gas swap
|
|
133
|
+
*
|
|
134
|
+
* @param url Url of the trusted intermediary
|
|
135
|
+
* @param paymentHash Payment hash of the swap
|
|
136
|
+
* @param sequence Sequence number of the swap
|
|
137
|
+
* @param refundAddress Refund address to set for the swap
|
|
138
|
+
* @param timeout Timeout in milliseconds
|
|
139
|
+
* @param abortSignal
|
|
140
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
141
|
+
*/
|
|
142
|
+
static setRefundAddress(url: string, paymentHash: string, sequence: bigint, refundAddress: string, timeout?: number, abortSignal?: AbortSignal): Promise<void>;
|
|
143
|
+
/**
|
|
144
|
+
* Initiate a trusted swap from BTC to SC native currency, retries!
|
|
145
|
+
*
|
|
146
|
+
* @param chainIdentifier
|
|
147
|
+
* @param baseUrl Base url of the trusted swap intermediary
|
|
148
|
+
* @param init Initialization parameters
|
|
149
|
+
* @param timeout Timeout in milliseconds for the request
|
|
150
|
+
* @param abortSignal
|
|
151
|
+
* @throws {RequestError} If the response is non-200
|
|
152
|
+
*/
|
|
153
|
+
static initTrustedFromBTC(chainIdentifier: string, baseUrl: string, init: TrustedFromBTCInit, timeout?: number, abortSignal?: AbortSignal): Promise<TrustedFromBTCResponseType>;
|
|
154
|
+
}
|
|
155
|
+
export {};
|
|
@@ -1,137 +1,137 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TrustedIntermediaryAPI = exports.InvoiceStatusResponseCodes = exports.AddressStatusResponseCodes = void 0;
|
|
4
|
-
const RequestError_1 = require("../../errors/RequestError");
|
|
5
|
-
const SchemaVerifier_1 = require("../../http/paramcoders/SchemaVerifier");
|
|
6
|
-
const HttpUtils_1 = require("../../http/HttpUtils");
|
|
7
|
-
const RetryUtils_1 = require("../../utils/RetryUtils");
|
|
8
|
-
var AddressStatusResponseCodes;
|
|
9
|
-
(function (AddressStatusResponseCodes) {
|
|
10
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["EXPIRED"] = 10001] = "EXPIRED";
|
|
11
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["PAID"] = 10000] = "PAID";
|
|
12
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["AWAIT_PAYMENT"] = 10010] = "AWAIT_PAYMENT";
|
|
13
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["AWAIT_CONFIRMATION"] = 10011] = "AWAIT_CONFIRMATION";
|
|
14
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["PENDING"] = 10013] = "PENDING";
|
|
15
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["TX_SENT"] = 10012] = "TX_SENT";
|
|
16
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["REFUNDED"] = 10014] = "REFUNDED";
|
|
17
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["DOUBLE_SPENT"] = 10015] = "DOUBLE_SPENT";
|
|
18
|
-
AddressStatusResponseCodes[AddressStatusResponseCodes["REFUNDABLE"] = 10016] = "REFUNDABLE";
|
|
19
|
-
})(AddressStatusResponseCodes
|
|
20
|
-
const TrustedFromBTCResponseSchema = {
|
|
21
|
-
paymentHash: SchemaVerifier_1.FieldTypeEnum.String,
|
|
22
|
-
sequence: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
23
|
-
btcAddress: SchemaVerifier_1.FieldTypeEnum.String,
|
|
24
|
-
amountSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
25
|
-
swapFeeSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
26
|
-
swapFee: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
27
|
-
total: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
28
|
-
intermediaryKey: SchemaVerifier_1.FieldTypeEnum.String,
|
|
29
|
-
recommendedFee: SchemaVerifier_1.FieldTypeEnum.Number,
|
|
30
|
-
expiresAt: SchemaVerifier_1.FieldTypeEnum.Number
|
|
31
|
-
};
|
|
32
|
-
var InvoiceStatusResponseCodes;
|
|
33
|
-
(function (InvoiceStatusResponseCodes) {
|
|
34
|
-
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["EXPIRED"] = 10001] = "EXPIRED";
|
|
35
|
-
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["PAID"] = 10000] = "PAID";
|
|
36
|
-
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["AWAIT_PAYMENT"] = 10010] = "AWAIT_PAYMENT";
|
|
37
|
-
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["PENDING"] = 10011] = "PENDING";
|
|
38
|
-
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["TX_SENT"] = 10012] = "TX_SENT";
|
|
39
|
-
})(InvoiceStatusResponseCodes
|
|
40
|
-
const TrustedFromBTCLNResponseSchema = {
|
|
41
|
-
pr: SchemaVerifier_1.FieldTypeEnum.String,
|
|
42
|
-
swapFee: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
43
|
-
swapFeeSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
44
|
-
total: SchemaVerifier_1.FieldTypeEnum.BigInt
|
|
45
|
-
};
|
|
46
|
-
class TrustedIntermediaryAPI {
|
|
47
|
-
/**
|
|
48
|
-
* Fetches the invoice status from the intermediary node
|
|
49
|
-
*
|
|
50
|
-
* @param url Url of the trusted intermediary
|
|
51
|
-
* @param paymentHash Payment hash of the lightning invoice
|
|
52
|
-
* @param timeout Timeout in milliseconds
|
|
53
|
-
* @param abortSignal
|
|
54
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
55
|
-
*/
|
|
56
|
-
static async getInvoiceStatus(url, paymentHash, timeout, abortSignal) {
|
|
57
|
-
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/getInvoiceStatus?paymentHash=" + encodeURIComponent(paymentHash), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Initiate a trusted swap from BTCLN to SC native currency, retries!
|
|
61
|
-
*
|
|
62
|
-
* @param chainIdentifier
|
|
63
|
-
* @param baseUrl Base url of the trusted swap intermediary
|
|
64
|
-
* @param init Initialization parameters
|
|
65
|
-
* @param timeout Timeout in milliseconds for the request
|
|
66
|
-
* @param abortSignal
|
|
67
|
-
* @throws {RequestError} If the response is non-200
|
|
68
|
-
*/
|
|
69
|
-
static async initTrustedFromBTCLN(chainIdentifier, baseUrl, init, timeout, abortSignal) {
|
|
70
|
-
const resp = await (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(baseUrl + "/lnforgas/createInvoice" +
|
|
71
|
-
"?address=" + encodeURIComponent(init.address) +
|
|
72
|
-
"&amount=" + encodeURIComponent(init.amount.toString(10)) +
|
|
73
|
-
"&chain=" + encodeURIComponent(chainIdentifier) +
|
|
74
|
-
"&token=" + encodeURIComponent(init.token), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
75
|
-
if (resp.code !== 10000)
|
|
76
|
-
throw RequestError_1.RequestError.parse(JSON.stringify(resp), 400);
|
|
77
|
-
const res = (0, SchemaVerifier_1.verifySchema)(resp.data, TrustedFromBTCLNResponseSchema);
|
|
78
|
-
if (res == null)
|
|
79
|
-
throw new Error("Invalid response returned from LP");
|
|
80
|
-
return res;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Fetches the address status from the intermediary node
|
|
84
|
-
*
|
|
85
|
-
* @param url Url of the trusted intermediary
|
|
86
|
-
* @param paymentHash Payment hash of the swap
|
|
87
|
-
* @param sequence Sequence number of the swap
|
|
88
|
-
* @param timeout Timeout in milliseconds
|
|
89
|
-
* @param abortSignal
|
|
90
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
91
|
-
*/
|
|
92
|
-
static async getAddressStatus(url, paymentHash, sequence, timeout, abortSignal) {
|
|
93
|
-
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/getAddressStatus?paymentHash=" + encodeURIComponent(paymentHash) + "&sequence=" + encodeURIComponent(sequence.toString(10)), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Sets the refund address for an on-chain gas swap
|
|
97
|
-
*
|
|
98
|
-
* @param url Url of the trusted intermediary
|
|
99
|
-
* @param paymentHash Payment hash of the swap
|
|
100
|
-
* @param sequence Sequence number of the swap
|
|
101
|
-
* @param refundAddress Refund address to set for the swap
|
|
102
|
-
* @param timeout Timeout in milliseconds
|
|
103
|
-
* @param abortSignal
|
|
104
|
-
* @throws {RequestError} if non-200 http response is returned
|
|
105
|
-
*/
|
|
106
|
-
static async setRefundAddress(url, paymentHash, sequence, refundAddress, timeout, abortSignal) {
|
|
107
|
-
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/setRefundAddress" +
|
|
108
|
-
"?paymentHash=" + encodeURIComponent(paymentHash) +
|
|
109
|
-
"&sequence=" + encodeURIComponent(sequence.toString(10)) +
|
|
110
|
-
"&refundAddress=" + encodeURIComponent(refundAddress), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Initiate a trusted swap from BTC to SC native currency, retries!
|
|
114
|
-
*
|
|
115
|
-
* @param chainIdentifier
|
|
116
|
-
* @param baseUrl Base url of the trusted swap intermediary
|
|
117
|
-
* @param init Initialization parameters
|
|
118
|
-
* @param timeout Timeout in milliseconds for the request
|
|
119
|
-
* @param abortSignal
|
|
120
|
-
* @throws {RequestError} If the response is non-200
|
|
121
|
-
*/
|
|
122
|
-
static async initTrustedFromBTC(chainIdentifier, baseUrl, init, timeout, abortSignal) {
|
|
123
|
-
const resp = await (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(baseUrl + "/frombtc_trusted/getAddress?chain=" + encodeURIComponent(chainIdentifier) +
|
|
124
|
-
"&address=" + encodeURIComponent(init.address) +
|
|
125
|
-
"&amount=" + encodeURIComponent(init.amount.toString(10)) +
|
|
126
|
-
(init.refundAddress == null ? "" : "&refundAddress=" + encodeURIComponent(init.refundAddress)) +
|
|
127
|
-
"&exactIn=true" +
|
|
128
|
-
"&token=" + encodeURIComponent(init.token), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
129
|
-
if (resp.code !== 10000)
|
|
130
|
-
throw RequestError_1.RequestError.parse(JSON.stringify(resp), 400);
|
|
131
|
-
const res = (0, SchemaVerifier_1.verifySchema)(resp.data, TrustedFromBTCResponseSchema);
|
|
132
|
-
if (res == null)
|
|
133
|
-
throw new Error("Invalid response returned from LP");
|
|
134
|
-
return res;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
exports.TrustedIntermediaryAPI = TrustedIntermediaryAPI;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TrustedIntermediaryAPI = exports.InvoiceStatusResponseCodes = exports.AddressStatusResponseCodes = void 0;
|
|
4
|
+
const RequestError_1 = require("../../errors/RequestError");
|
|
5
|
+
const SchemaVerifier_1 = require("../../http/paramcoders/SchemaVerifier");
|
|
6
|
+
const HttpUtils_1 = require("../../http/HttpUtils");
|
|
7
|
+
const RetryUtils_1 = require("../../utils/RetryUtils");
|
|
8
|
+
var AddressStatusResponseCodes;
|
|
9
|
+
(function (AddressStatusResponseCodes) {
|
|
10
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["EXPIRED"] = 10001] = "EXPIRED";
|
|
11
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["PAID"] = 10000] = "PAID";
|
|
12
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["AWAIT_PAYMENT"] = 10010] = "AWAIT_PAYMENT";
|
|
13
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["AWAIT_CONFIRMATION"] = 10011] = "AWAIT_CONFIRMATION";
|
|
14
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["PENDING"] = 10013] = "PENDING";
|
|
15
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["TX_SENT"] = 10012] = "TX_SENT";
|
|
16
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["REFUNDED"] = 10014] = "REFUNDED";
|
|
17
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["DOUBLE_SPENT"] = 10015] = "DOUBLE_SPENT";
|
|
18
|
+
AddressStatusResponseCodes[AddressStatusResponseCodes["REFUNDABLE"] = 10016] = "REFUNDABLE";
|
|
19
|
+
})(AddressStatusResponseCodes || (exports.AddressStatusResponseCodes = AddressStatusResponseCodes = {}));
|
|
20
|
+
const TrustedFromBTCResponseSchema = {
|
|
21
|
+
paymentHash: SchemaVerifier_1.FieldTypeEnum.String,
|
|
22
|
+
sequence: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
23
|
+
btcAddress: SchemaVerifier_1.FieldTypeEnum.String,
|
|
24
|
+
amountSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
25
|
+
swapFeeSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
26
|
+
swapFee: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
27
|
+
total: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
28
|
+
intermediaryKey: SchemaVerifier_1.FieldTypeEnum.String,
|
|
29
|
+
recommendedFee: SchemaVerifier_1.FieldTypeEnum.Number,
|
|
30
|
+
expiresAt: SchemaVerifier_1.FieldTypeEnum.Number
|
|
31
|
+
};
|
|
32
|
+
var InvoiceStatusResponseCodes;
|
|
33
|
+
(function (InvoiceStatusResponseCodes) {
|
|
34
|
+
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["EXPIRED"] = 10001] = "EXPIRED";
|
|
35
|
+
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["PAID"] = 10000] = "PAID";
|
|
36
|
+
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["AWAIT_PAYMENT"] = 10010] = "AWAIT_PAYMENT";
|
|
37
|
+
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["PENDING"] = 10011] = "PENDING";
|
|
38
|
+
InvoiceStatusResponseCodes[InvoiceStatusResponseCodes["TX_SENT"] = 10012] = "TX_SENT";
|
|
39
|
+
})(InvoiceStatusResponseCodes || (exports.InvoiceStatusResponseCodes = InvoiceStatusResponseCodes = {}));
|
|
40
|
+
const TrustedFromBTCLNResponseSchema = {
|
|
41
|
+
pr: SchemaVerifier_1.FieldTypeEnum.String,
|
|
42
|
+
swapFee: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
43
|
+
swapFeeSats: SchemaVerifier_1.FieldTypeEnum.BigInt,
|
|
44
|
+
total: SchemaVerifier_1.FieldTypeEnum.BigInt
|
|
45
|
+
};
|
|
46
|
+
class TrustedIntermediaryAPI {
|
|
47
|
+
/**
|
|
48
|
+
* Fetches the invoice status from the intermediary node
|
|
49
|
+
*
|
|
50
|
+
* @param url Url of the trusted intermediary
|
|
51
|
+
* @param paymentHash Payment hash of the lightning invoice
|
|
52
|
+
* @param timeout Timeout in milliseconds
|
|
53
|
+
* @param abortSignal
|
|
54
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
55
|
+
*/
|
|
56
|
+
static async getInvoiceStatus(url, paymentHash, timeout, abortSignal) {
|
|
57
|
+
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/getInvoiceStatus?paymentHash=" + encodeURIComponent(paymentHash), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Initiate a trusted swap from BTCLN to SC native currency, retries!
|
|
61
|
+
*
|
|
62
|
+
* @param chainIdentifier
|
|
63
|
+
* @param baseUrl Base url of the trusted swap intermediary
|
|
64
|
+
* @param init Initialization parameters
|
|
65
|
+
* @param timeout Timeout in milliseconds for the request
|
|
66
|
+
* @param abortSignal
|
|
67
|
+
* @throws {RequestError} If the response is non-200
|
|
68
|
+
*/
|
|
69
|
+
static async initTrustedFromBTCLN(chainIdentifier, baseUrl, init, timeout, abortSignal) {
|
|
70
|
+
const resp = await (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(baseUrl + "/lnforgas/createInvoice" +
|
|
71
|
+
"?address=" + encodeURIComponent(init.address) +
|
|
72
|
+
"&amount=" + encodeURIComponent(init.amount.toString(10)) +
|
|
73
|
+
"&chain=" + encodeURIComponent(chainIdentifier) +
|
|
74
|
+
"&token=" + encodeURIComponent(init.token), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
75
|
+
if (resp.code !== 10000)
|
|
76
|
+
throw RequestError_1.RequestError.parse(JSON.stringify(resp), 400);
|
|
77
|
+
const res = (0, SchemaVerifier_1.verifySchema)(resp.data, TrustedFromBTCLNResponseSchema);
|
|
78
|
+
if (res == null)
|
|
79
|
+
throw new Error("Invalid response returned from LP");
|
|
80
|
+
return res;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Fetches the address status from the intermediary node
|
|
84
|
+
*
|
|
85
|
+
* @param url Url of the trusted intermediary
|
|
86
|
+
* @param paymentHash Payment hash of the swap
|
|
87
|
+
* @param sequence Sequence number of the swap
|
|
88
|
+
* @param timeout Timeout in milliseconds
|
|
89
|
+
* @param abortSignal
|
|
90
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
91
|
+
*/
|
|
92
|
+
static async getAddressStatus(url, paymentHash, sequence, timeout, abortSignal) {
|
|
93
|
+
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/getAddressStatus?paymentHash=" + encodeURIComponent(paymentHash) + "&sequence=" + encodeURIComponent(sequence.toString(10)), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Sets the refund address for an on-chain gas swap
|
|
97
|
+
*
|
|
98
|
+
* @param url Url of the trusted intermediary
|
|
99
|
+
* @param paymentHash Payment hash of the swap
|
|
100
|
+
* @param sequence Sequence number of the swap
|
|
101
|
+
* @param refundAddress Refund address to set for the swap
|
|
102
|
+
* @param timeout Timeout in milliseconds
|
|
103
|
+
* @param abortSignal
|
|
104
|
+
* @throws {RequestError} if non-200 http response is returned
|
|
105
|
+
*/
|
|
106
|
+
static async setRefundAddress(url, paymentHash, sequence, refundAddress, timeout, abortSignal) {
|
|
107
|
+
return (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(url + "/setRefundAddress" +
|
|
108
|
+
"?paymentHash=" + encodeURIComponent(paymentHash) +
|
|
109
|
+
"&sequence=" + encodeURIComponent(sequence.toString(10)) +
|
|
110
|
+
"&refundAddress=" + encodeURIComponent(refundAddress), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Initiate a trusted swap from BTC to SC native currency, retries!
|
|
114
|
+
*
|
|
115
|
+
* @param chainIdentifier
|
|
116
|
+
* @param baseUrl Base url of the trusted swap intermediary
|
|
117
|
+
* @param init Initialization parameters
|
|
118
|
+
* @param timeout Timeout in milliseconds for the request
|
|
119
|
+
* @param abortSignal
|
|
120
|
+
* @throws {RequestError} If the response is non-200
|
|
121
|
+
*/
|
|
122
|
+
static async initTrustedFromBTC(chainIdentifier, baseUrl, init, timeout, abortSignal) {
|
|
123
|
+
const resp = await (0, RetryUtils_1.tryWithRetries)(() => (0, HttpUtils_1.httpGet)(baseUrl + "/frombtc_trusted/getAddress?chain=" + encodeURIComponent(chainIdentifier) +
|
|
124
|
+
"&address=" + encodeURIComponent(init.address) +
|
|
125
|
+
"&amount=" + encodeURIComponent(init.amount.toString(10)) +
|
|
126
|
+
(init.refundAddress == null ? "" : "&refundAddress=" + encodeURIComponent(init.refundAddress)) +
|
|
127
|
+
"&exactIn=true" +
|
|
128
|
+
"&token=" + encodeURIComponent(init.token), timeout, abortSignal), undefined, RequestError_1.RequestError, abortSignal);
|
|
129
|
+
if (resp.code !== 10000)
|
|
130
|
+
throw RequestError_1.RequestError.parse(JSON.stringify(resp), 400);
|
|
131
|
+
const res = (0, SchemaVerifier_1.verifySchema)(resp.data, TrustedFromBTCResponseSchema);
|
|
132
|
+
if (res == null)
|
|
133
|
+
throw new Error("Invalid response returned from LP");
|
|
134
|
+
return res;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
exports.TrustedIntermediaryAPI = TrustedIntermediaryAPI;
|