@atomiqlabs/lp-lib 14.0.0-dev.21 → 14.0.0-dev.23

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 (167) hide show
  1. package/LICENSE +201 -201
  2. package/dist/fees/IBtcFeeEstimator.d.ts +3 -3
  3. package/dist/fees/IBtcFeeEstimator.js +2 -2
  4. package/dist/index.d.ts +42 -42
  5. package/dist/index.js +58 -58
  6. package/dist/info/InfoHandler.d.ts +17 -17
  7. package/dist/info/InfoHandler.js +61 -61
  8. package/dist/plugins/IPlugin.d.ts +143 -143
  9. package/dist/plugins/IPlugin.js +34 -34
  10. package/dist/plugins/PluginManager.d.ts +112 -112
  11. package/dist/plugins/PluginManager.js +259 -259
  12. package/dist/prices/BinanceSwapPrice.d.ts +26 -26
  13. package/dist/prices/BinanceSwapPrice.js +92 -92
  14. package/dist/prices/CoinGeckoSwapPrice.d.ts +30 -30
  15. package/dist/prices/CoinGeckoSwapPrice.js +64 -64
  16. package/dist/prices/ISwapPrice.d.ts +43 -43
  17. package/dist/prices/ISwapPrice.js +55 -55
  18. package/dist/prices/OKXSwapPrice.d.ts +26 -26
  19. package/dist/prices/OKXSwapPrice.js +92 -92
  20. package/dist/storage/IIntermediaryStorage.d.ts +18 -18
  21. package/dist/storage/IIntermediaryStorage.js +2 -2
  22. package/dist/storagemanager/IntermediaryStorageManager.d.ts +19 -19
  23. package/dist/storagemanager/IntermediaryStorageManager.js +111 -111
  24. package/dist/storagemanager/StorageManager.d.ts +13 -13
  25. package/dist/storagemanager/StorageManager.js +64 -64
  26. package/dist/swaps/SwapHandler.d.ts +153 -153
  27. package/dist/swaps/SwapHandler.js +160 -160
  28. package/dist/swaps/SwapHandlerSwap.d.ts +79 -79
  29. package/dist/swaps/SwapHandlerSwap.js +78 -78
  30. package/dist/swaps/assertions/AmountAssertions.d.ts +28 -28
  31. package/dist/swaps/assertions/AmountAssertions.js +72 -72
  32. package/dist/swaps/assertions/FromBtcAmountAssertions.d.ts +76 -76
  33. package/dist/swaps/assertions/FromBtcAmountAssertions.js +180 -180
  34. package/dist/swaps/assertions/LightningAssertions.d.ts +44 -44
  35. package/dist/swaps/assertions/LightningAssertions.js +86 -86
  36. package/dist/swaps/assertions/ToBtcAmountAssertions.d.ts +53 -53
  37. package/dist/swaps/assertions/ToBtcAmountAssertions.js +150 -150
  38. package/dist/swaps/escrow/EscrowHandler.d.ts +51 -51
  39. package/dist/swaps/escrow/EscrowHandler.js +158 -158
  40. package/dist/swaps/escrow/EscrowHandlerSwap.d.ts +35 -35
  41. package/dist/swaps/escrow/EscrowHandlerSwap.js +69 -69
  42. package/dist/swaps/escrow/FromBtcBaseSwap.d.ts +14 -14
  43. package/dist/swaps/escrow/FromBtcBaseSwap.js +32 -32
  44. package/dist/swaps/escrow/FromBtcBaseSwapHandler.d.ts +102 -102
  45. package/dist/swaps/escrow/FromBtcBaseSwapHandler.js +210 -210
  46. package/dist/swaps/escrow/ToBtcBaseSwap.d.ts +36 -36
  47. package/dist/swaps/escrow/ToBtcBaseSwap.js +67 -67
  48. package/dist/swaps/escrow/ToBtcBaseSwapHandler.d.ts +53 -53
  49. package/dist/swaps/escrow/ToBtcBaseSwapHandler.js +81 -81
  50. package/dist/swaps/escrow/frombtc_abstract/FromBtcAbs.d.ts +83 -83
  51. package/dist/swaps/escrow/frombtc_abstract/FromBtcAbs.js +318 -318
  52. package/dist/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.d.ts +21 -21
  53. package/dist/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.js +50 -50
  54. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.d.ts +107 -107
  55. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.js +675 -675
  56. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.d.ts +33 -33
  57. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.js +91 -91
  58. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.d.ts +111 -111
  59. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.js +684 -684
  60. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.d.ts +55 -55
  61. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.js +120 -120
  62. package/dist/swaps/escrow/tobtc_abstract/ToBtcAbs.d.ts +171 -171
  63. package/dist/swaps/escrow/tobtc_abstract/ToBtcAbs.js +706 -706
  64. package/dist/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.d.ts +26 -26
  65. package/dist/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.js +62 -62
  66. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.d.ts +177 -177
  67. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.js +863 -863
  68. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.d.ts +24 -24
  69. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.js +58 -58
  70. package/dist/swaps/spv_vault_swap/SpvVault.d.ts +40 -41
  71. package/dist/swaps/spv_vault_swap/SpvVault.js +111 -111
  72. package/dist/swaps/spv_vault_swap/SpvVaultSwap.d.ts +67 -67
  73. package/dist/swaps/spv_vault_swap/SpvVaultSwap.js +158 -158
  74. package/dist/swaps/spv_vault_swap/SpvVaultSwapHandler.d.ts +68 -68
  75. package/dist/swaps/spv_vault_swap/SpvVaultSwapHandler.js +492 -492
  76. package/dist/swaps/spv_vault_swap/SpvVaults.d.ts +52 -52
  77. package/dist/swaps/spv_vault_swap/SpvVaults.js +386 -364
  78. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrusted.d.ts +51 -51
  79. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrusted.js +650 -650
  80. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.d.ts +52 -52
  81. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.js +118 -118
  82. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.d.ts +76 -76
  83. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.js +494 -494
  84. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.d.ts +34 -34
  85. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.js +81 -81
  86. package/dist/utils/BitcoinUtils.d.ts +2 -2
  87. package/dist/utils/BitcoinUtils.js +45 -45
  88. package/dist/utils/Utils.d.ts +29 -29
  89. package/dist/utils/Utils.js +89 -89
  90. package/dist/utils/paramcoders/IParamReader.d.ts +5 -5
  91. package/dist/utils/paramcoders/IParamReader.js +2 -2
  92. package/dist/utils/paramcoders/IParamWriter.d.ts +4 -4
  93. package/dist/utils/paramcoders/IParamWriter.js +2 -2
  94. package/dist/utils/paramcoders/LegacyParamEncoder.d.ts +10 -10
  95. package/dist/utils/paramcoders/LegacyParamEncoder.js +22 -22
  96. package/dist/utils/paramcoders/ParamDecoder.d.ts +25 -25
  97. package/dist/utils/paramcoders/ParamDecoder.js +222 -222
  98. package/dist/utils/paramcoders/ParamEncoder.d.ts +9 -9
  99. package/dist/utils/paramcoders/ParamEncoder.js +22 -22
  100. package/dist/utils/paramcoders/SchemaVerifier.d.ts +21 -21
  101. package/dist/utils/paramcoders/SchemaVerifier.js +84 -84
  102. package/dist/utils/paramcoders/server/ServerParamDecoder.d.ts +8 -8
  103. package/dist/utils/paramcoders/server/ServerParamDecoder.js +107 -107
  104. package/dist/utils/paramcoders/server/ServerParamEncoder.d.ts +11 -11
  105. package/dist/utils/paramcoders/server/ServerParamEncoder.js +65 -65
  106. package/dist/wallets/IBitcoinWallet.d.ts +67 -67
  107. package/dist/wallets/IBitcoinWallet.js +2 -2
  108. package/dist/wallets/ILightningWallet.d.ts +117 -117
  109. package/dist/wallets/ILightningWallet.js +37 -37
  110. package/dist/wallets/ISpvVaultSigner.d.ts +7 -7
  111. package/dist/wallets/ISpvVaultSigner.js +2 -2
  112. package/package.json +36 -36
  113. package/src/fees/IBtcFeeEstimator.ts +6 -6
  114. package/src/index.ts +53 -53
  115. package/src/info/InfoHandler.ts +106 -106
  116. package/src/plugins/IPlugin.ts +168 -168
  117. package/src/plugins/PluginManager.ts +336 -336
  118. package/src/prices/BinanceSwapPrice.ts +113 -113
  119. package/src/prices/CoinGeckoSwapPrice.ts +87 -87
  120. package/src/prices/ISwapPrice.ts +88 -88
  121. package/src/prices/OKXSwapPrice.ts +113 -113
  122. package/src/storage/IIntermediaryStorage.ts +19 -19
  123. package/src/storagemanager/IntermediaryStorageManager.ts +118 -118
  124. package/src/storagemanager/StorageManager.ts +78 -78
  125. package/src/swaps/SwapHandler.ts +277 -277
  126. package/src/swaps/SwapHandlerSwap.ts +141 -141
  127. package/src/swaps/assertions/AmountAssertions.ts +76 -76
  128. package/src/swaps/assertions/FromBtcAmountAssertions.ts +246 -246
  129. package/src/swaps/assertions/LightningAssertions.ts +103 -103
  130. package/src/swaps/assertions/ToBtcAmountAssertions.ts +203 -203
  131. package/src/swaps/escrow/EscrowHandler.ts +179 -179
  132. package/src/swaps/escrow/EscrowHandlerSwap.ts +86 -86
  133. package/src/swaps/escrow/FromBtcBaseSwap.ts +38 -38
  134. package/src/swaps/escrow/FromBtcBaseSwapHandler.ts +286 -286
  135. package/src/swaps/escrow/ToBtcBaseSwap.ts +85 -85
  136. package/src/swaps/escrow/ToBtcBaseSwapHandler.ts +129 -129
  137. package/src/swaps/escrow/frombtc_abstract/FromBtcAbs.ts +452 -452
  138. package/src/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.ts +61 -61
  139. package/src/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.ts +856 -856
  140. package/src/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.ts +141 -141
  141. package/src/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.ts +850 -850
  142. package/src/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.ts +196 -196
  143. package/src/swaps/escrow/tobtc_abstract/ToBtcAbs.ts +879 -879
  144. package/src/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.ts +102 -102
  145. package/src/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.ts +1112 -1112
  146. package/src/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.ts +80 -80
  147. package/src/swaps/spv_vault_swap/SpvVault.ts +143 -143
  148. package/src/swaps/spv_vault_swap/SpvVaultSwap.ts +225 -225
  149. package/src/swaps/spv_vault_swap/SpvVaultSwapHandler.ts +628 -628
  150. package/src/swaps/spv_vault_swap/SpvVaults.ts +458 -435
  151. package/src/swaps/trusted/frombtc_trusted/FromBtcTrusted.ts +747 -747
  152. package/src/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.ts +185 -185
  153. package/src/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.ts +590 -590
  154. package/src/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.ts +121 -121
  155. package/src/utils/BitcoinUtils.ts +42 -42
  156. package/src/utils/Utils.ts +104 -104
  157. package/src/utils/paramcoders/IParamReader.ts +7 -7
  158. package/src/utils/paramcoders/IParamWriter.ts +8 -8
  159. package/src/utils/paramcoders/LegacyParamEncoder.ts +27 -27
  160. package/src/utils/paramcoders/ParamDecoder.ts +218 -218
  161. package/src/utils/paramcoders/ParamEncoder.ts +29 -29
  162. package/src/utils/paramcoders/SchemaVerifier.ts +96 -96
  163. package/src/utils/paramcoders/server/ServerParamDecoder.ts +118 -118
  164. package/src/utils/paramcoders/server/ServerParamEncoder.ts +75 -75
  165. package/src/wallets/IBitcoinWallet.ts +68 -68
  166. package/src/wallets/ILightningWallet.ts +178 -178
  167. package/src/wallets/ISpvVaultSigner.ts +10 -10
