@atomiqlabs/chain-solana 13.5.13 → 13.5.14

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 (131) hide show
  1. package/LICENSE +201 -201
  2. package/README.md +73 -73
  3. package/dist/index.d.ts +81 -81
  4. package/dist/index.js +102 -102
  5. package/dist/node/index.d.ts +9 -9
  6. package/dist/node/index.js +13 -13
  7. package/dist/solana/SolanaChainType.d.ts +15 -15
  8. package/dist/solana/SolanaChainType.js +2 -2
  9. package/dist/solana/SolanaChains.d.ts +12 -12
  10. package/dist/solana/SolanaChains.js +45 -45
  11. package/dist/solana/SolanaInitializer.d.ts +94 -94
  12. package/dist/solana/SolanaInitializer.js +174 -174
  13. package/dist/solana/btcrelay/SolanaBtcRelay.d.ts +222 -222
  14. package/dist/solana/btcrelay/SolanaBtcRelay.js +455 -455
  15. package/dist/solana/btcrelay/headers/SolanaBtcHeader.d.ts +84 -84
  16. package/dist/solana/btcrelay/headers/SolanaBtcHeader.js +70 -70
  17. package/dist/solana/btcrelay/headers/SolanaBtcStoredHeader.d.ts +92 -92
  18. package/dist/solana/btcrelay/headers/SolanaBtcStoredHeader.js +109 -109
  19. package/dist/solana/btcrelay/program/programIdl.json +671 -671
  20. package/dist/solana/chain/SolanaAction.d.ts +26 -26
  21. package/dist/solana/chain/SolanaAction.js +87 -87
  22. package/dist/solana/chain/SolanaChainInterface.d.ts +224 -224
  23. package/dist/solana/chain/SolanaChainInterface.js +275 -275
  24. package/dist/solana/chain/SolanaModule.d.ts +14 -14
  25. package/dist/solana/chain/SolanaModule.js +13 -13
  26. package/dist/solana/chain/modules/SolanaAddresses.d.ts +8 -8
  27. package/dist/solana/chain/modules/SolanaAddresses.js +22 -22
  28. package/dist/solana/chain/modules/SolanaBlocks.d.ts +32 -32
  29. package/dist/solana/chain/modules/SolanaBlocks.js +78 -78
  30. package/dist/solana/chain/modules/SolanaEvents.d.ts +68 -68
  31. package/dist/solana/chain/modules/SolanaEvents.js +238 -238
  32. package/dist/solana/chain/modules/SolanaFees.d.ts +189 -189
  33. package/dist/solana/chain/modules/SolanaFees.js +434 -434
  34. package/dist/solana/chain/modules/SolanaSignatures.d.ts +24 -24
  35. package/dist/solana/chain/modules/SolanaSignatures.js +39 -39
  36. package/dist/solana/chain/modules/SolanaSlots.d.ts +33 -33
  37. package/dist/solana/chain/modules/SolanaSlots.js +72 -72
  38. package/dist/solana/chain/modules/SolanaTokens.d.ts +123 -123
  39. package/dist/solana/chain/modules/SolanaTokens.js +242 -242
  40. package/dist/solana/chain/modules/SolanaTransactions.d.ts +149 -149
  41. package/dist/solana/chain/modules/SolanaTransactions.js +445 -445
  42. package/dist/solana/connection/ConnectionWithRetries.d.ts +35 -35
  43. package/dist/solana/connection/ConnectionWithRetries.js +86 -71
  44. package/dist/solana/events/SolanaChainEvents.d.ts +45 -45
  45. package/dist/solana/events/SolanaChainEvents.js +108 -108
  46. package/dist/solana/events/SolanaChainEventsBrowser.d.ts +205 -205
  47. package/dist/solana/events/SolanaChainEventsBrowser.js +404 -404
  48. package/dist/solana/program/SolanaProgramBase.d.ts +73 -73
  49. package/dist/solana/program/SolanaProgramBase.js +54 -54
  50. package/dist/solana/program/SolanaProgramModule.d.ts +8 -8
  51. package/dist/solana/program/SolanaProgramModule.js +11 -11
  52. package/dist/solana/program/modules/SolanaProgramEvents.d.ts +53 -53
  53. package/dist/solana/program/modules/SolanaProgramEvents.js +117 -117
  54. package/dist/solana/swaps/SolanaSwapData.d.ts +333 -333
  55. package/dist/solana/swaps/SolanaSwapData.js +535 -535
  56. package/dist/solana/swaps/SolanaSwapModule.d.ts +11 -11
  57. package/dist/solana/swaps/SolanaSwapModule.js +12 -12
  58. package/dist/solana/swaps/SolanaSwapProgram.d.ts +376 -376
  59. package/dist/solana/swaps/SolanaSwapProgram.js +769 -769
  60. package/dist/solana/swaps/SwapTypeEnum.d.ts +11 -11
  61. package/dist/solana/swaps/SwapTypeEnum.js +43 -43
  62. package/dist/solana/swaps/modules/SolanaDataAccount.d.ts +95 -95
  63. package/dist/solana/swaps/modules/SolanaDataAccount.js +232 -232
  64. package/dist/solana/swaps/modules/SolanaLpVault.d.ts +69 -69
  65. package/dist/solana/swaps/modules/SolanaLpVault.js +171 -171
  66. package/dist/solana/swaps/modules/SwapClaim.d.ts +126 -126
  67. package/dist/solana/swaps/modules/SwapClaim.js +294 -294
  68. package/dist/solana/swaps/modules/SwapInit.d.ts +213 -213
  69. package/dist/solana/swaps/modules/SwapInit.js +658 -658
  70. package/dist/solana/swaps/modules/SwapRefund.d.ts +87 -87
  71. package/dist/solana/swaps/modules/SwapRefund.js +293 -293
  72. package/dist/solana/swaps/programIdl.json +945 -945
  73. package/dist/solana/swaps/programTypes.d.ts +943 -943
  74. package/dist/solana/swaps/programTypes.js +945 -945
  75. package/dist/solana/swaps/v1/programIdl.json +945 -945
  76. package/dist/solana/swaps/v1/programTypes.d.ts +943 -943
  77. package/dist/solana/swaps/v1/programTypes.js +945 -945
  78. package/dist/solana/swaps/v2/programIdl.json +952 -952
  79. package/dist/solana/swaps/v2/programTypes.d.ts +950 -950
  80. package/dist/solana/swaps/v2/programTypes.js +952 -952
  81. package/dist/solana/wallet/SolanaKeypairWallet.d.ts +29 -29
  82. package/dist/solana/wallet/SolanaKeypairWallet.js +50 -50
  83. package/dist/solana/wallet/SolanaSigner.d.ts +30 -30
  84. package/dist/solana/wallet/SolanaSigner.js +30 -30
  85. package/dist/utils/Utils.d.ts +58 -58
  86. package/dist/utils/Utils.js +170 -170
  87. package/node/index.d.ts +1 -1
  88. package/node/index.js +3 -3
  89. package/package.json +46 -46
  90. package/src/index.ts +87 -87
  91. package/src/node/index.ts +9 -9
  92. package/src/solana/SolanaChainType.ts +32 -32
  93. package/src/solana/SolanaChains.ts +46 -46
  94. package/src/solana/SolanaInitializer.ts +278 -278
  95. package/src/solana/btcrelay/SolanaBtcRelay.ts +615 -615
  96. package/src/solana/btcrelay/headers/SolanaBtcHeader.ts +116 -116
  97. package/src/solana/btcrelay/headers/SolanaBtcStoredHeader.ts +148 -148
  98. package/src/solana/btcrelay/program/programIdl.json +670 -670
  99. package/src/solana/chain/SolanaAction.ts +109 -109
  100. package/src/solana/chain/SolanaChainInterface.ts +404 -404
  101. package/src/solana/chain/SolanaModule.ts +20 -20
  102. package/src/solana/chain/modules/SolanaAddresses.ts +20 -20
  103. package/src/solana/chain/modules/SolanaBlocks.ts +89 -89
  104. package/src/solana/chain/modules/SolanaEvents.ts +271 -271
  105. package/src/solana/chain/modules/SolanaFees.ts +522 -522
  106. package/src/solana/chain/modules/SolanaSignatures.ts +39 -39
  107. package/src/solana/chain/modules/SolanaSlots.ts +85 -85
  108. package/src/solana/chain/modules/SolanaTokens.ts +300 -300
  109. package/src/solana/chain/modules/SolanaTransactions.ts +503 -503
  110. package/src/solana/connection/ConnectionWithRetries.ts +113 -96
  111. package/src/solana/events/SolanaChainEvents.ts +127 -127
  112. package/src/solana/events/SolanaChainEventsBrowser.ts +495 -495
  113. package/src/solana/program/SolanaProgramBase.ts +119 -119
  114. package/src/solana/program/SolanaProgramModule.ts +15 -15
  115. package/src/solana/program/modules/SolanaProgramEvents.ts +157 -157
  116. package/src/solana/swaps/SolanaSwapData.ts +735 -735
  117. package/src/solana/swaps/SolanaSwapModule.ts +19 -19
  118. package/src/solana/swaps/SolanaSwapProgram.ts +1074 -1074
  119. package/src/solana/swaps/SwapTypeEnum.ts +30 -30
  120. package/src/solana/swaps/modules/SolanaDataAccount.ts +302 -302
  121. package/src/solana/swaps/modules/SolanaLpVault.ts +208 -208
  122. package/src/solana/swaps/modules/SwapClaim.ts +387 -387
  123. package/src/solana/swaps/modules/SwapInit.ts +785 -785
  124. package/src/solana/swaps/modules/SwapRefund.ts +353 -353
  125. package/src/solana/swaps/v1/programIdl.json +944 -944
  126. package/src/solana/swaps/v1/programTypes.ts +1885 -1885
  127. package/src/solana/swaps/v2/programIdl.json +951 -951
  128. package/src/solana/swaps/v2/programTypes.ts +1899 -1899
  129. package/src/solana/wallet/SolanaKeypairWallet.ts +56 -56
  130. package/src/solana/wallet/SolanaSigner.ts +43 -43
  131. package/src/utils/Utils.ts +194 -194
