@paraswap/dex-lib 2.42.23 → 2.42.24-smardex

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 (65) hide show
  1. package/build/abi/smardex/all/smardex-router.json +479 -0
  2. package/build/abi/smardex/layer-1/smardex-factory.json +176 -0
  3. package/build/abi/smardex/layer-1/smardex-pool.json +768 -0
  4. package/build/abi/smardex/layer-2/smardex-factory.json +265 -0
  5. package/build/abi/smardex/layer-2/smardex-pool.json +898 -0
  6. package/build/config.js +20 -10
  7. package/build/config.js.map +1 -1
  8. package/build/dex/dexalot/constants.js +1 -1
  9. package/build/dex/index.js +2 -0
  10. package/build/dex/index.js.map +1 -1
  11. package/build/dex/smardex/config.d.ts +4 -0
  12. package/build/dex/smardex/config.js +64 -0
  13. package/build/dex/smardex/config.js.map +1 -0
  14. package/build/dex/smardex/constants.d.ts +18 -0
  15. package/build/dex/smardex/constants.js +34 -0
  16. package/build/dex/smardex/constants.js.map +1 -0
  17. package/build/dex/smardex/sdk/constants.d.ts +6 -0
  18. package/build/dex/smardex/sdk/constants.js +13 -0
  19. package/build/dex/smardex/sdk/constants.js.map +1 -0
  20. package/build/dex/smardex/sdk/core.d.ts +113 -0
  21. package/build/dex/smardex/sdk/core.js +499 -0
  22. package/build/dex/smardex/sdk/core.js.map +1 -0
  23. package/build/dex/smardex/sdk/errors.d.ts +15 -0
  24. package/build/dex/smardex/sdk/errors.js +22 -0
  25. package/build/dex/smardex/sdk/errors.js.map +1 -0
  26. package/build/dex/smardex/sdk/types.d.ts +62 -0
  27. package/build/dex/smardex/sdk/types.js +3 -0
  28. package/build/dex/smardex/sdk/types.js.map +1 -0
  29. package/build/dex/smardex/sdk/utils.d.ts +44 -0
  30. package/build/dex/smardex/sdk/utils.js +133 -0
  31. package/build/dex/smardex/sdk/utils.js.map +1 -0
  32. package/build/dex/smardex/smardex-event-pool.d.ts +28 -0
  33. package/build/dex/smardex/smardex-event-pool.js +135 -0
  34. package/build/dex/smardex/smardex-event-pool.js.map +1 -0
  35. package/build/dex/smardex/smardex.d.ts +66 -0
  36. package/build/dex/smardex/smardex.js +567 -0
  37. package/build/dex/smardex/smardex.js.map +1 -0
  38. package/build/dex/smardex/types.d.ts +55 -0
  39. package/build/dex/smardex/types.js +3 -0
  40. package/build/dex/smardex/types.js.map +1 -0
  41. package/build/types.d.ts +1 -0
  42. package/package.json +1 -1
  43. package/src/abi/smardex/all/smardex-router.json +479 -0
  44. package/src/abi/smardex/layer-1/smardex-factory.json +176 -0
  45. package/src/abi/smardex/layer-1/smardex-pool.json +768 -0
  46. package/src/abi/smardex/layer-2/smardex-factory.json +265 -0
  47. package/src/abi/smardex/layer-2/smardex-pool.json +898 -0
  48. package/src/config.ts +21 -10
  49. package/src/dex/dexalot/constants.ts +1 -1
  50. package/src/dex/index.ts +2 -0
  51. package/src/dex/smardex/config.ts +67 -0
  52. package/src/dex/smardex/constants.ts +36 -0
  53. package/src/dex/smardex/sdk/constants.ts +10 -0
  54. package/src/dex/smardex/sdk/core.ts +832 -0
  55. package/src/dex/smardex/sdk/errors.ts +18 -0
  56. package/src/dex/smardex/sdk/types.ts +68 -0
  57. package/src/dex/smardex/sdk/utils.ts +156 -0
  58. package/src/dex/smardex/smardex-e2e.test.ts +275 -0
  59. package/src/dex/smardex/smardex-event-pool.ts +185 -0
  60. package/src/dex/smardex/smardex-events.test.ts +296 -0
  61. package/src/dex/smardex/smardex-integration.test.ts +258 -0
  62. package/src/dex/smardex/smardex.ts +842 -0
  63. package/src/dex/smardex/types.ts +69 -0
  64. package/src/types.ts +1 -0
  65. package/tests/constants-e2e.ts +25 -0
