@swapkit/core 1.0.0-rc.16 → 1.0.0-rc.161

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 (45) hide show
  1. package/dist/index.js +217 -0
  2. package/dist/index.js.map +12 -0
  3. package/package.json +33 -47
  4. package/src/__tests__/helpers.test.ts +53 -0
  5. package/src/aggregator/contracts/avaxGeneric.ts +50 -50
  6. package/src/aggregator/contracts/avaxWoofi.ts +80 -80
  7. package/src/aggregator/contracts/bscGeneric.ts +59 -59
  8. package/src/aggregator/contracts/ethGeneric.ts +50 -50
  9. package/src/aggregator/contracts/index.ts +30 -28
  10. package/src/aggregator/contracts/pancakeV2.ts +80 -80
  11. package/src/aggregator/contracts/pangolin.ts +65 -65
  12. package/src/aggregator/contracts/routers/index.ts +58 -0
  13. package/src/aggregator/contracts/routers/kyber.ts +402 -0
  14. package/src/aggregator/contracts/routers/oneinch.ts +2188 -0
  15. package/src/aggregator/contracts/routers/pancakeswap.ts +340 -0
  16. package/src/aggregator/contracts/routers/pangolin.ts +340 -0
  17. package/src/aggregator/contracts/routers/sushiswap.ts +340 -0
  18. package/src/aggregator/contracts/routers/traderJoe.ts +340 -0
  19. package/src/aggregator/contracts/routers/uniswapv2.ts +340 -0
  20. package/src/aggregator/contracts/routers/uniswapv3.ts +254 -0
  21. package/src/aggregator/contracts/routers/woofi.ts +171 -0
  22. package/src/aggregator/contracts/sushiswap.ts +65 -65
  23. package/src/aggregator/contracts/traderJoe.ts +65 -65
  24. package/src/aggregator/contracts/uniswapV2.ts +65 -65
  25. package/src/aggregator/contracts/uniswapV2Leg.ts +70 -70
  26. package/src/aggregator/contracts/uniswapV3_100.ts +70 -70
  27. package/src/aggregator/contracts/uniswapV3_10000.ts +70 -70
  28. package/src/aggregator/contracts/uniswapV3_3000.ts +70 -70
  29. package/src/aggregator/contracts/uniswapV3_500.ts +70 -70
  30. package/src/aggregator/getSwapParams.ts +12 -12
  31. package/src/client.ts +279 -0
  32. package/src/helpers/explorerUrls.ts +38 -0
  33. package/src/index.ts +5 -4
  34. package/src/types.ts +43 -0
  35. package/LICENSE +0 -201
  36. package/dist/index-9e36735e.cjs +0 -1
  37. package/dist/index-cf1865cd.js +0 -649
  38. package/dist/index.cjs +0 -2
  39. package/dist/index.d.ts +0 -216
  40. package/dist/index.es.js +0 -4174
  41. package/src/client/__tests__/helpers.test.ts +0 -69
  42. package/src/client/explorerUrls.ts +0 -62
  43. package/src/client/index.ts +0 -699
  44. package/src/client/thornode.ts +0 -31
  45. package/src/client/types.ts +0 -103