@@ -1,213 +1,213 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- import { ParsedAccountsModeBlockResponse, PublicKey } from "@solana/web3.js";
4
- import { SolanaSwapData } from "../SolanaSwapData";
5
- import { SolanaSwapModule } from "../SolanaSwapModule";
6
- import { SolanaTx } from "../../chain/modules/SolanaTransactions";
7
- import { Buffer } from "buffer";
8
- import { SolanaSigner } from "../../wallet/SolanaSigner";
9
- export type SolanaPreFetchVerification = {
10
- latestSlot?: {
11
- slot: number;
12
- timestamp: number;
13
- };
14
- transactionSlot?: {
15
- slot: number;
16
- blockhash: string;
17
- };
18
- };
19
- export type SolanaPreFetchData = {
20
- block: ParsedAccountsModeBlockResponse;
21
- slot: number;
22
- timestamp: number;
23
- };
24
- export declare class SwapInit extends SolanaSwapModule {
25
- readonly SIGNATURE_SLOT_BUFFER = 20;
26
- readonly SIGNATURE_PREFETCH_DATA_VALIDITY = 5000;
27
- private static readonly CUCosts;
28
- /**
29
- * bare Init action based on the data passed in swapData
30
- *
31
- * @param sender
32
- * @param swapData
33
- * @param timeout
34
- * @private
35
- */
36
- private Init;
37
- /**
38
- * InitPayIn action which includes SOL to WSOL wrapping if indicated by the fee rate
39
- *
40
- * @param signer
41
- * @param swapData
42
- * @param timeout
43
- * @param feeRate
44
- * @private
45
- */
46
- private InitPayIn;
47
- /**
48
- * InitNotPayIn action with additional createAssociatedTokenAccountIdempotentInstruction instruction, such that
49
- * a recipient ATA is created if it doesn't exist
50
- *
51
- * @param sender
52
- * @param swapData
53
- * @param timeout
54
- * @private
55
- */
56
- private InitNotPayIn;
57
- private Wrap;
58
- private extractAtaDataFromFeeRate;
59
- /**
60
- * Checks whether a wrap instruction (SOL -> WSOL) should be a part of the signed init message
61
- *
62
- * @param swapData
63
- * @param feeRate
64
- * @private
65
- * @returns {boolean} returns true if wrap instruction should be added
66
- */
67
- private shouldWrapOnInit;
68
- /**
69
- * Returns the transaction to be signed as an initialization signature from the intermediary, also adds
70
- * SOL to WSOL wrapping if indicated by the fee rate
71
- *
72
- * @param swapData
73
- * @param timeout
74
- * @param feeRate
75
- * @private
76
- */
77
- private getTxToSign;
78
- /**
79
- * Returns auth prefix to be used with a specific swap, payIn=true & payIn=false use different prefixes (these
80
- * actually have no meaning for the smart contract/solana program in the Solana case)
81
- *
82
- * @param swapData
83
- * @private
84
- */
85
- private getAuthPrefix;
86
- /**
87
- * Returns "processed" slot required for signature validation, uses preFetchedData if provided & valid
88
- *
89
- * @param preFetchedData
90
- * @private
91
- */
92
- private getSlotForSignature;
93
- /**
94
- * Returns blockhash required for signature validation, uses preFetchedData if provided & valid
95
- *
96
- * @param txSlot
97
- * @param preFetchedData
98
- * @private
99
- */
100
- private getBlockhashForSignature;
101
- /**
102
- * Pre-fetches slot & block based on priorly received SolanaPreFetchData, such that it can later be used
103
- * by signature verification
104
- *
105
- * @param data
106
- */
107
- preFetchForInitSignatureVerification(data: SolanaPreFetchData): Promise<SolanaPreFetchVerification>;
108
- /**
109
- * Pre-fetches block data required for signing the init message by the LP, this can happen in parallel before
110
- * signing takes place making the quoting quicker
111
- */
112
- preFetchBlockDataForSignatures(): Promise<SolanaPreFetchData>;
113
- /**
114
- * Signs swap initialization authorization, using data from preFetchedBlockData if provided & still valid (subject
115
- * to SIGNATURE_PREFETCH_DATA_VALIDITY)
116
- *
117
- * @param signer
118
- * @param swapData
119
- * @param authorizationTimeout
120
- * @param feeRate
121
- * @param preFetchedBlockData
122
- * @public
123
- */
124
- signSwapInitialization(signer: SolanaSigner, swapData: SolanaSwapData, authorizationTimeout: number, preFetchedBlockData?: SolanaPreFetchData, feeRate?: string): Promise<{
125
- prefix: string;
126
- timeout: string;
127
- signature: string;
128
- }>;
129
- /**
130
- * Checks whether the provided signature data is valid, using preFetchedData if provided and still valid
131
- *
132
- * @param sender
133
- * @param swapData
134
- * @param timeout
135
- * @param prefix
136
- * @param signature
137
- * @param feeRate
138
- * @param preFetchedData
139
- * @public
140
- */
141
- isSignatureValid(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string | null, feeRate?: string, preFetchedData?: SolanaPreFetchVerification): Promise<Buffer>;
142
- /**
143
- * Gets expiry of the provided signature data, this is a minimum of slot expiry & swap signature expiry
144
- *
145
- * @param timeout
146
- * @param signature
147
- * @param preFetchedData
148
- * @public
149
- */
150
- getSignatureExpiry(timeout: string, signature: string | null, preFetchedData?: SolanaPreFetchVerification): Promise<number>;
151
- /**
152
- * Checks whether signature is expired for good (uses "finalized" slot)
153
- *
154
- * @param signature
155
- * @param timeout
156
- * @public
157
- */
158
- isSignatureExpired(signature: string | null, timeout: string): Promise<boolean>;
159
- /**
160
- * Creates init transaction (InitPayIn) with a valid signature from an LP, also adds a SOL to WSOL wrapping ix to
161
- * the init transaction (if indicated by the fee rate) or adds the wrapping in a separate transaction (if no
162
- * indication in the fee rate)
163
- *
164
- * @param sender
165
- * @param swapData swap to initialize
166
- * @param timeout init signature timeout
167
- * @param prefix init signature prefix
168
- * @param signature init signature
169
- * @param skipChecks whether to skip signature validity checks
170
- * @param feeRate fee rate to use for the transaction
171
- */
172
- txsInitPayIn(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string, skipChecks?: boolean, feeRate?: string): Promise<SolanaTx[]>;
173
- /**
174
- * Creates init transactions (InitNotPayIn) with a valid signature from an intermediary
175
- *
176
- * @param sender
177
- * @param swapData swap to initialize
178
- * @param timeout init signature timeout
179
- * @param prefix init signature prefix
180
- * @param signature init signature
181
- * @param skipChecks whether to skip signature validity checks
182
- * @param feeRate fee rate to use for the transaction
183
- */
184
- txsInit(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string, skipChecks?: boolean, feeRate?: string): Promise<SolanaTx[]>;
185
- /**
186
- * Returns the fee rate to be used for a specific init transaction, also adding indication whether the WSOL ATA
187
- * should be initialized in the init transaction and/or current balance in the WSOL ATA
188
- *
189
- * @param offerer
190
- * @param claimer
191
- * @param token
192
- * @param paymentHash
193
- */
194
- getInitPayInFeeRate(offerer?: PublicKey, claimer?: PublicKey, token?: PublicKey, paymentHash?: string): Promise<string>;
195
- /**
196
- * Returns the fee rate to be used for a specific init transaction
197
- *
198
- * @param offerer
199
- * @param claimer
200
- * @param token
201
- * @param paymentHash
202
- */
203
- getInitFeeRate(offerer?: PublicKey, claimer?: PublicKey, token?: PublicKey, paymentHash?: string): Promise<string>;
204
- /**
205
- * Get the estimated solana fee of the init transaction, this includes the required deposit for creating swap PDA
206
- * and also deposit for ATAs
207
- */
208
- getInitFee(swapData: SolanaSwapData, feeRate?: string): Promise<bigint>;
209
- /**
210
- * Get the estimated solana fee of the init transaction, without the required deposit for creating swap PDA
211
- */
212
- getRawInitFee(swapData: SolanaSwapData, feeRate?: string): Promise<bigint>;
213
- }
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { ParsedAccountsModeBlockResponse, PublicKey } from "@solana/web3.js";
4
+ import { SolanaSwapData } from "../SolanaSwapData";
5
+ import { SolanaSwapModule } from "../SolanaSwapModule";
6
+ import { SolanaTx } from "../../chain/modules/SolanaTransactions";
7
+ import { Buffer } from "buffer";
8
+ import { SolanaSigner } from "../../wallet/SolanaSigner";
9
+ export type SolanaPreFetchVerification = {
10
+ latestSlot?: {
11
+ slot: number;
12
+ timestamp: number;
13
+ };
14
+ transactionSlot?: {
15
+ slot: number;
16
+ blockhash: string;
17
+ };
18
+ };
19
+ export type SolanaPreFetchData = {
20
+ block: ParsedAccountsModeBlockResponse;
21
+ slot: number;
22
+ timestamp: number;
23
+ };
24
+ export declare class SwapInit extends SolanaSwapModule {
25
+ readonly SIGNATURE_SLOT_BUFFER = 20;
26
+ readonly SIGNATURE_PREFETCH_DATA_VALIDITY = 5000;
27
+ private static readonly CUCosts;
28
+ /**
29
+ * bare Init action based on the data passed in swapData
30
+ *
31
+ * @param sender
32
+ * @param swapData
33
+ * @param timeout
34
+ * @private
35
+ */
36
+ private Init;
37
+ /**
38
+ * InitPayIn action which includes SOL to WSOL wrapping if indicated by the fee rate
39
+ *
40
+ * @param signer
41
+ * @param swapData
42
+ * @param timeout
43
+ * @param feeRate
44
+ * @private
45
+ */
46
+ private InitPayIn;
47
+ /**
48
+ * InitNotPayIn action with additional createAssociatedTokenAccountIdempotentInstruction instruction, such that
49
+ * a recipient ATA is created if it doesn't exist
50
+ *
51
+ * @param sender
52
+ * @param swapData
53
+ * @param timeout
54
+ * @private
55
+ */
56
+ private InitNotPayIn;
57
+ private Wrap;
58
+ private extractAtaDataFromFeeRate;
59
+ /**
60
+ * Checks whether a wrap instruction (SOL -> WSOL) should be a part of the signed init message
61
+ *
62
+ * @param swapData
63
+ * @param feeRate
64
+ * @private
65
+ * @returns {boolean} returns true if wrap instruction should be added
66
+ */
67
+ private shouldWrapOnInit;
68
+ /**
69
+ * Returns the transaction to be signed as an initialization signature from the intermediary, also adds
70
+ * SOL to WSOL wrapping if indicated by the fee rate
71
+ *
72
+ * @param swapData
73
+ * @param timeout
74
+ * @param feeRate
75
+ * @private
76
+ */
77
+ private getTxToSign;
78
+ /**
79
+ * Returns auth prefix to be used with a specific swap, payIn=true & payIn=false use different prefixes (these
80
+ * actually have no meaning for the smart contract/solana program in the Solana case)
81
+ *
82
+ * @param swapData
83
+ * @private
84
+ */
85
+ private getAuthPrefix;
86
+ /**
87
+ * Returns "processed" slot required for signature validation, uses preFetchedData if provided & valid
88
+ *
89
+ * @param preFetchedData
90
+ * @private
91
+ */
92
+ private getSlotForSignature;
93
+ /**
94
+ * Returns blockhash required for signature validation, uses preFetchedData if provided & valid
95
+ *
96
+ * @param txSlot
97
+ * @param preFetchedData
98
+ * @private
99
+ */
100
+ private getBlockhashForSignature;
101
+ /**
102
+ * Pre-fetches slot & block based on priorly received SolanaPreFetchData, such that it can later be used
103
+ * by signature verification
104
+ *
105
+ * @param data
106
+ */
107
+ preFetchForInitSignatureVerification(data: SolanaPreFetchData): Promise<SolanaPreFetchVerification>;
108
+ /**
109
+ * Pre-fetches block data required for signing the init message by the LP, this can happen in parallel before
110
+ * signing takes place making the quoting quicker
111
+ */
112
+ preFetchBlockDataForSignatures(): Promise<SolanaPreFetchData>;
113
+ /**
114
+ * Signs swap initialization authorization, using data from preFetchedBlockData if provided & still valid (subject
115
+ * to SIGNATURE_PREFETCH_DATA_VALIDITY)
116
+ *
117
+ * @param signer
118
+ * @param swapData
119
+ * @param authorizationTimeout
120
+ * @param feeRate
121
+ * @param preFetchedBlockData
122
+ * @public
123
+ */
124
+ signSwapInitialization(signer: SolanaSigner, swapData: SolanaSwapData, authorizationTimeout: number, preFetchedBlockData?: SolanaPreFetchData, feeRate?: string): Promise<{
125
+ prefix: string;
126
+ timeout: string;
127
+ signature: string;
128
+ }>;
129
+ /**
130
+ * Checks whether the provided signature data is valid, using preFetchedData if provided and still valid
131
+ *
132
+ * @param sender
133
+ * @param swapData
134
+ * @param timeout
135
+ * @param prefix
136
+ * @param signature
137
+ * @param feeRate
138
+ * @param preFetchedData
139
+ * @public
140
+ */
141
+ isSignatureValid(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string | null, feeRate?: string, preFetchedData?: SolanaPreFetchVerification): Promise<Buffer>;
142
+ /**
143
+ * Gets expiry of the provided signature data, this is a minimum of slot expiry & swap signature expiry
144
+ *
145
+ * @param timeout
146
+ * @param signature
147
+ * @param preFetchedData
148
+ * @public
149
+ */
150
+ getSignatureExpiry(timeout: string, signature: string | null, preFetchedData?: SolanaPreFetchVerification): Promise<number>;
151
+ /**
152
+ * Checks whether signature is expired for good (uses "finalized" slot)
153
+ *
154
+ * @param signature
155
+ * @param timeout
156
+ * @public
157
+ */
158
+ isSignatureExpired(signature: string | null, timeout: string): Promise<boolean>;
159
+ /**
160
+ * Creates init transaction (InitPayIn) with a valid signature from an LP, also adds a SOL to WSOL wrapping ix to
161
+ * the init transaction (if indicated by the fee rate) or adds the wrapping in a separate transaction (if no
162
+ * indication in the fee rate)
163
+ *
164
+ * @param sender
165
+ * @param swapData swap to initialize
166
+ * @param timeout init signature timeout
167
+ * @param prefix init signature prefix
168
+ * @param signature init signature
169
+ * @param skipChecks whether to skip signature validity checks
170
+ * @param feeRate fee rate to use for the transaction
171
+ */
172
+ txsInitPayIn(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string, skipChecks?: boolean, feeRate?: string): Promise<SolanaTx[]>;
173
+ /**
174
+ * Creates init transactions (InitNotPayIn) with a valid signature from an intermediary
175
+ *
176
+ * @param sender
177
+ * @param swapData swap to initialize
178
+ * @param timeout init signature timeout
179
+ * @param prefix init signature prefix
180
+ * @param signature init signature
181
+ * @param skipChecks whether to skip signature validity checks
182
+ * @param feeRate fee rate to use for the transaction
183
+ */
184
+ txsInit(sender: PublicKey, swapData: SolanaSwapData, timeout: string, prefix: string, signature: string, skipChecks?: boolean, feeRate?: string): Promise<SolanaTx[]>;
185
+ /**
186
+ * Returns the fee rate to be used for a specific init transaction, also adding indication whether the WSOL ATA
187
+ * should be initialized in the init transaction and/or current balance in the WSOL ATA
188
+ *
189
+ * @param offerer
190
+ * @param claimer
191
+ * @param token
192
+ * @param paymentHash
193
+ */
194
+ getInitPayInFeeRate(offerer?: PublicKey, claimer?: PublicKey, token?: PublicKey, paymentHash?: string): Promise<string>;
195
+ /**
196
+ * Returns the fee rate to be used for a specific init transaction
197
+ *
198
+ * @param offerer
199
+ * @param claimer
200
+ * @param token
201
+ * @param paymentHash
202
+ */
203
+ getInitFeeRate(offerer?: PublicKey, claimer?: PublicKey, token?: PublicKey, paymentHash?: string): Promise<string>;
204
+ /**
205
+ * Get the estimated solana fee of the init transaction, this includes the required deposit for creating swap PDA
206
+ * and also deposit for ATAs
207
+ */
208
+ getInitFee(swapData: SolanaSwapData, feeRate?: string): Promise<bigint>;
209
+ /**
210
+ * Get the estimated solana fee of the init transaction, without the required deposit for creating swap PDA
211
+ */
212
+ getRawInitFee(swapData: SolanaSwapData, feeRate?: string): Promise<bigint>;
213
+ }