@@ -1,196 +1,196 @@
1
- import {SwapData} from "@atomiqlabs/base";
2
- import {SwapHandlerType} from "../../../index";
3
- import {FromBtcBaseSwap} from "../FromBtcBaseSwap";
4
- import {deserializeBN, serializeBN} from "../../../utils/Utils";
5
-
6
- export enum FromBtcLnAutoSwapState {
7
- REFUNDED = -2,
8
- CANCELED = -1,
9
- CREATED = 0,
10
- RECEIVED = 1,
11
- TXS_SENT = 2,
12
- COMMITED = 3,
13
- CLAIMED = 4,
14
- SETTLED = 5,
15
- }
16
-
17
- export class FromBtcLnAutoSwap<T extends SwapData = SwapData> extends FromBtcBaseSwap<T, FromBtcLnAutoSwapState> {
18
-
19
- readonly pr: string;
20
- readonly lnPaymentHash: string;
21
- readonly claimHash: string;
22
-
23
- readonly claimer: string;
24
-
25
- readonly token: string;
26
- readonly gasToken: string;
27
- readonly amountToken: bigint;
28
- readonly amountGasToken: bigint;
29
-
30
- readonly tokenSwapFee: bigint;
31
- readonly tokenSwapFeeInToken: bigint;
32
- readonly gasSwapFee: bigint;
33
- readonly gasSwapFeeInToken: bigint;
34
-
35
- readonly claimerBounty: bigint;
36
-
37
- secret: string;
38
-
39
- constructor(
40
- chainIdentifier: string,
41
- pr: string,
42
- lnPaymentHash: string,
43
- claimHash: string,
44
- amountMtokens: bigint,
45
-
46
- claimer: string,
47
- token: string,
48
- gasToken: string,
49
- amountToken: bigint,
50
- amountGasToken: bigint,
51
-
52
- tokenSwapFee: bigint,
53
- tokenSwapFeeInToken: bigint,
54
- gasSwapFee: bigint,
55
- gasSwapFeeInToken: bigint,
56
-
57
- claimerBounty: bigint
58
- );
59
- constructor(obj: any);
60
-
61
- constructor(
62
- chainIdOrObj: string | any,
63
- pr?: string,
64
- lnPaymentHash?: string,
65
- claimHash?: string,
66
- amountMtokens?: bigint,
67
-
68
- claimer?: string,
69
- token?: string,
70
- gasToken?: string,
71
- amountToken?: bigint,
72
- amountGasToken?: bigint,
73
-
74
- tokenSwapFee?: bigint,
75
- tokenSwapFeeInToken?: bigint,
76
- gasSwapFee?: bigint,
77
- gasSwapFeeInToken?: bigint,
78
-
79
- claimerBounty?: bigint
80
- ) {
81
- if(typeof(chainIdOrObj)==="string") {
82
- super(chainIdOrObj, (amountMtokens + 999n) / 1000n, tokenSwapFee + gasSwapFee, tokenSwapFeeInToken);
83
- this.state = FromBtcLnAutoSwapState.CREATED;
84
- this.pr = pr;
85
- this.lnPaymentHash = lnPaymentHash;
86
- this.claimHash = claimHash;
87
- this.claimer = claimer;
88
- this.token = token;
89
- this.gasToken = gasToken;
90
- this.amountToken = amountToken;
91
- this.amountGasToken = amountGasToken;
92
- this.tokenSwapFee = tokenSwapFee;
93
- this.tokenSwapFeeInToken = tokenSwapFeeInToken;
94
- this.gasSwapFee = gasSwapFee;
95
- this.gasSwapFeeInToken = gasSwapFeeInToken;
96
- this.claimerBounty = claimerBounty;
97
- } else {
98
- super(chainIdOrObj);
99
- this.pr = chainIdOrObj.pr;
100
- this.lnPaymentHash = chainIdOrObj.lnPaymentHash;
101
- this.claimHash = chainIdOrObj.claimHash;
102
- this.claimer = chainIdOrObj.claimer;
103
- this.token = chainIdOrObj.token;
104
- this.gasToken = chainIdOrObj.gasToken;
105
- this.amountToken = deserializeBN(chainIdOrObj.amountToken);
106
- this.amountGasToken = deserializeBN(chainIdOrObj.amountGasToken);
107
- this.tokenSwapFee = deserializeBN(chainIdOrObj.tokenSwapFee);
108
- this.tokenSwapFeeInToken = deserializeBN(chainIdOrObj.tokenSwapFeeInToken);
109
- this.gasSwapFee = deserializeBN(chainIdOrObj.gasSwapFee);
110
- this.gasSwapFeeInToken = deserializeBN(chainIdOrObj.gasSwapFeeInToken);
111
- this.claimerBounty = deserializeBN(chainIdOrObj.claimerBounty);
112
- this.secret = chainIdOrObj.secret;
113
- }
114
- this.type = SwapHandlerType.FROM_BTCLN_AUTO;
115
- }
116
-
117
- serialize(): any {
118
- const partialSerialized = super.serialize();
119
- partialSerialized.pr = this.pr;
120
- partialSerialized.secret = this.secret;
121
- partialSerialized.lnPaymentHash = this.lnPaymentHash;
122
- partialSerialized.claimHash = this.claimHash;
123
- partialSerialized.claimer = this.claimer;
124
- partialSerialized.token = this.token;
125
- partialSerialized.gasToken = this.gasToken;
126
- partialSerialized.amountToken = serializeBN(this.amountToken);
127
- partialSerialized.amountGasToken = serializeBN(this.amountGasToken);
128
- partialSerialized.tokenSwapFee = serializeBN(this.tokenSwapFee);
129
- partialSerialized.tokenSwapFeeInToken = serializeBN(this.tokenSwapFeeInToken);
130
- partialSerialized.gasSwapFee = serializeBN(this.gasSwapFee);
131
- partialSerialized.gasSwapFeeInToken = serializeBN(this.gasSwapFeeInToken);
132
- partialSerialized.claimerBounty = serializeBN(this.claimerBounty);
133
- return partialSerialized;
134
- }
135
-
136
- getClaimHash(): string {
137
- return this.claimHash;
138
- }
139
-
140
- getIdentifierHash(): string {
141
- return this.lnPaymentHash;
142
- }
143
-
144
- getOutputGasAmount(): bigint {
145
- return this.amountGasToken;
146
- }
147
-
148
- getOutputAmount(): bigint {
149
- return this.amountToken;
150
- }
151
-
152
- getTotalOutputAmount(): bigint {
153
- return this.amountToken;
154
- }
155
-
156
- getTotalOutputGasAmount(): bigint {
157
- return this.amountGasToken + this.claimerBounty;
158
- }
159
-
160
- getSequence(): bigint {
161
- return 0n;
162
- }
163
-
164
- getSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
165
- return {inInputToken: this.swapFee, inOutputToken: this.swapFeeInToken};
166
- }
167
-
168
- getTokenSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
169
- return {inInputToken: this.tokenSwapFee, inOutputToken: this.tokenSwapFeeInToken};
170
- }
171
-
172
- getGasSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
173
- return {inInputToken: this.gasSwapFee, inOutputToken: this.gasSwapFeeInToken};
174
- }
175
-
176
- getToken(): string {
177
- return this.token;
178
- }
179
-
180
- getGasToken(): string {
181
- return this.gasToken;
182
- }
183
-
184
- isInitiated(): boolean {
185
- return this.state!==FromBtcLnAutoSwapState.CREATED;
186
- }
187
-
188
- isFailed(): boolean {
189
- return this.state===FromBtcLnAutoSwapState.CANCELED || this.state===FromBtcLnAutoSwapState.REFUNDED;
190
- }
191
-
192
- isSuccess(): boolean {
193
- return this.state===FromBtcLnAutoSwapState.SETTLED;
194
- }
195
-
196
- }
1
+ import {SwapData} from "@atomiqlabs/base";
2
+ import {SwapHandlerType} from "../../../index";
3
+ import {FromBtcBaseSwap} from "../FromBtcBaseSwap";
4
+ import {deserializeBN, serializeBN} from "../../../utils/Utils";
5
+
6
+ export enum FromBtcLnAutoSwapState {
7
+ REFUNDED = -2,
8
+ CANCELED = -1,
9
+ CREATED = 0,
10
+ RECEIVED = 1,
11
+ TXS_SENT = 2,
12
+ COMMITED = 3,
13
+ CLAIMED = 4,
14
+ SETTLED = 5,
15
+ }
16
+
17
+ export class FromBtcLnAutoSwap<T extends SwapData = SwapData> extends FromBtcBaseSwap<T, FromBtcLnAutoSwapState> {
18
+
19
+ readonly pr: string;
20
+ readonly lnPaymentHash: string;
21
+ readonly claimHash: string;
22
+
23
+ readonly claimer: string;
24
+
25
+ readonly token: string;
26
+ readonly gasToken: string;
27
+ readonly amountToken: bigint;
28
+ readonly amountGasToken: bigint;
29
+
30
+ readonly tokenSwapFee: bigint;
31
+ readonly tokenSwapFeeInToken: bigint;
32
+ readonly gasSwapFee: bigint;
33
+ readonly gasSwapFeeInToken: bigint;
34
+
35
+ readonly claimerBounty: bigint;
36
+
37
+ secret: string;
38
+
39
+ constructor(
40
+ chainIdentifier: string,
41
+ pr: string,
42
+ lnPaymentHash: string,
43
+ claimHash: string,
44
+ amountMtokens: bigint,
45
+
46
+ claimer: string,
47
+ token: string,
48
+ gasToken: string,
49
+ amountToken: bigint,
50
+ amountGasToken: bigint,
51
+
52
+ tokenSwapFee: bigint,
53
+ tokenSwapFeeInToken: bigint,
54
+ gasSwapFee: bigint,
55
+ gasSwapFeeInToken: bigint,
56
+
57
+ claimerBounty: bigint
58
+ );
59
+ constructor(obj: any);
60
+
61
+ constructor(
62
+ chainIdOrObj: string | any,
63
+ pr?: string,
64
+ lnPaymentHash?: string,
65
+ claimHash?: string,
66
+ amountMtokens?: bigint,
67
+
68
+ claimer?: string,
69
+ token?: string,
70
+ gasToken?: string,
71
+ amountToken?: bigint,
72
+ amountGasToken?: bigint,
73
+
74
+ tokenSwapFee?: bigint,
75
+ tokenSwapFeeInToken?: bigint,
76
+ gasSwapFee?: bigint,
77
+ gasSwapFeeInToken?: bigint,
78
+
79
+ claimerBounty?: bigint
80
+ ) {
81
+ if(typeof(chainIdOrObj)==="string") {
82
+ super(chainIdOrObj, (amountMtokens + 999n) / 1000n, tokenSwapFee + gasSwapFee, tokenSwapFeeInToken);
83
+ this.state = FromBtcLnAutoSwapState.CREATED;
84
+ this.pr = pr;
85
+ this.lnPaymentHash = lnPaymentHash;
86
+ this.claimHash = claimHash;
87
+ this.claimer = claimer;
88
+ this.token = token;
89
+ this.gasToken = gasToken;
90
+ this.amountToken = amountToken;
91
+ this.amountGasToken = amountGasToken;
92
+ this.tokenSwapFee = tokenSwapFee;
93
+ this.tokenSwapFeeInToken = tokenSwapFeeInToken;
94
+ this.gasSwapFee = gasSwapFee;
95
+ this.gasSwapFeeInToken = gasSwapFeeInToken;
96
+ this.claimerBounty = claimerBounty;
97
+ } else {
98
+ super(chainIdOrObj);
99
+ this.pr = chainIdOrObj.pr;
100
+ this.lnPaymentHash = chainIdOrObj.lnPaymentHash;
101
+ this.claimHash = chainIdOrObj.claimHash;
102
+ this.claimer = chainIdOrObj.claimer;
103
+ this.token = chainIdOrObj.token;
104
+ this.gasToken = chainIdOrObj.gasToken;
105
+ this.amountToken = deserializeBN(chainIdOrObj.amountToken);
106
+ this.amountGasToken = deserializeBN(chainIdOrObj.amountGasToken);
107
+ this.tokenSwapFee = deserializeBN(chainIdOrObj.tokenSwapFee);
108
+ this.tokenSwapFeeInToken = deserializeBN(chainIdOrObj.tokenSwapFeeInToken);
109
+ this.gasSwapFee = deserializeBN(chainIdOrObj.gasSwapFee);
110
+ this.gasSwapFeeInToken = deserializeBN(chainIdOrObj.gasSwapFeeInToken);
111
+ this.claimerBounty = deserializeBN(chainIdOrObj.claimerBounty);
112
+ this.secret = chainIdOrObj.secret;
113
+ }
114
+ this.type = SwapHandlerType.FROM_BTCLN_AUTO;
115
+ }
116
+
117
+ serialize(): any {
118
+ const partialSerialized = super.serialize();
119
+ partialSerialized.pr = this.pr;
120
+ partialSerialized.secret = this.secret;
121
+ partialSerialized.lnPaymentHash = this.lnPaymentHash;
122
+ partialSerialized.claimHash = this.claimHash;
123
+ partialSerialized.claimer = this.claimer;
124
+ partialSerialized.token = this.token;
125
+ partialSerialized.gasToken = this.gasToken;
126
+ partialSerialized.amountToken = serializeBN(this.amountToken);
127
+ partialSerialized.amountGasToken = serializeBN(this.amountGasToken);
128
+ partialSerialized.tokenSwapFee = serializeBN(this.tokenSwapFee);
129
+ partialSerialized.tokenSwapFeeInToken = serializeBN(this.tokenSwapFeeInToken);
130
+ partialSerialized.gasSwapFee = serializeBN(this.gasSwapFee);
131
+ partialSerialized.gasSwapFeeInToken = serializeBN(this.gasSwapFeeInToken);
132
+ partialSerialized.claimerBounty = serializeBN(this.claimerBounty);
133
+ return partialSerialized;
134
+ }
135
+
136
+ getClaimHash(): string {
137
+ return this.claimHash;
138
+ }
139
+
140
+ getIdentifierHash(): string {
141
+ return this.lnPaymentHash;
142
+ }
143
+
144
+ getOutputGasAmount(): bigint {
145
+ return this.amountGasToken;
146
+ }
147
+
148
+ getOutputAmount(): bigint {
149
+ return this.amountToken;
150
+ }
151
+
152
+ getTotalOutputAmount(): bigint {
153
+ return this.amountToken;
154
+ }
155
+
156
+ getTotalOutputGasAmount(): bigint {
157
+ return this.amountGasToken + this.claimerBounty;
158
+ }
159
+
160
+ getSequence(): bigint {
161
+ return 0n;
162
+ }
163
+
164
+ getSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
165
+ return {inInputToken: this.swapFee, inOutputToken: this.swapFeeInToken};
166
+ }
167
+
168
+ getTokenSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
169
+ return {inInputToken: this.tokenSwapFee, inOutputToken: this.tokenSwapFeeInToken};
170
+ }
171
+
172
+ getGasSwapFee(): { inInputToken: bigint; inOutputToken: bigint } {
173
+ return {inInputToken: this.gasSwapFee, inOutputToken: this.gasSwapFeeInToken};
174
+ }
175
+
176
+ getToken(): string {
177
+ return this.token;
178
+ }
179
+
180
+ getGasToken(): string {
181
+ return this.gasToken;
182
+ }
183
+
184
+ isInitiated(): boolean {
185
+ return this.state!==FromBtcLnAutoSwapState.CREATED;
186
+ }
187
+
188
+ isFailed(): boolean {
189
+ return this.state===FromBtcLnAutoSwapState.CANCELED || this.state===FromBtcLnAutoSwapState.REFUNDED;
190
+ }
191
+
192
+ isSuccess(): boolean {
193
+ return this.state===FromBtcLnAutoSwapState.SETTLED;
194
+ }
195
+
196
+ }