@@ -0,0 +1,479 @@
1
+ [
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
+ {
22
+ "internalType": "uint256",
23
+ "name": "_amountADesired",
24
+ "type": "uint256"
25
+ },
26
+ {
27
+ "internalType": "uint256",
28
+ "name": "_amountBDesired",
29
+ "type": "uint256"
30
+ },
31
+ { "internalType": "uint256", "name": "_amountAMin", "type": "uint256" },
32
+ { "internalType": "uint256", "name": "_amountBMin", "type": "uint256" },
33
+ { "internalType": "address", "name": "_to", "type": "address" },
34
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
35
+ ],
36
+ "name": "addLiquidity",
37
+ "outputs": [
38
+ { "internalType": "uint256", "name": "amountA_", "type": "uint256" },
39
+ { "internalType": "uint256", "name": "amountB_", "type": "uint256" },
40
+ { "internalType": "uint256", "name": "liquidity_", "type": "uint256" }
41
+ ],
42
+ "stateMutability": "nonpayable",
43
+ "type": "function"
44
+ },
45
+ {
46
+ "inputs": [
47
+ { "internalType": "address", "name": "_token", "type": "address" },
48
+ {
49
+ "internalType": "uint256",
50
+ "name": "_amountTokenDesired",
51
+ "type": "uint256"
52
+ },
53
+ {
54
+ "internalType": "uint256",
55
+ "name": "_amountTokenMin",
56
+ "type": "uint256"
57
+ },
58
+ { "internalType": "uint256", "name": "_amountETHMin", "type": "uint256" },
59
+ { "internalType": "address", "name": "_to", "type": "address" },
60
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
61
+ ],
62
+ "name": "addLiquidityETH",
63
+ "outputs": [
64
+ { "internalType": "uint256", "name": "amountToken_", "type": "uint256" },
65
+ { "internalType": "uint256", "name": "amountETH_", "type": "uint256" },
66
+ { "internalType": "uint256", "name": "liquidity_", "type": "uint256" }
67
+ ],
68
+ "stateMutability": "payable",
69
+ "type": "function"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "factory",
74
+ "outputs": [{ "internalType": "address", "name": "", "type": "address" }],
75
+ "stateMutability": "view",
76
+ "type": "function"
77
+ },
78
+ {
79
+ "inputs": [
80
+ {
81
+ "components": [
82
+ { "internalType": "uint256", "name": "amount", "type": "uint256" },
83
+ { "internalType": "uint256", "name": "reserveIn", "type": "uint256" },
84
+ {
85
+ "internalType": "uint256",
86
+ "name": "reserveOut",
87
+ "type": "uint256"
88
+ },
89
+ {
90
+ "internalType": "uint256",
91
+ "name": "fictiveReserveIn",
92
+ "type": "uint256"
93
+ },
94
+ {
95
+ "internalType": "uint256",
96
+ "name": "fictiveReserveOut",
97
+ "type": "uint256"
98
+ },
99
+ {
100
+ "internalType": "uint256",
101
+ "name": "priceAverageIn",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "priceAverageOut",
107
+ "type": "uint256"
108
+ },
109
+ { "internalType": "uint128", "name": "feesLP", "type": "uint128" },
110
+ { "internalType": "uint128", "name": "feesPool", "type": "uint128" }
111
+ ],
112
+ "internalType": "struct SmardexLibrary.GetAmountParameters",
113
+ "name": "_param",
114
+ "type": "tuple"
115
+ }
116
+ ],
117
+ "name": "getAmountIn",
118
+ "outputs": [
119
+ { "internalType": "uint256", "name": "amountIn_", "type": "uint256" },
120
+ { "internalType": "uint256", "name": "newReserveIn_", "type": "uint256" },
121
+ {
122
+ "internalType": "uint256",
123
+ "name": "newReserveOut_",
124
+ "type": "uint256"
125
+ },
126
+ {
127
+ "internalType": "uint256",
128
+ "name": "newFictiveReserveIn_",
129
+ "type": "uint256"
130
+ },
131
+ {
132
+ "internalType": "uint256",
133
+ "name": "newFictiveReserveOut_",
134
+ "type": "uint256"
135
+ }
136
+ ],
137
+ "stateMutability": "pure",
138
+ "type": "function"
139
+ },
140
+ {
141
+ "inputs": [
142
+ { "internalType": "uint256", "name": "_amountOut", "type": "uint256" },
143
+ { "internalType": "address", "name": "_tokenIn", "type": "address" },
144
+ { "internalType": "address", "name": "_tokenOut", "type": "address" }
145
+ ],
146
+ "name": "getAmountInFromPair",
147
+ "outputs": [
148
+ { "internalType": "uint256", "name": "amountIn_", "type": "uint256" },
149
+ { "internalType": "uint256", "name": "newReserveIn_", "type": "uint256" },
150
+ {
151
+ "internalType": "uint256",
152
+ "name": "newReserveOut_",
153
+ "type": "uint256"
154
+ },
155
+ {
156
+ "internalType": "uint256",
157
+ "name": "newFictiveReserveIn_",
158
+ "type": "uint256"
159
+ },
160
+ {
161
+ "internalType": "uint256",
162
+ "name": "newFictiveReserveOut_",
163
+ "type": "uint256"
164
+ }
165
+ ],
166
+ "stateMutability": "view",
167
+ "type": "function"
168
+ },
169
+ {
170
+ "inputs": [
171
+ {
172
+ "components": [
173
+ { "internalType": "uint256", "name": "amount", "type": "uint256" },
174
+ { "internalType": "uint256", "name": "reserveIn", "type": "uint256" },
175
+ {
176
+ "internalType": "uint256",
177
+ "name": "reserveOut",
178
+ "type": "uint256"
179
+ },
180
+ {
181
+ "internalType": "uint256",
182
+ "name": "fictiveReserveIn",
183
+ "type": "uint256"
184
+ },
185
+ {
186
+ "internalType": "uint256",
187
+ "name": "fictiveReserveOut",
188
+ "type": "uint256"
189
+ },
190
+ {
191
+ "internalType": "uint256",
192
+ "name": "priceAverageIn",
193
+ "type": "uint256"
194
+ },
195
+ {
196
+ "internalType": "uint256",
197
+ "name": "priceAverageOut",
198
+ "type": "uint256"
199
+ },
200
+ { "internalType": "uint128", "name": "feesLP", "type": "uint128" },
201
+ { "internalType": "uint128", "name": "feesPool", "type": "uint128" }
202
+ ],
203
+ "internalType": "struct SmardexLibrary.GetAmountParameters",
204
+ "name": "_param",
205
+ "type": "tuple"
206
+ }
207
+ ],
208
+ "name": "getAmountOut",
209
+ "outputs": [
210
+ { "internalType": "uint256", "name": "amountOut_", "type": "uint256" },
211
+ { "internalType": "uint256", "name": "newReserveIn_", "type": "uint256" },
212
+ {
213
+ "internalType": "uint256",
214
+ "name": "newReserveOut_",
215
+ "type": "uint256"
216
+ },
217
+ {
218
+ "internalType": "uint256",
219
+ "name": "newFictiveReserveIn_",
220
+ "type": "uint256"
221
+ },
222
+ {
223
+ "internalType": "uint256",
224
+ "name": "newFictiveReserveOut_",
225
+ "type": "uint256"
226
+ }
227
+ ],
228
+ "stateMutability": "pure",
229
+ "type": "function"
230
+ },
231
+ {
232
+ "inputs": [
233
+ { "internalType": "uint256", "name": "_amountIn", "type": "uint256" },
234
+ { "internalType": "address", "name": "_tokenIn", "type": "address" },
235
+ { "internalType": "address", "name": "_tokenOut", "type": "address" }
236
+ ],
237
+ "name": "getAmountOutFromPair",
238
+ "outputs": [
239
+ { "internalType": "uint256", "name": "amountOut_", "type": "uint256" },
240
+ { "internalType": "uint256", "name": "newReserveIn_", "type": "uint256" },
241
+ {
242
+ "internalType": "uint256",
243
+ "name": "newReserveOut_",
244
+ "type": "uint256"
245
+ },
246
+ {
247
+ "internalType": "uint256",
248
+ "name": "newFictiveReserveIn_",
249
+ "type": "uint256"
250
+ },
251
+ {
252
+ "internalType": "uint256",
253
+ "name": "newFictiveReserveOut_",
254
+ "type": "uint256"
255
+ }
256
+ ],
257
+ "stateMutability": "view",
258
+ "type": "function"
259
+ },
260
+ {
261
+ "inputs": [
262
+ { "internalType": "uint256", "name": "_amountA", "type": "uint256" },
263
+ { "internalType": "uint256", "name": "_reserveA", "type": "uint256" },
264
+ { "internalType": "uint256", "name": "_reserveB", "type": "uint256" }
265
+ ],
266
+ "name": "quote",
267
+ "outputs": [
268
+ { "internalType": "uint256", "name": "amountB_", "type": "uint256" }
269
+ ],
270
+ "stateMutability": "pure",
271
+ "type": "function"
272
+ },
273
+ {
274
+ "inputs": [
275
+ { "internalType": "address", "name": "_tokenA", "type": "address" },
276
+ { "internalType": "address", "name": "_tokenB", "type": "address" },
277
+ { "internalType": "uint256", "name": "_liquidity", "type": "uint256" },
278
+ { "internalType": "uint256", "name": "_amountAMin", "type": "uint256" },
279
+ { "internalType": "uint256", "name": "_amountBMin", "type": "uint256" },
280
+ { "internalType": "address", "name": "_to", "type": "address" },
281
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
282
+ ],
283
+ "name": "removeLiquidity",
284
+ "outputs": [
285
+ { "internalType": "uint256", "name": "amountA_", "type": "uint256" },
286
+ { "internalType": "uint256", "name": "amountB_", "type": "uint256" }
287
+ ],
288
+ "stateMutability": "nonpayable",
289
+ "type": "function"
290
+ },
291
+ {
292
+ "inputs": [
293
+ { "internalType": "address", "name": "_token", "type": "address" },
294
+ { "internalType": "uint256", "name": "_liquidity", "type": "uint256" },
295
+ {
296
+ "internalType": "uint256",
297
+ "name": "_amountTokenMin",
298
+ "type": "uint256"
299
+ },
300
+ { "internalType": "uint256", "name": "_amountETHMin", "type": "uint256" },
301
+ { "internalType": "address", "name": "_to", "type": "address" },
302
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
303
+ ],
304
+ "name": "removeLiquidityETH",
305
+ "outputs": [
306
+ { "internalType": "uint256", "name": "amountToken_", "type": "uint256" },
307
+ { "internalType": "uint256", "name": "amountETH_", "type": "uint256" }
308
+ ],
309
+ "stateMutability": "nonpayable",
310
+ "type": "function"
311
+ },
312
+ {
313
+ "inputs": [
314
+ { "internalType": "address", "name": "_token", "type": "address" },
315
+ { "internalType": "uint256", "name": "_liquidity", "type": "uint256" },
316
+ {
317
+ "internalType": "uint256",
318
+ "name": "_amountTokenMin",
319
+ "type": "uint256"
320
+ },
321
+ { "internalType": "uint256", "name": "_amountETHMin", "type": "uint256" },
322
+ { "internalType": "address", "name": "_to", "type": "address" },
323
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" },
324
+ { "internalType": "bool", "name": "_approveMax", "type": "bool" },
325
+ { "internalType": "uint8", "name": "_v", "type": "uint8" },
326
+ { "internalType": "bytes32", "name": "_r", "type": "bytes32" },
327
+ { "internalType": "bytes32", "name": "_s", "type": "bytes32" }
328
+ ],
329
+ "name": "removeLiquidityETHWithPermit",
330
+ "outputs": [
331
+ { "internalType": "uint256", "name": "amountToken_", "type": "uint256" },
332
+ { "internalType": "uint256", "name": "amountETH_", "type": "uint256" }
333
+ ],
334
+ "stateMutability": "nonpayable",
335
+ "type": "function"
336
+ },
337
+ {
338
+ "inputs": [
339
+ { "internalType": "address", "name": "_tokenA", "type": "address" },
340
+ { "internalType": "address", "name": "_tokenB", "type": "address" },
341
+ { "internalType": "uint256", "name": "_liquidity", "type": "uint256" },
342
+ { "internalType": "uint256", "name": "_amountAMin", "type": "uint256" },
343
+ { "internalType": "uint256", "name": "_amountBMin", "type": "uint256" },
344
+ { "internalType": "address", "name": "_to", "type": "address" },
345
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" },
346
+ { "internalType": "bool", "name": "_approveMax", "type": "bool" },
347
+ { "internalType": "uint8", "name": "_v", "type": "uint8" },
348
+ { "internalType": "bytes32", "name": "_r", "type": "bytes32" },
349
+ { "internalType": "bytes32", "name": "_s", "type": "bytes32" }
350
+ ],
351
+ "name": "removeLiquidityWithPermit",
352
+ "outputs": [
353
+ { "internalType": "uint256", "name": "amountA_", "type": "uint256" },
354
+ { "internalType": "uint256", "name": "amountB_", "type": "uint256" }
355
+ ],
356
+ "stateMutability": "nonpayable",
357
+ "type": "function"
358
+ },
359
+ {
360
+ "inputs": [
361
+ {
362
+ "components": [
363
+ { "internalType": "address", "name": "token0", "type": "address" },
364
+ { "internalType": "address", "name": "token1", "type": "address" },
365
+ { "internalType": "uint256", "name": "amount0", "type": "uint256" },
366
+ { "internalType": "uint256", "name": "amount1", "type": "uint256" },
367
+ { "internalType": "address", "name": "payer", "type": "address" }
368
+ ],
369
+ "internalType": "struct ISmardexMintCallback.MintCallbackData",
370
+ "name": "_data",
371
+ "type": "tuple"
372
+ }
373
+ ],
374
+ "name": "smardexMintCallback",
375
+ "outputs": [],
376
+ "stateMutability": "nonpayable",
377
+ "type": "function"
378
+ },
379
+ {
380
+ "inputs": [
381
+ { "internalType": "int256", "name": "_amount0Delta", "type": "int256" },
382
+ { "internalType": "int256", "name": "_amount1Delta", "type": "int256" },
383
+ { "internalType": "bytes", "name": "_data", "type": "bytes" }
384
+ ],
385
+ "name": "smardexSwapCallback",
386
+ "outputs": [],
387
+ "stateMutability": "nonpayable",
388
+ "type": "function"
389
+ },
390
+ {
391
+ "inputs": [
392
+ { "internalType": "uint256", "name": "_amountOut", "type": "uint256" },
393
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
394
+ { "internalType": "address", "name": "_to", "type": "address" },
395
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
396
+ ],
397
+ "name": "swapETHForExactTokens",
398
+ "outputs": [
399
+ { "internalType": "uint256", "name": "amountIn_", "type": "uint256" }
400
+ ],
401
+ "stateMutability": "payable",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [
406
+ { "internalType": "uint256", "name": "_amountOutMin", "type": "uint256" },
407
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
408
+ { "internalType": "address", "name": "_to", "type": "address" },
409
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
410
+ ],
411
+ "name": "swapExactETHForTokens",
412
+ "outputs": [
413
+ { "internalType": "uint256", "name": "amountOut_", "type": "uint256" }
414
+ ],
415
+ "stateMutability": "payable",
416
+ "type": "function"
417
+ },
418
+ {
419
+ "inputs": [
420
+ { "internalType": "uint256", "name": "_amountIn", "type": "uint256" },
421
+ { "internalType": "uint256", "name": "_amountOutMin", "type": "uint256" },
422
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
423
+ { "internalType": "address", "name": "_to", "type": "address" },
424
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
425
+ ],
426
+ "name": "swapExactTokensForETH",
427
+ "outputs": [
428
+ { "internalType": "uint256", "name": "amountOut_", "type": "uint256" }
429
+ ],
430
+ "stateMutability": "nonpayable",
431
+ "type": "function"
432
+ },
433
+ {
434
+ "inputs": [
435
+ { "internalType": "uint256", "name": "_amountIn", "type": "uint256" },
436
+ { "internalType": "uint256", "name": "_amountOutMin", "type": "uint256" },
437
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
438
+ { "internalType": "address", "name": "_to", "type": "address" },
439
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
440
+ ],
441
+ "name": "swapExactTokensForTokens",
442
+ "outputs": [
443
+ { "internalType": "uint256", "name": "amountOut_", "type": "uint256" }
444
+ ],
445
+ "stateMutability": "nonpayable",
446
+ "type": "function"
447
+ },
448
+ {
449
+ "inputs": [
450
+ { "internalType": "uint256", "name": "_amountOut", "type": "uint256" },
451
+ { "internalType": "uint256", "name": "_amountInMax", "type": "uint256" },
452
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
453
+ { "internalType": "address", "name": "_to", "type": "address" },
454
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
455
+ ],
456
+ "name": "swapTokensForExactETH",
457
+ "outputs": [
458
+ { "internalType": "uint256", "name": "amountIn_", "type": "uint256" }
459
+ ],
460
+ "stateMutability": "nonpayable",
461
+ "type": "function"
462
+ },
463
+ {
464
+ "inputs": [
465
+ { "internalType": "uint256", "name": "_amountOut", "type": "uint256" },
466
+ { "internalType": "uint256", "name": "_amountInMax", "type": "uint256" },
467
+ { "internalType": "address[]", "name": "_path", "type": "address[]" },
468
+ { "internalType": "address", "name": "_to", "type": "address" },
469
+ { "internalType": "uint256", "name": "_deadline", "type": "uint256" }
470
+ ],
471
+ "name": "swapTokensForExactTokens",
472
+ "outputs": [
473
+ { "internalType": "uint256", "name": "amountIn_", "type": "uint256" }
474
+ ],
475
+ "stateMutability": "nonpayable",
476
+ "type": "function"
477
+ },
478
+ { "stateMutability": "payable", "type": "receive" }
479
+ ]
@@ -0,0 +1,176 @@
1
+ [
2
+ {
3
+ "inputs": [
4
+ {
5
+ "internalType": "address",
6
+ "name": "_feeToSetter",
7
+ "type": "address"
8
+ }
9
+ ],
10
+ "stateMutability": "nonpayable",
11
+ "type": "constructor"
12
+ },
13
+ {
14
+ "anonymous": false,
15
+ "inputs": [
16
+ {
17
+ "indexed": true,
18
+ "internalType": "address",
19
+ "name": "token0",
20
+ "type": "address"
21
+ },
22
+ {
23
+ "indexed": true,
24
+ "internalType": "address",
25
+ "name": "token1",
26
+ "type": "address"
27
+ },
28
+ {
29
+ "indexed": false,
30
+ "internalType": "address",
31
+ "name": "pair",
32
+ "type": "address"
33
+ },
34
+ {
35
+ "indexed": false,
36
+ "internalType": "uint256",
37
+ "name": "totalPair",
38
+ "type": "uint256"
39
+ }
40
+ ],
41
+ "name": "PairCreated",
42
+ "type": "event"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "uint256",
48
+ "name": "",
49
+ "type": "uint256"
50
+ }
51
+ ],
52
+ "name": "allPairs",
53
+ "outputs": [
54
+ {
55
+ "internalType": "address",
56
+ "name": "",
57
+ "type": "address"
58
+ }
59
+ ],
60
+ "stateMutability": "view",
61
+ "type": "function"
62
+ },
63
+ {
64
+ "inputs": [],
65
+ "name": "allPairsLength",
66
+ "outputs": [
67
+ {
68
+ "internalType": "uint256",
69
+ "name": "",
70
+ "type": "uint256"
71
+ }
72
+ ],
73
+ "stateMutability": "view",
74
+ "type": "function"
75
+ },
76
+ {
77
+ "inputs": [
78
+ {
79
+ "internalType": "address",
80
+ "name": "_tokenA",
81
+ "type": "address"
82
+ },
83
+ {
84
+ "internalType": "address",
85
+ "name": "_tokenB",
86
+ "type": "address"
87
+ }
88
+ ],
89
+ "name": "createPair",
90
+ "outputs": [
91
+ {
92
+ "internalType": "address",
93
+ "name": "pair_",
94
+ "type": "address"
95
+ }
96
+ ],
97
+ "stateMutability": "nonpayable",
98
+ "type": "function"
99
+ },
100
+ {
101
+ "inputs": [],
102
+ "name": "feeTo",
103
+ "outputs": [
104
+ {
105
+ "internalType": "address",
106
+ "name": "",
107
+ "type": "address"
108
+ }
109
+ ],
110
+ "stateMutability": "view",
111
+ "type": "function"
112
+ },
113
+ {
114
+ "inputs": [],
115
+ "name": "feeToSetter",
116
+ "outputs": [
117
+ {
118
+ "internalType": "address",
119
+ "name": "",
120
+ "type": "address"
121
+ }
122
+ ],
123
+ "stateMutability": "view",
124
+ "type": "function"
125
+ },
126
+ {
127
+ "inputs": [
128
+ {
129
+ "internalType": "address",
130
+ "name": "",
131
+ "type": "address"
132
+ },
133
+ {
134
+ "internalType": "address",
135
+ "name": "",
136
+ "type": "address"
137
+ }
138
+ ],
139
+ "name": "getPair",
140
+ "outputs": [
141
+ {
142
+ "internalType": "address",
143
+ "name": "",
144
+ "type": "address"
145
+ }
146
+ ],
147
+ "stateMutability": "view",
148
+ "type": "function"
149
+ },
150
+ {
151
+ "inputs": [
152
+ {
153
+ "internalType": "address",
154
+ "name": "_feeTo",
155
+ "type": "address"
156
+ }
157
+ ],
158
+ "name": "setFeeTo",
159
+ "outputs": [],
160
+ "stateMutability": "nonpayable",
161
+ "type": "function"
162
+ },
163
+ {
164
+ "inputs": [
165
+ {
166
+ "internalType": "address",
167
+ "name": "_feeToSetter",
168
+ "type": "address"
169
+ }
170
+ ],
171
+ "name": "setFeeToSetter",
172
+ "outputs": [],
173
+ "stateMutability": "nonpayable",
174
+ "type": "function"
175
+ }
176
+ ]