@@ -0,0 +1,340 @@
1
+ export const pancakeSwapRouter = [
2
+ {
3
+ inputs: [
4
+ { internalType: "address", name: "_factory", type: "address" },
5
+ { internalType: "address", name: "_WETH", type: "address" },
6
+ ],
7
+ stateMutability: "nonpayable",
8
+ type: "constructor",
9
+ },
10
+ {
11
+ inputs: [],
12
+ name: "WETH",
13
+ outputs: [{ internalType: "address", name: "", type: "address" }],
14
+ stateMutability: "view",
15
+ type: "function",
16
+ },
17
+ {
18
+ inputs: [
19
+ { internalType: "address", name: "tokenA", type: "address" },
20
+ { internalType: "address", name: "tokenB", type: "address" },
21
+ { internalType: "uint256", name: "amountADesired", type: "uint256" },
22
+ { internalType: "uint256", name: "amountBDesired", type: "uint256" },
23
+ { internalType: "uint256", name: "amountAMin", type: "uint256" },
24
+ { internalType: "uint256", name: "amountBMin", type: "uint256" },
25
+ { internalType: "address", name: "to", type: "address" },
26
+ { internalType: "uint256", name: "deadline", type: "uint256" },
27
+ ],
28
+ name: "addLiquidity",
29
+ outputs: [
30
+ { internalType: "uint256", name: "amountA", type: "uint256" },
31
+ { internalType: "uint256", name: "amountB", type: "uint256" },
32
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
33
+ ],
34
+ stateMutability: "nonpayable",
35
+ type: "function",
36
+ },
37
+ {
38
+ inputs: [
39
+ { internalType: "address", name: "token", type: "address" },
40
+ { internalType: "uint256", name: "amountTokenDesired", type: "uint256" },
41
+ { internalType: "uint256", name: "amountTokenMin", type: "uint256" },
42
+ { internalType: "uint256", name: "amountETHMin", type: "uint256" },
43
+ { internalType: "address", name: "to", type: "address" },
44
+ { internalType: "uint256", name: "deadline", type: "uint256" },
45
+ ],
46
+ name: "addLiquidityETH",
47
+ outputs: [
48
+ { internalType: "uint256", name: "amountToken", type: "uint256" },
49
+ { internalType: "uint256", name: "amountETH", type: "uint256" },
50
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
51
+ ],
52
+ stateMutability: "payable",
53
+ type: "function",
54
+ },
55
+ {
56
+ inputs: [],
57
+ name: "factory",
58
+ outputs: [{ internalType: "address", name: "", type: "address" }],
59
+ stateMutability: "view",
60
+ type: "function",
61
+ },
62
+ {
63
+ inputs: [
64
+ { internalType: "uint256", name: "amountOut", type: "uint256" },
65
+ { internalType: "uint256", name: "reserveIn", type: "uint256" },
66
+ { internalType: "uint256", name: "reserveOut", type: "uint256" },
67
+ ],
68
+ name: "getAmountIn",
69
+ outputs: [{ internalType: "uint256", name: "amountIn", type: "uint256" }],
70
+ stateMutability: "pure",
71
+ type: "function",
72
+ },
73
+ {
74
+ inputs: [
75
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
76
+ { internalType: "uint256", name: "reserveIn", type: "uint256" },
77
+ { internalType: "uint256", name: "reserveOut", type: "uint256" },
78
+ ],
79
+ name: "getAmountOut",
80
+ outputs: [{ internalType: "uint256", name: "amountOut", type: "uint256" }],
81
+ stateMutability: "pure",
82
+ type: "function",
83
+ },
84
+ {
85
+ inputs: [
86
+ { internalType: "uint256", name: "amountOut", type: "uint256" },
87
+ { internalType: "address[]", name: "path", type: "address[]" },
88
+ ],
89
+ name: "getAmountsIn",
90
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
91
+ stateMutability: "view",
92
+ type: "function",
93
+ },
94
+ {
95
+ inputs: [
96
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
97
+ { internalType: "address[]", name: "path", type: "address[]" },
98
+ ],
99
+ name: "getAmountsOut",
100
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
101
+ stateMutability: "view",
102
+ type: "function",
103
+ },
104
+ {
105
+ inputs: [
106
+ { internalType: "uint256", name: "amountA", type: "uint256" },
107
+ { internalType: "uint256", name: "reserveA", type: "uint256" },
108
+ { internalType: "uint256", name: "reserveB", type: "uint256" },
109
+ ],
110
+ name: "quote",
111
+ outputs: [{ internalType: "uint256", name: "amountB", type: "uint256" }],
112
+ stateMutability: "pure",
113
+ type: "function",
114
+ },
115
+ {
116
+ inputs: [
117
+ { internalType: "address", name: "tokenA", type: "address" },
118
+ { internalType: "address", name: "tokenB", type: "address" },
119
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
120
+ { internalType: "uint256", name: "amountAMin", type: "uint256" },
121
+ { internalType: "uint256", name: "amountBMin", type: "uint256" },
122
+ { internalType: "address", name: "to", type: "address" },
123
+ { internalType: "uint256", name: "deadline", type: "uint256" },
124
+ ],
125
+ name: "removeLiquidity",
126
+ outputs: [
127
+ { internalType: "uint256", name: "amountA", type: "uint256" },
128
+ { internalType: "uint256", name: "amountB", type: "uint256" },
129
+ ],
130
+ stateMutability: "nonpayable",
131
+ type: "function",
132
+ },
133
+ {
134
+ inputs: [
135
+ { internalType: "address", name: "token", type: "address" },
136
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
137
+ { internalType: "uint256", name: "amountTokenMin", type: "uint256" },
138
+ { internalType: "uint256", name: "amountETHMin", type: "uint256" },
139
+ { internalType: "address", name: "to", type: "address" },
140
+ { internalType: "uint256", name: "deadline", type: "uint256" },
141
+ ],
142
+ name: "removeLiquidityETH",
143
+ outputs: [
144
+ { internalType: "uint256", name: "amountToken", type: "uint256" },
145
+ { internalType: "uint256", name: "amountETH", type: "uint256" },
146
+ ],
147
+ stateMutability: "nonpayable",
148
+ type: "function",
149
+ },
150
+ {
151
+ inputs: [
152
+ { internalType: "address", name: "token", type: "address" },
153
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
154
+ { internalType: "uint256", name: "amountTokenMin", type: "uint256" },
155
+ { internalType: "uint256", name: "amountETHMin", type: "uint256" },
156
+ { internalType: "address", name: "to", type: "address" },
157
+ { internalType: "uint256", name: "deadline", type: "uint256" },
158
+ ],
159
+ name: "removeLiquidityETHSupportingFeeOnTransferTokens",
160
+ outputs: [{ internalType: "uint256", name: "amountETH", type: "uint256" }],
161
+ stateMutability: "nonpayable",
162
+ type: "function",
163
+ },
164
+ {
165
+ inputs: [
166
+ { internalType: "address", name: "token", type: "address" },
167
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
168
+ { internalType: "uint256", name: "amountTokenMin", type: "uint256" },
169
+ { internalType: "uint256", name: "amountETHMin", type: "uint256" },
170
+ { internalType: "address", name: "to", type: "address" },
171
+ { internalType: "uint256", name: "deadline", type: "uint256" },
172
+ { internalType: "bool", name: "approveMax", type: "bool" },
173
+ { internalType: "uint8", name: "v", type: "uint8" },
174
+ { internalType: "bytes32", name: "r", type: "bytes32" },
175
+ { internalType: "bytes32", name: "s", type: "bytes32" },
176
+ ],
177
+ name: "removeLiquidityETHWithPermit",
178
+ outputs: [
179
+ { internalType: "uint256", name: "amountToken", type: "uint256" },
180
+ { internalType: "uint256", name: "amountETH", type: "uint256" },
181
+ ],
182
+ stateMutability: "nonpayable",
183
+ type: "function",
184
+ },
185
+ {
186
+ inputs: [
187
+ { internalType: "address", name: "token", type: "address" },
188
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
189
+ { internalType: "uint256", name: "amountTokenMin", type: "uint256" },
190
+ { internalType: "uint256", name: "amountETHMin", type: "uint256" },
191
+ { internalType: "address", name: "to", type: "address" },
192
+ { internalType: "uint256", name: "deadline", type: "uint256" },
193
+ { internalType: "bool", name: "approveMax", type: "bool" },
194
+ { internalType: "uint8", name: "v", type: "uint8" },
195
+ { internalType: "bytes32", name: "r", type: "bytes32" },
196
+ { internalType: "bytes32", name: "s", type: "bytes32" },
197
+ ],
198
+ name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens",
199
+ outputs: [{ internalType: "uint256", name: "amountETH", type: "uint256" }],
200
+ stateMutability: "nonpayable",
201
+ type: "function",
202
+ },
203
+ {
204
+ inputs: [
205
+ { internalType: "address", name: "tokenA", type: "address" },
206
+ { internalType: "address", name: "tokenB", type: "address" },
207
+ { internalType: "uint256", name: "liquidity", type: "uint256" },
208
+ { internalType: "uint256", name: "amountAMin", type: "uint256" },
209
+ { internalType: "uint256", name: "amountBMin", type: "uint256" },
210
+ { internalType: "address", name: "to", type: "address" },
211
+ { internalType: "uint256", name: "deadline", type: "uint256" },
212
+ { internalType: "bool", name: "approveMax", type: "bool" },
213
+ { internalType: "uint8", name: "v", type: "uint8" },
214
+ { internalType: "bytes32", name: "r", type: "bytes32" },
215
+ { internalType: "bytes32", name: "s", type: "bytes32" },
216
+ ],
217
+ name: "removeLiquidityWithPermit",
218
+ outputs: [
219
+ { internalType: "uint256", name: "amountA", type: "uint256" },
220
+ { internalType: "uint256", name: "amountB", type: "uint256" },
221
+ ],
222
+ stateMutability: "nonpayable",
223
+ type: "function",
224
+ },
225
+ {
226
+ inputs: [
227
+ { internalType: "uint256", name: "amountOut", type: "uint256" },
228
+ { internalType: "address[]", name: "path", type: "address[]" },
229
+ { internalType: "address", name: "to", type: "address" },
230
+ { internalType: "uint256", name: "deadline", type: "uint256" },
231
+ ],
232
+ name: "swapETHForExactTokens",
233
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
234
+ stateMutability: "payable",
235
+ type: "function",
236
+ },
237
+ {
238
+ inputs: [
239
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
240
+ { internalType: "address[]", name: "path", type: "address[]" },
241
+ { internalType: "address", name: "to", type: "address" },
242
+ { internalType: "uint256", name: "deadline", type: "uint256" },
243
+ ],
244
+ name: "swapExactETHForTokens",
245
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
246
+ stateMutability: "payable",
247
+ type: "function",
248
+ },
249
+ {
250
+ inputs: [
251
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
252
+ { internalType: "address[]", name: "path", type: "address[]" },
253
+ { internalType: "address", name: "to", type: "address" },
254
+ { internalType: "uint256", name: "deadline", type: "uint256" },
255
+ ],
256
+ name: "swapExactETHForTokensSupportingFeeOnTransferTokens",
257
+ outputs: [],
258
+ stateMutability: "payable",
259
+ type: "function",
260
+ },
261
+ {
262
+ inputs: [
263
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
264
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
265
+ { internalType: "address[]", name: "path", type: "address[]" },
266
+ { internalType: "address", name: "to", type: "address" },
267
+ { internalType: "uint256", name: "deadline", type: "uint256" },
268
+ ],
269
+ name: "swapExactTokensForETH",
270
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
271
+ stateMutability: "nonpayable",
272
+ type: "function",
273
+ },
274
+ {
275
+ inputs: [
276
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
277
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
278
+ { internalType: "address[]", name: "path", type: "address[]" },
279
+ { internalType: "address", name: "to", type: "address" },
280
+ { internalType: "uint256", name: "deadline", type: "uint256" },
281
+ ],
282
+ name: "swapExactTokensForETHSupportingFeeOnTransferTokens",
283
+ outputs: [],
284
+ stateMutability: "nonpayable",
285
+ type: "function",
286
+ },
287
+ {
288
+ inputs: [
289
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
290
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
291
+ { internalType: "address[]", name: "path", type: "address[]" },
292
+ { internalType: "address", name: "to", type: "address" },
293
+ { internalType: "uint256", name: "deadline", type: "uint256" },
294
+ ],
295
+ name: "swapExactTokensForTokens",
296
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
297
+ stateMutability: "nonpayable",
298
+ type: "function",
299
+ },
300
+ {
301
+ inputs: [
302
+ { internalType: "uint256", name: "amountIn", type: "uint256" },
303
+ { internalType: "uint256", name: "amountOutMin", type: "uint256" },
304
+ { internalType: "address[]", name: "path", type: "address[]" },
305
+ { internalType: "address", name: "to", type: "address" },
306
+ { internalType: "uint256", name: "deadline", type: "uint256" },
307
+ ],
308
+ name: "swapExactTokensForTokensSupportingFeeOnTransferTokens",
309
+ outputs: [],
310
+ stateMutability: "nonpayable",
311
+ type: "function",
312
+ },
313
+ {
314
+ inputs: [
315
+ { internalType: "uint256", name: "amountOut", type: "uint256" },
316
+ { internalType: "uint256", name: "amountInMax", type: "uint256" },
317
+ { internalType: "address[]", name: "path", type: "address[]" },
318
+ { internalType: "address", name: "to", type: "address" },
319
+ { internalType: "uint256", name: "deadline", type: "uint256" },
320
+ ],
321
+ name: "swapTokensForExactETH",
322
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
323
+ stateMutability: "nonpayable",
324
+ type: "function",
325
+ },
326
+ {
327
+ inputs: [
328
+ { internalType: "uint256", name: "amountOut", type: "uint256" },
329
+ { internalType: "uint256", name: "amountInMax", type: "uint256" },
330
+ { internalType: "address[]", name: "path", type: "address[]" },
331
+ { internalType: "address", name: "to", type: "address" },
332
+ { internalType: "uint256", name: "deadline", type: "uint256" },
333
+ ],
334
+ name: "swapTokensForExactTokens",
335
+ outputs: [{ internalType: "uint256[]", name: "amounts", type: "uint256[]" }],
336
+ stateMutability: "nonpayable",
337
+ type: "function",
338
+ },
339
+ { stateMutability: "payable", type: "receive" },
340
+ ];