@atomiqlabs/lp-lib 17.5.1 → 17.5.2

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 (170) 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 +43 -43
  5. package/dist/index.js +59 -59
  6. package/dist/info/InfoHandler.d.ts +17 -17
  7. package/dist/info/InfoHandler.js +61 -61
  8. package/dist/plugins/IPlugin.d.ts +158 -158
  9. package/dist/plugins/IPlugin.js +35 -35
  10. package/dist/plugins/PluginManager.d.ts +115 -115
  11. package/dist/plugins/PluginManager.js +304 -304
  12. package/dist/prices/BinanceSwapPrice.d.ts +29 -29
  13. package/dist/prices/BinanceSwapPrice.js +79 -79
  14. package/dist/prices/CoinGeckoSwapPrice.d.ts +33 -33
  15. package/dist/prices/CoinGeckoSwapPrice.js +51 -51
  16. package/dist/prices/ISwapPrice.d.ts +43 -43
  17. package/dist/prices/ISwapPrice.js +55 -55
  18. package/dist/prices/OKXSwapPrice.d.ts +29 -29
  19. package/dist/prices/OKXSwapPrice.js +79 -79
  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 +178 -178
  27. package/dist/swaps/SwapHandler.js +225 -225
  28. package/dist/swaps/SwapHandlerSwap.d.ts +80 -80
  29. package/dist/swaps/SwapHandlerSwap.js +78 -78
  30. package/dist/swaps/assertions/AmountAssertions.d.ts +37 -37
  31. package/dist/swaps/assertions/AmountAssertions.js +83 -83
  32. package/dist/swaps/assertions/FromBtcAmountAssertions.d.ts +76 -76
  33. package/dist/swaps/assertions/FromBtcAmountAssertions.js +189 -189
  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 +154 -154
  38. package/dist/swaps/escrow/EscrowHandler.d.ts +50 -50
  39. package/dist/swaps/escrow/EscrowHandler.js +151 -151
  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 +84 -84
  51. package/dist/swaps/escrow/frombtc_abstract/FromBtcAbs.js +329 -329
  52. package/dist/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.d.ts +22 -22
  53. package/dist/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.js +53 -53
  54. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.d.ts +115 -115
  55. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.js +719 -719
  56. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.d.ts +34 -34
  57. package/dist/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.js +94 -94
  58. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.d.ts +119 -119
  59. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.js +730 -730
  60. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.d.ts +56 -56
  61. package/dist/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.js +123 -123
  62. package/dist/swaps/escrow/tobtc_abstract/ToBtcAbs.d.ts +170 -170
  63. package/dist/swaps/escrow/tobtc_abstract/ToBtcAbs.js +769 -769
  64. package/dist/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.d.ts +29 -29
  65. package/dist/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.js +67 -67
  66. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.d.ts +178 -178
  67. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.js +912 -912
  68. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.d.ts +25 -25
  69. package/dist/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.js +61 -61
  70. package/dist/swaps/spv_vault_swap/SpvVault.d.ts +45 -45
  71. package/dist/swaps/spv_vault_swap/SpvVault.js +148 -148
  72. package/dist/swaps/spv_vault_swap/SpvVaultSwap.d.ts +71 -71
  73. package/dist/swaps/spv_vault_swap/SpvVaultSwap.js +165 -165
  74. package/dist/swaps/spv_vault_swap/SpvVaultSwapHandler.d.ts +72 -72
  75. package/dist/swaps/spv_vault_swap/SpvVaultSwapHandler.js +710 -710
  76. package/dist/swaps/spv_vault_swap/SpvVaults.d.ts +70 -70
  77. package/dist/swaps/spv_vault_swap/SpvVaults.js +554 -554
  78. package/dist/swaps/spv_vault_swap/StickyAddress.d.ts +6 -6
  79. package/dist/swaps/spv_vault_swap/StickyAddress.js +19 -19
  80. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrusted.d.ts +52 -52
  81. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrusted.js +677 -677
  82. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.d.ts +53 -53
  83. package/dist/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.js +121 -121
  84. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.d.ts +77 -77
  85. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.js +518 -518
  86. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.d.ts +35 -35
  87. package/dist/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.js +84 -84
  88. package/dist/utils/BitcoinUtils.d.ts +4 -4
  89. package/dist/utils/BitcoinUtils.js +61 -61
  90. package/dist/utils/Utils.d.ts +32 -32
  91. package/dist/utils/Utils.js +130 -130
  92. package/dist/utils/paramcoders/IParamReader.d.ts +5 -5
  93. package/dist/utils/paramcoders/IParamReader.js +2 -2
  94. package/dist/utils/paramcoders/IParamWriter.d.ts +4 -4
  95. package/dist/utils/paramcoders/IParamWriter.js +2 -2
  96. package/dist/utils/paramcoders/LegacyParamEncoder.d.ts +10 -10
  97. package/dist/utils/paramcoders/LegacyParamEncoder.js +22 -22
  98. package/dist/utils/paramcoders/ParamDecoder.d.ts +25 -25
  99. package/dist/utils/paramcoders/ParamDecoder.js +222 -222
  100. package/dist/utils/paramcoders/ParamEncoder.d.ts +9 -9
  101. package/dist/utils/paramcoders/ParamEncoder.js +22 -22
  102. package/dist/utils/paramcoders/SchemaVerifier.d.ts +21 -21
  103. package/dist/utils/paramcoders/SchemaVerifier.js +84 -84
  104. package/dist/utils/paramcoders/server/ServerParamDecoder.d.ts +8 -8
  105. package/dist/utils/paramcoders/server/ServerParamDecoder.js +107 -107
  106. package/dist/utils/paramcoders/server/ServerParamEncoder.d.ts +11 -11
  107. package/dist/utils/paramcoders/server/ServerParamEncoder.js +65 -65
  108. package/dist/wallets/IBitcoinWallet.d.ts +155 -155
  109. package/dist/wallets/IBitcoinWallet.js +100 -100
  110. package/dist/wallets/ILightningWallet.d.ts +137 -137
  111. package/dist/wallets/ILightningWallet.js +37 -37
  112. package/dist/wallets/ISpvVaultSigner.d.ts +7 -7
  113. package/dist/wallets/ISpvVaultSigner.js +2 -2
  114. package/package.json +37 -37
  115. package/src/fees/IBtcFeeEstimator.ts +6 -6
  116. package/src/index.ts +54 -54
  117. package/src/info/InfoHandler.ts +106 -106
  118. package/src/plugins/IPlugin.ts +196 -196
  119. package/src/plugins/PluginManager.ts +389 -389
  120. package/src/prices/BinanceSwapPrice.ts +101 -101
  121. package/src/prices/CoinGeckoSwapPrice.ts +75 -75
  122. package/src/prices/ISwapPrice.ts +88 -88
  123. package/src/prices/OKXSwapPrice.ts +101 -101
  124. package/src/storage/IIntermediaryStorage.ts +19 -19
  125. package/src/storagemanager/IntermediaryStorageManager.ts +118 -118
  126. package/src/storagemanager/StorageManager.ts +78 -78
  127. package/src/swaps/SwapHandler.ts +337 -337
  128. package/src/swaps/SwapHandlerSwap.ts +143 -143
  129. package/src/swaps/assertions/AmountAssertions.ts +97 -97
  130. package/src/swaps/assertions/FromBtcAmountAssertions.ts +257 -257
  131. package/src/swaps/assertions/LightningAssertions.ts +103 -103
  132. package/src/swaps/assertions/ToBtcAmountAssertions.ts +209 -209
  133. package/src/swaps/escrow/EscrowHandler.ts +172 -172
  134. package/src/swaps/escrow/EscrowHandlerSwap.ts +86 -86
  135. package/src/swaps/escrow/FromBtcBaseSwap.ts +38 -38
  136. package/src/swaps/escrow/FromBtcBaseSwapHandler.ts +286 -286
  137. package/src/swaps/escrow/ToBtcBaseSwap.ts +85 -85
  138. package/src/swaps/escrow/ToBtcBaseSwapHandler.ts +129 -129
  139. package/src/swaps/escrow/frombtc_abstract/FromBtcAbs.ts +468 -468
  140. package/src/swaps/escrow/frombtc_abstract/FromBtcSwapAbs.ts +65 -65
  141. package/src/swaps/escrow/frombtcln_abstract/FromBtcLnAbs.ts +900 -900
  142. package/src/swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs.ts +145 -145
  143. package/src/swaps/escrow/frombtcln_autoinit/FromBtcLnAuto.ts +892 -892
  144. package/src/swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap.ts +200 -200
  145. package/src/swaps/escrow/tobtc_abstract/ToBtcAbs.ts +947 -947
  146. package/src/swaps/escrow/tobtc_abstract/ToBtcSwapAbs.ts +112 -112
  147. package/src/swaps/escrow/tobtcln_abstract/ToBtcLnAbs.ts +1167 -1167
  148. package/src/swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs.ts +84 -84
  149. package/src/swaps/spv_vault_swap/SpvVault.ts +182 -182
  150. package/src/swaps/spv_vault_swap/SpvVaultSwap.ts +239 -239
  151. package/src/swaps/spv_vault_swap/SpvVaultSwapHandler.ts +897 -897
  152. package/src/swaps/spv_vault_swap/SpvVaults.ts +640 -640
  153. package/src/swaps/spv_vault_swap/StickyAddress.ts +20 -20
  154. package/src/swaps/trusted/frombtc_trusted/FromBtcTrusted.ts +782 -782
  155. package/src/swaps/trusted/frombtc_trusted/FromBtcTrustedSwap.ts +189 -189
  156. package/src/swaps/trusted/frombtcln_trusted/FromBtcLnTrusted.ts +622 -622
  157. package/src/swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap.ts +125 -125
  158. package/src/utils/BitcoinUtils.ts +59 -59
  159. package/src/utils/Utils.ts +152 -152
  160. package/src/utils/paramcoders/IParamReader.ts +7 -7
  161. package/src/utils/paramcoders/IParamWriter.ts +8 -8
  162. package/src/utils/paramcoders/LegacyParamEncoder.ts +27 -27
  163. package/src/utils/paramcoders/ParamDecoder.ts +218 -218
  164. package/src/utils/paramcoders/ParamEncoder.ts +29 -29
  165. package/src/utils/paramcoders/SchemaVerifier.ts +96 -96
  166. package/src/utils/paramcoders/server/ServerParamDecoder.ts +118 -118
  167. package/src/utils/paramcoders/server/ServerParamEncoder.ts +75 -75
  168. package/src/wallets/IBitcoinWallet.ts +246 -246
  169. package/src/wallets/ILightningWallet.ts +201 -201
  170. package/src/wallets/ISpvVaultSigner.ts +10 -10
@@ -1,137 +1,137 @@
1
- import { Command } from "@atomiqlabs/server-base";
2
- export type IncomingLightningNetworkPayment = {
3
- createdAt: number;
4
- confirmedAt: number;
5
- createdHeight: number;
6
- timeout: number;
7
- status: "held" | "canceled" | "confirmed";
8
- mtokens: bigint;
9
- };
10
- export type LightningNetworkInvoice = {
11
- id: string;
12
- request: string;
13
- secret?: string;
14
- cltvDelta: number;
15
- mtokens: bigint;
16
- createdAt: number;
17
- expiresAt: number;
18
- description: string;
19
- descriptionHash?: string;
20
- payments: IncomingLightningNetworkPayment[];
21
- status: "unpaid" | "held" | "canceled" | "confirmed";
22
- };
23
- export type OutgoingLightningNetworkPayment = {
24
- failedReason?: "insufficient_balance" | "invalid_payment" | "pathfinding_timeout" | "route_not_found";
25
- status: "confirmed" | "failed" | "pending";
26
- secret?: string;
27
- feeMtokens?: bigint;
28
- };
29
- export type LightningNetworkChannel = {
30
- id: string;
31
- capacity: bigint;
32
- isActive: boolean;
33
- peerPublicKey: string;
34
- localBalance: bigint;
35
- localReserve: bigint;
36
- remoteBalance: bigint;
37
- remoteReserve: bigint;
38
- unsettledBalance: bigint;
39
- transactionId: string;
40
- transactionVout: number;
41
- };
42
- export type OpenChannelRequest = {
43
- amountSats: bigint;
44
- peerPublicKey: string;
45
- peerAddress?: string;
46
- feeRate?: number;
47
- channelFees?: {
48
- feeRatePPM?: bigint;
49
- baseFeeMsat?: bigint;
50
- };
51
- private?: boolean;
52
- };
53
- export type CloseChannelRequest = {
54
- channelId: string;
55
- feeRate?: number;
56
- forceClose?: boolean;
57
- };
58
- export type InvoiceInit = {
59
- mtokens: bigint;
60
- descriptionHash?: string;
61
- description?: string;
62
- cltvDelta?: number;
63
- expiresAt?: number;
64
- };
65
- export type HodlInvoiceInit = {
66
- description: string;
67
- cltvDelta: number;
68
- expiresAt: number;
69
- id: string;
70
- mtokens: bigint;
71
- descriptionHash?: string;
72
- };
73
- export type LNRoutes = {
74
- publicKey: string;
75
- feeRate?: number;
76
- cltvDelta?: number;
77
- channel?: string;
78
- baseFeeMtokens?: bigint;
79
- }[][];
80
- export type ParsedPaymentRequest = {
81
- id: string;
82
- mtokens: bigint;
83
- expiryEpochMillis: number;
84
- destination: string;
85
- cltvDelta: number;
86
- description: string;
87
- routes: LNRoutes;
88
- };
89
- export type LightningPaymentInit = {
90
- request: string;
91
- maxFeeMtokens?: bigint;
92
- maxTimeoutHeight?: number;
93
- };
94
- export type LightningBalanceResponse = {
95
- localBalance: bigint;
96
- remoteBalance: bigint;
97
- unsettledBalance: bigint;
98
- };
99
- export type ProbeAndRouteInit = {
100
- request: string;
101
- amountMtokens: bigint;
102
- maxFeeMtokens: bigint;
103
- maxTimeoutHeight: number;
104
- };
105
- export type ProbeAndRouteResponse = {
106
- confidence: number;
107
- feeMtokens: bigint;
108
- destination: string;
109
- privateRoutes: LNRoutes;
110
- };
111
- export declare function routesMatch(routesA: LNRoutes, routesB: LNRoutes): boolean;
112
- export interface ILightningWallet {
113
- init(): Promise<void>;
114
- isReady(): boolean;
115
- getStatus(): string;
116
- getStatusInfo(): Promise<Record<string, string>>;
117
- getCommands(): Command<any>[];
118
- createInvoice(init: InvoiceInit): Promise<LightningNetworkInvoice>;
119
- createHodlInvoice(init: HodlInvoiceInit): Promise<LightningNetworkInvoice>;
120
- getInvoice(paymentHash: string): Promise<LightningNetworkInvoice | null>;
121
- cancelHodlInvoice(paymentHash: string): Promise<void>;
122
- settleHodlInvoice(secret: string): Promise<void>;
123
- waitForInvoice(paymentHash: string, abortSignal?: AbortSignal): Promise<LightningNetworkInvoice>;
124
- pay(init: LightningPaymentInit): Promise<void>;
125
- getPayment(paymentHash: string): Promise<OutgoingLightningNetworkPayment | null>;
126
- waitForPayment(paymentHash: string, abortSignal?: AbortSignal): Promise<OutgoingLightningNetworkPayment>;
127
- probe(init: ProbeAndRouteInit): Promise<ProbeAndRouteResponse | null>;
128
- route(init: ProbeAndRouteInit): Promise<ProbeAndRouteResponse | null>;
129
- parsePaymentRequest(request: string): Promise<ParsedPaymentRequest>;
130
- getBlockheight(): Promise<number>;
131
- getChannels(activeOnly?: boolean): Promise<LightningNetworkChannel[]>;
132
- getPendingChannels(): Promise<LightningNetworkChannel[]>;
133
- openChannel(req: OpenChannelRequest): Promise<LightningNetworkChannel>;
134
- closeChannel(req: CloseChannelRequest): Promise<string>;
135
- getLightningBalance(): Promise<LightningBalanceResponse>;
136
- getIdentityPublicKey(): Promise<string>;
137
- }
1
+ import { Command } from "@atomiqlabs/server-base";
2
+ export type IncomingLightningNetworkPayment = {
3
+ createdAt: number;
4
+ confirmedAt: number;
5
+ createdHeight: number;
6
+ timeout: number;
7
+ status: "held" | "canceled" | "confirmed";
8
+ mtokens: bigint;
9
+ };
10
+ export type LightningNetworkInvoice = {
11
+ id: string;
12
+ request: string;
13
+ secret?: string;
14
+ cltvDelta: number;
15
+ mtokens: bigint;
16
+ createdAt: number;
17
+ expiresAt: number;
18
+ description: string;
19
+ descriptionHash?: string;
20
+ payments: IncomingLightningNetworkPayment[];
21
+ status: "unpaid" | "held" | "canceled" | "confirmed";
22
+ };
23
+ export type OutgoingLightningNetworkPayment = {
24
+ failedReason?: "insufficient_balance" | "invalid_payment" | "pathfinding_timeout" | "route_not_found";
25
+ status: "confirmed" | "failed" | "pending";
26
+ secret?: string;
27
+ feeMtokens?: bigint;
28
+ };
29
+ export type LightningNetworkChannel = {
30
+ id: string;
31
+ capacity: bigint;
32
+ isActive: boolean;
33
+ peerPublicKey: string;
34
+ localBalance: bigint;
35
+ localReserve: bigint;
36
+ remoteBalance: bigint;
37
+ remoteReserve: bigint;
38
+ unsettledBalance: bigint;
39
+ transactionId: string;
40
+ transactionVout: number;
41
+ };
42
+ export type OpenChannelRequest = {
43
+ amountSats: bigint;
44
+ peerPublicKey: string;
45
+ peerAddress?: string;
46
+ feeRate?: number;
47
+ channelFees?: {
48
+ feeRatePPM?: bigint;
49
+ baseFeeMsat?: bigint;
50
+ };
51
+ private?: boolean;
52
+ };
53
+ export type CloseChannelRequest = {
54
+ channelId: string;
55
+ feeRate?: number;
56
+ forceClose?: boolean;
57
+ };
58
+ export type InvoiceInit = {
59
+ mtokens: bigint;
60
+ descriptionHash?: string;
61
+ description?: string;
62
+ cltvDelta?: number;
63
+ expiresAt?: number;
64
+ };
65
+ export type HodlInvoiceInit = {
66
+ description: string;
67
+ cltvDelta: number;
68
+ expiresAt: number;
69
+ id: string;
70
+ mtokens: bigint;
71
+ descriptionHash?: string;
72
+ };
73
+ export type LNRoutes = {
74
+ publicKey: string;
75
+ feeRate?: number;
76
+ cltvDelta?: number;
77
+ channel?: string;
78
+ baseFeeMtokens?: bigint;
79
+ }[][];
80
+ export type ParsedPaymentRequest = {
81
+ id: string;
82
+ mtokens: bigint;
83
+ expiryEpochMillis: number;
84
+ destination: string;
85
+ cltvDelta: number;
86
+ description: string;
87
+ routes: LNRoutes;
88
+ };
89
+ export type LightningPaymentInit = {
90
+ request: string;
91
+ maxFeeMtokens?: bigint;
92
+ maxTimeoutHeight?: number;
93
+ };
94
+ export type LightningBalanceResponse = {
95
+ localBalance: bigint;
96
+ remoteBalance: bigint;
97
+ unsettledBalance: bigint;
98
+ };
99
+ export type ProbeAndRouteInit = {
100
+ request: string;
101
+ amountMtokens: bigint;
102
+ maxFeeMtokens: bigint;
103
+ maxTimeoutHeight: number;
104
+ };
105
+ export type ProbeAndRouteResponse = {
106
+ confidence: number;
107
+ feeMtokens: bigint;
108
+ destination: string;
109
+ privateRoutes: LNRoutes;
110
+ };
111
+ export declare function routesMatch(routesA: LNRoutes, routesB: LNRoutes): boolean;
112
+ export interface ILightningWallet {
113
+ init(): Promise<void>;
114
+ isReady(): boolean;
115
+ getStatus(): string;
116
+ getStatusInfo(): Promise<Record<string, string>>;
117
+ getCommands(): Command<any>[];
118
+ createInvoice(init: InvoiceInit): Promise<LightningNetworkInvoice>;
119
+ createHodlInvoice(init: HodlInvoiceInit): Promise<LightningNetworkInvoice>;
120
+ getInvoice(paymentHash: string): Promise<LightningNetworkInvoice | null>;
121
+ cancelHodlInvoice(paymentHash: string): Promise<void>;
122
+ settleHodlInvoice(secret: string): Promise<void>;
123
+ waitForInvoice(paymentHash: string, abortSignal?: AbortSignal): Promise<LightningNetworkInvoice>;
124
+ pay(init: LightningPaymentInit): Promise<void>;
125
+ getPayment(paymentHash: string): Promise<OutgoingLightningNetworkPayment | null>;
126
+ waitForPayment(paymentHash: string, abortSignal?: AbortSignal): Promise<OutgoingLightningNetworkPayment>;
127
+ probe(init: ProbeAndRouteInit): Promise<ProbeAndRouteResponse | null>;
128
+ route(init: ProbeAndRouteInit): Promise<ProbeAndRouteResponse | null>;
129
+ parsePaymentRequest(request: string): Promise<ParsedPaymentRequest>;
130
+ getBlockheight(): Promise<number>;
131
+ getChannels(activeOnly?: boolean): Promise<LightningNetworkChannel[]>;
132
+ getPendingChannels(): Promise<LightningNetworkChannel[]>;
133
+ openChannel(req: OpenChannelRequest): Promise<LightningNetworkChannel>;
134
+ closeChannel(req: CloseChannelRequest): Promise<string>;
135
+ getLightningBalance(): Promise<LightningBalanceResponse>;
136
+ getIdentityPublicKey(): Promise<string>;
137
+ }
@@ -1,37 +1,37 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.routesMatch = void 0;
4
- function routesMatch(routesA, routesB) {
5
- if (routesA === routesB)
6
- return true;
7
- if (routesA == null || routesB == null) {
8
- return false;
9
- }
10
- if (routesA.length !== routesB.length)
11
- return false;
12
- for (let i = 0; i < routesA.length; i++) {
13
- if (routesA[i] === routesB[i])
14
- continue;
15
- if (routesA[i] == null || routesB[i] == null) {
16
- return false;
17
- }
18
- if (routesA[i].length !== routesB[i].length)
19
- return false;
20
- for (let e = 0; e < routesA[i].length; e++) {
21
- if (routesA[i][e] === routesB[i][e])
22
- continue;
23
- if (routesA[i][e] == null || routesB[i][e] == null) {
24
- return false;
25
- }
26
- if (routesA[i][e].publicKey !== routesB[i][e].publicKey ||
27
- routesA[i][e].baseFeeMtokens !== routesB[i][e].baseFeeMtokens ||
28
- routesA[i][e].channel !== routesB[i][e].channel ||
29
- routesA[i][e].cltvDelta !== routesB[i][e].cltvDelta ||
30
- routesA[i][e].feeRate !== routesB[i][e].feeRate) {
31
- return false;
32
- }
33
- }
34
- }
35
- return true;
36
- }
37
- exports.routesMatch = routesMatch;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.routesMatch = void 0;
4
+ function routesMatch(routesA, routesB) {
5
+ if (routesA === routesB)
6
+ return true;
7
+ if (routesA == null || routesB == null) {
8
+ return false;
9
+ }
10
+ if (routesA.length !== routesB.length)
11
+ return false;
12
+ for (let i = 0; i < routesA.length; i++) {
13
+ if (routesA[i] === routesB[i])
14
+ continue;
15
+ if (routesA[i] == null || routesB[i] == null) {
16
+ return false;
17
+ }
18
+ if (routesA[i].length !== routesB[i].length)
19
+ return false;
20
+ for (let e = 0; e < routesA[i].length; e++) {
21
+ if (routesA[i][e] === routesB[i][e])
22
+ continue;
23
+ if (routesA[i][e] == null || routesB[i][e] == null) {
24
+ return false;
25
+ }
26
+ if (routesA[i][e].publicKey !== routesB[i][e].publicKey ||
27
+ routesA[i][e].baseFeeMtokens !== routesB[i][e].baseFeeMtokens ||
28
+ routesA[i][e].channel !== routesB[i][e].channel ||
29
+ routesA[i][e].cltvDelta !== routesB[i][e].cltvDelta ||
30
+ routesA[i][e].feeRate !== routesB[i][e].feeRate) {
31
+ return false;
32
+ }
33
+ }
34
+ }
35
+ return true;
36
+ }
37
+ exports.routesMatch = routesMatch;
@@ -1,7 +1,7 @@
1
- import { Transaction } from "@scure/btc-signer";
2
- export interface ISpvVaultSigner {
3
- init(): Promise<void>;
4
- getAddressType(): "p2wpkh" | "p2tr";
5
- getAddress(chainId: string, vaultId: bigint): Promise<string>;
6
- signPsbt(chainId: string, vaultId: bigint, psbt: Transaction, inputs: number[]): Promise<Transaction>;
7
- }
1
+ import { Transaction } from "@scure/btc-signer";
2
+ export interface ISpvVaultSigner {
3
+ init(): Promise<void>;
4
+ getAddressType(): "p2wpkh" | "p2tr";
5
+ getAddress(chainId: string, vaultId: bigint): Promise<string>;
6
+ signPsbt(chainId: string, vaultId: bigint, psbt: Transaction, inputs: number[]): Promise<Transaction>;
7
+ }
@@ -1,2 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,37 +1,37 @@
1
- {
2
- "name": "@atomiqlabs/lp-lib",
3
- "version": "17.5.1",
4
- "description": "Main functionality implementation for atomiq LP node",
5
- "main": "./dist/index.js",
6
- "types:": "./dist/index.d.ts",
7
- "scripts": {
8
- "build": "npx -y -p typescript@4.9 tsc",
9
- "test": "echo \"Error: no test specified\" && exit 1"
10
- },
11
- "files": [
12
- "/dist",
13
- "/src"
14
- ],
15
- "keywords": [
16
- "Solana",
17
- "Bitcoin",
18
- "Cross-chain",
19
- "Cryptocurrency",
20
- "Bridge",
21
- "Trustless"
22
- ],
23
- "author": "adambor",
24
- "license": "ISC",
25
- "dependencies": {
26
- "@atomiqlabs/base": "^13.5.0",
27
- "@atomiqlabs/server-base": "^3.0.0",
28
- "@scure/btc-signer": "1.6.0",
29
- "express": "4.21.1",
30
- "promise-queue-ts": "1.0.0"
31
- },
32
- "devDependencies": {
33
- "@types/express": "4.17.21",
34
- "@types/node": "18.15.11",
35
- "typescript": "4.9.5"
36
- }
37
- }
1
+ {
2
+ "name": "@atomiqlabs/lp-lib",
3
+ "version": "17.5.2",
4
+ "description": "Main functionality implementation for atomiq LP node",
5
+ "main": "./dist/index.js",
6
+ "types:": "./dist/index.d.ts",
7
+ "scripts": {
8
+ "build": "npx -y -p typescript@4.9 tsc",
9
+ "test": "echo \"Error: no test specified\" && exit 1"
10
+ },
11
+ "files": [
12
+ "/dist",
13
+ "/src"
14
+ ],
15
+ "keywords": [
16
+ "Solana",
17
+ "Bitcoin",
18
+ "Cross-chain",
19
+ "Cryptocurrency",
20
+ "Bridge",
21
+ "Trustless"
22
+ ],
23
+ "author": "adambor",
24
+ "license": "ISC",
25
+ "dependencies": {
26
+ "@atomiqlabs/base": "^13.5.0",
27
+ "@atomiqlabs/server-base": "^3.0.0",
28
+ "@scure/btc-signer": "1.6.0",
29
+ "express": "4.21.1",
30
+ "promise-queue-ts": "1.0.0"
31
+ },
32
+ "devDependencies": {
33
+ "@types/express": "4.17.21",
34
+ "@types/node": "18.15.11",
35
+ "typescript": "4.9.5"
36
+ }
37
+ }
@@ -1,7 +1,7 @@
1
-
2
- export interface IBtcFeeEstimator {
3
-
4
- //Returns estimated fee in sats/vB
5
- estimateFee(): Promise<number | null>;
6
-
1
+
2
+ export interface IBtcFeeEstimator {
3
+
4
+ //Returns estimated fee in sats/vB
5
+ estimateFee(): Promise<number | null>;
6
+
7
7
  }
package/src/index.ts CHANGED
@@ -1,54 +1,54 @@
1
- export * from "./info/InfoHandler";
2
-
3
- export * from "./prices/CoinGeckoSwapPrice";
4
- export * from "./prices/BinanceSwapPrice";
5
- export * from "./prices/OKXSwapPrice";
6
-
7
- export * from "./storage/IIntermediaryStorage";
8
-
9
- export * from "./storagemanager/StorageManager";
10
- export * from "./storagemanager/IntermediaryStorageManager";
11
-
12
- export * from "./swaps/escrow/frombtc_abstract/FromBtcAbs";
13
- export * from "./swaps/escrow/frombtc_abstract/FromBtcSwapAbs";
14
- export * from "./swaps/escrow/frombtcln_abstract/FromBtcLnAbs";
15
- export * from "./swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs";
16
- export * from "./swaps/escrow/frombtcln_autoinit/FromBtcLnAuto";
17
- export * from "./swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap";
18
- export * from "./swaps/escrow/tobtc_abstract/ToBtcAbs";
19
- export * from "./swaps/escrow/tobtc_abstract/ToBtcSwapAbs";
20
- export * from "./swaps/escrow/tobtcln_abstract/ToBtcLnAbs";
21
- export * from "./swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs";
22
-
23
- export * from "./swaps/trusted/frombtc_trusted/FromBtcTrusted";
24
- export * from "./swaps/trusted/frombtc_trusted/FromBtcTrustedSwap";
25
- export * from "./swaps/trusted/frombtcln_trusted/FromBtcLnTrusted";
26
- export * from "./swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap";
27
-
28
- export * from "./prices/ISwapPrice";
29
- export * from "./swaps/SwapHandler";
30
- export * from "./swaps/SwapHandlerSwap";
31
-
32
- export * from "./plugins/PluginManager";
33
- export * from "./plugins/IPlugin";
34
-
35
- export * from "./fees/IBtcFeeEstimator";
36
-
37
- export * from "./utils/paramcoders/IParamReader";
38
- export * from "./utils/paramcoders/IParamWriter";
39
- export * from "./utils/paramcoders/LegacyParamEncoder";
40
- export * from "./utils/paramcoders/ParamDecoder";
41
- export * from "./utils/paramcoders/ParamEncoder";
42
- export * from "./utils/paramcoders/SchemaVerifier";
43
- export * from "./utils/paramcoders/server/ServerParamDecoder";
44
- export * from "./utils/paramcoders/server/ServerParamEncoder";
45
-
46
- export * from "./wallets/IBitcoinWallet";
47
- export * from "./wallets/ILightningWallet";
48
- export * from "./wallets/ISpvVaultSigner";
49
-
50
- export * from "./swaps/spv_vault_swap/SpvVaults";
51
- export * from "./swaps/spv_vault_swap/SpvVault";
52
- export * from "./swaps/spv_vault_swap/StickyAddress";
53
- export * from "./swaps/spv_vault_swap/SpvVaultSwap";
54
- export * from "./swaps/spv_vault_swap/SpvVaultSwapHandler";
1
+ export * from "./info/InfoHandler";
2
+
3
+ export * from "./prices/CoinGeckoSwapPrice";
4
+ export * from "./prices/BinanceSwapPrice";
5
+ export * from "./prices/OKXSwapPrice";
6
+
7
+ export * from "./storage/IIntermediaryStorage";
8
+
9
+ export * from "./storagemanager/StorageManager";
10
+ export * from "./storagemanager/IntermediaryStorageManager";
11
+
12
+ export * from "./swaps/escrow/frombtc_abstract/FromBtcAbs";
13
+ export * from "./swaps/escrow/frombtc_abstract/FromBtcSwapAbs";
14
+ export * from "./swaps/escrow/frombtcln_abstract/FromBtcLnAbs";
15
+ export * from "./swaps/escrow/frombtcln_abstract/FromBtcLnSwapAbs";
16
+ export * from "./swaps/escrow/frombtcln_autoinit/FromBtcLnAuto";
17
+ export * from "./swaps/escrow/frombtcln_autoinit/FromBtcLnAutoSwap";
18
+ export * from "./swaps/escrow/tobtc_abstract/ToBtcAbs";
19
+ export * from "./swaps/escrow/tobtc_abstract/ToBtcSwapAbs";
20
+ export * from "./swaps/escrow/tobtcln_abstract/ToBtcLnAbs";
21
+ export * from "./swaps/escrow/tobtcln_abstract/ToBtcLnSwapAbs";
22
+
23
+ export * from "./swaps/trusted/frombtc_trusted/FromBtcTrusted";
24
+ export * from "./swaps/trusted/frombtc_trusted/FromBtcTrustedSwap";
25
+ export * from "./swaps/trusted/frombtcln_trusted/FromBtcLnTrusted";
26
+ export * from "./swaps/trusted/frombtcln_trusted/FromBtcLnTrustedSwap";
27
+
28
+ export * from "./prices/ISwapPrice";
29
+ export * from "./swaps/SwapHandler";
30
+ export * from "./swaps/SwapHandlerSwap";
31
+
32
+ export * from "./plugins/PluginManager";
33
+ export * from "./plugins/IPlugin";
34
+
35
+ export * from "./fees/IBtcFeeEstimator";
36
+
37
+ export * from "./utils/paramcoders/IParamReader";
38
+ export * from "./utils/paramcoders/IParamWriter";
39
+ export * from "./utils/paramcoders/LegacyParamEncoder";
40
+ export * from "./utils/paramcoders/ParamDecoder";
41
+ export * from "./utils/paramcoders/ParamEncoder";
42
+ export * from "./utils/paramcoders/SchemaVerifier";
43
+ export * from "./utils/paramcoders/server/ServerParamDecoder";
44
+ export * from "./utils/paramcoders/server/ServerParamEncoder";
45
+
46
+ export * from "./wallets/IBitcoinWallet";
47
+ export * from "./wallets/ILightningWallet";
48
+ export * from "./wallets/ISpvVaultSigner";
49
+
50
+ export * from "./swaps/spv_vault_swap/SpvVaults";
51
+ export * from "./swaps/spv_vault_swap/SpvVault";
52
+ export * from "./swaps/spv_vault_swap/StickyAddress";
53
+ export * from "./swaps/spv_vault_swap/SpvVaultSwap";
54
+ export * from "./swaps/spv_vault_swap/SpvVaultSwapHandler";