@dhedge/v2-sdk 1.11.1 → 2.0.1

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 (38) hide show
  1. package/dist/entities/pool.d.ts +91 -91
  2. package/dist/services/flatmoney/stableLp.d.ts +4 -4
  3. package/dist/services/odos/index.d.ts +5 -1
  4. package/dist/services/pendle/index.d.ts +4 -1
  5. package/dist/services/toros/completeWithdrawal.d.ts +7 -0
  6. package/dist/services/toros/easySwapper.d.ts +2 -2
  7. package/dist/services/toros/initWithdrawal.d.ts +3 -0
  8. package/dist/services/toros/retry.d.ts +5 -0
  9. package/dist/services/toros/swapData.d.ts +11 -0
  10. package/dist/types.d.ts +5 -0
  11. package/dist/utils/contract.d.ts +3 -2
  12. package/dist/v2-sdk.cjs.development.js +5716 -2693
  13. package/dist/v2-sdk.cjs.development.js.map +1 -1
  14. package/dist/v2-sdk.cjs.production.min.js +1 -1
  15. package/dist/v2-sdk.cjs.production.min.js.map +1 -1
  16. package/dist/v2-sdk.esm.js +5716 -2693
  17. package/dist/v2-sdk.esm.js.map +1 -1
  18. package/package.json +1 -1
  19. package/src/abi/IAaveLendingPoolAssetGuard.json +645 -0
  20. package/src/abi/IEasySwapperV2.json +1507 -0
  21. package/src/abi/pendle/PT.json +15 -0
  22. package/src/abi/pendle/SY.json +1 -0
  23. package/src/entities/pool.ts +240 -149
  24. package/src/services/flatmoney/stableLp.ts +27 -21
  25. package/src/services/odos/index.ts +6 -3
  26. package/src/services/pendle/index.ts +43 -8
  27. package/src/services/toros/completeWithdrawal.ts +209 -0
  28. package/src/services/toros/easySwapper.ts +16 -84
  29. package/src/services/toros/initWithdrawal.ts +166 -0
  30. package/src/services/toros/retry.ts +28 -0
  31. package/src/services/toros/swapData.ts +70 -0
  32. package/src/test/constants.ts +1 -1
  33. package/src/test/odos.test.ts +8 -7
  34. package/src/test/oneInch.test.ts +20 -22
  35. package/src/test/pendle.test.ts +63 -37
  36. package/src/test/toros.test.ts +10 -8
  37. package/src/types.ts +8 -0
  38. package/src/utils/contract.ts +70 -16
@@ -0,0 +1,1507 @@
1
+ [
2
+ {
3
+ "anonymous": false,
4
+ "inputs": [
5
+ {
6
+ "components": [
7
+ {
8
+ "internalType": "address",
9
+ "name": "toWhitelist",
10
+ "type": "address"
11
+ },
12
+ {
13
+ "internalType": "bool",
14
+ "name": "whitelisted",
15
+ "type": "bool"
16
+ }
17
+ ],
18
+ "indexed": false,
19
+ "internalType": "struct EasySwapperV2.WhitelistSetting[]",
20
+ "name": "whitelistSettings",
21
+ "type": "tuple[]"
22
+ }
23
+ ],
24
+ "name": "AuthorizedWithdrawersSet",
25
+ "type": "event"
26
+ },
27
+ {
28
+ "anonymous": false,
29
+ "inputs": [
30
+ {
31
+ "indexed": false,
32
+ "internalType": "address",
33
+ "name": "limitOrderVault",
34
+ "type": "address"
35
+ },
36
+ {
37
+ "indexed": true,
38
+ "internalType": "address",
39
+ "name": "depositor",
40
+ "type": "address"
41
+ }
42
+ ],
43
+ "name": "LimitOrderVaultCreated",
44
+ "type": "event"
45
+ },
46
+ {
47
+ "anonymous": false,
48
+ "inputs": [
49
+ {
50
+ "indexed": true,
51
+ "internalType": "address",
52
+ "name": "previousOwner",
53
+ "type": "address"
54
+ },
55
+ {
56
+ "indexed": true,
57
+ "internalType": "address",
58
+ "name": "newOwner",
59
+ "type": "address"
60
+ }
61
+ ],
62
+ "name": "OwnershipTransferred",
63
+ "type": "event"
64
+ },
65
+ {
66
+ "anonymous": false,
67
+ "inputs": [
68
+ {
69
+ "indexed": false,
70
+ "internalType": "address",
71
+ "name": "proxy",
72
+ "type": "address"
73
+ }
74
+ ],
75
+ "name": "ProxyCreated",
76
+ "type": "event"
77
+ },
78
+ {
79
+ "anonymous": false,
80
+ "inputs": [
81
+ {
82
+ "indexed": false,
83
+ "internalType": "address",
84
+ "name": "withdrawalVault",
85
+ "type": "address"
86
+ },
87
+ {
88
+ "indexed": true,
89
+ "internalType": "address",
90
+ "name": "depositor",
91
+ "type": "address"
92
+ }
93
+ ],
94
+ "name": "WithdrawalCompleted",
95
+ "type": "event"
96
+ },
97
+ {
98
+ "anonymous": false,
99
+ "inputs": [
100
+ {
101
+ "indexed": false,
102
+ "internalType": "address",
103
+ "name": "withdrawalVault",
104
+ "type": "address"
105
+ },
106
+ {
107
+ "indexed": true,
108
+ "internalType": "address",
109
+ "name": "depositor",
110
+ "type": "address"
111
+ },
112
+ {
113
+ "indexed": false,
114
+ "internalType": "address",
115
+ "name": "dHedgeVault",
116
+ "type": "address"
117
+ },
118
+ {
119
+ "indexed": false,
120
+ "internalType": "uint256",
121
+ "name": "amountWithdrawn",
122
+ "type": "uint256"
123
+ }
124
+ ],
125
+ "name": "WithdrawalInitiated",
126
+ "type": "event"
127
+ },
128
+ {
129
+ "anonymous": false,
130
+ "inputs": [
131
+ {
132
+ "indexed": false,
133
+ "internalType": "address",
134
+ "name": "withdrawalVault",
135
+ "type": "address"
136
+ },
137
+ {
138
+ "indexed": true,
139
+ "internalType": "address",
140
+ "name": "depositor",
141
+ "type": "address"
142
+ }
143
+ ],
144
+ "name": "WithdrawalVaultCreated",
145
+ "type": "event"
146
+ },
147
+ {
148
+ "anonymous": false,
149
+ "inputs": [
150
+ {
151
+ "indexed": true,
152
+ "internalType": "address",
153
+ "name": "depositor",
154
+ "type": "address"
155
+ },
156
+ {
157
+ "indexed": true,
158
+ "internalType": "address",
159
+ "name": "dHedgeVault",
160
+ "type": "address"
161
+ },
162
+ {
163
+ "indexed": false,
164
+ "internalType": "contract IERC20",
165
+ "name": "vaultDepositToken",
166
+ "type": "address"
167
+ },
168
+ {
169
+ "indexed": false,
170
+ "internalType": "contract IERC20",
171
+ "name": "userDepositToken",
172
+ "type": "address"
173
+ },
174
+ {
175
+ "indexed": false,
176
+ "internalType": "uint256",
177
+ "name": "amountReceived",
178
+ "type": "uint256"
179
+ },
180
+ {
181
+ "indexed": false,
182
+ "internalType": "uint256",
183
+ "name": "lockupTime",
184
+ "type": "uint256"
185
+ }
186
+ ],
187
+ "name": "ZapDepositCompleted",
188
+ "type": "event"
189
+ },
190
+ {
191
+ "inputs": [],
192
+ "name": "DEFAULT_COOLDOWN",
193
+ "outputs": [
194
+ {
195
+ "internalType": "uint256",
196
+ "name": "",
197
+ "type": "uint256"
198
+ }
199
+ ],
200
+ "stateMutability": "view",
201
+ "type": "function"
202
+ },
203
+ {
204
+ "inputs": [
205
+ {
206
+ "components": [
207
+ {
208
+ "components": [
209
+ {
210
+ "internalType": "contract IERC20",
211
+ "name": "token",
212
+ "type": "address"
213
+ },
214
+ {
215
+ "internalType": "uint256",
216
+ "name": "amount",
217
+ "type": "uint256"
218
+ },
219
+ {
220
+ "components": [
221
+ {
222
+ "internalType": "bytes32",
223
+ "name": "routerKey",
224
+ "type": "bytes32"
225
+ },
226
+ {
227
+ "internalType": "bytes",
228
+ "name": "swapData",
229
+ "type": "bytes"
230
+ }
231
+ ],
232
+ "internalType": "struct ISwapper.AggregatorData",
233
+ "name": "aggregatorData",
234
+ "type": "tuple"
235
+ }
236
+ ],
237
+ "internalType": "struct ISwapper.SrcTokenSwapDetails[]",
238
+ "name": "srcData",
239
+ "type": "tuple[]"
240
+ },
241
+ {
242
+ "components": [
243
+ {
244
+ "internalType": "contract IERC20",
245
+ "name": "destToken",
246
+ "type": "address"
247
+ },
248
+ {
249
+ "internalType": "uint256",
250
+ "name": "minDestAmount",
251
+ "type": "uint256"
252
+ }
253
+ ],
254
+ "internalType": "struct ISwapper.DestData",
255
+ "name": "destData",
256
+ "type": "tuple"
257
+ }
258
+ ],
259
+ "internalType": "struct IWithdrawalVault.MultiInSingleOutData",
260
+ "name": "_swapData",
261
+ "type": "tuple"
262
+ },
263
+ {
264
+ "internalType": "uint256",
265
+ "name": "_expectedDestTokenAmount",
266
+ "type": "uint256"
267
+ }
268
+ ],
269
+ "name": "completeLimitOrderWithdrawal",
270
+ "outputs": [
271
+ {
272
+ "internalType": "uint256",
273
+ "name": "destTokenAmount",
274
+ "type": "uint256"
275
+ }
276
+ ],
277
+ "stateMutability": "nonpayable",
278
+ "type": "function"
279
+ },
280
+ {
281
+ "inputs": [],
282
+ "name": "completeLimitOrderWithdrawal",
283
+ "outputs": [],
284
+ "stateMutability": "nonpayable",
285
+ "type": "function"
286
+ },
287
+ {
288
+ "inputs": [
289
+ {
290
+ "internalType": "address",
291
+ "name": "_user",
292
+ "type": "address"
293
+ },
294
+ {
295
+ "components": [
296
+ {
297
+ "components": [
298
+ {
299
+ "internalType": "contract IERC20",
300
+ "name": "token",
301
+ "type": "address"
302
+ },
303
+ {
304
+ "internalType": "uint256",
305
+ "name": "amount",
306
+ "type": "uint256"
307
+ },
308
+ {
309
+ "components": [
310
+ {
311
+ "internalType": "bytes32",
312
+ "name": "routerKey",
313
+ "type": "bytes32"
314
+ },
315
+ {
316
+ "internalType": "bytes",
317
+ "name": "swapData",
318
+ "type": "bytes"
319
+ }
320
+ ],
321
+ "internalType": "struct ISwapper.AggregatorData",
322
+ "name": "aggregatorData",
323
+ "type": "tuple"
324
+ }
325
+ ],
326
+ "internalType": "struct ISwapper.SrcTokenSwapDetails[]",
327
+ "name": "srcData",
328
+ "type": "tuple[]"
329
+ },
330
+ {
331
+ "components": [
332
+ {
333
+ "internalType": "contract IERC20",
334
+ "name": "destToken",
335
+ "type": "address"
336
+ },
337
+ {
338
+ "internalType": "uint256",
339
+ "name": "minDestAmount",
340
+ "type": "uint256"
341
+ }
342
+ ],
343
+ "internalType": "struct ISwapper.DestData",
344
+ "name": "destData",
345
+ "type": "tuple"
346
+ }
347
+ ],
348
+ "internalType": "struct IWithdrawalVault.MultiInSingleOutData",
349
+ "name": "_swapData",
350
+ "type": "tuple"
351
+ },
352
+ {
353
+ "internalType": "uint256",
354
+ "name": "_expectedDestTokenAmount",
355
+ "type": "uint256"
356
+ }
357
+ ],
358
+ "name": "completeLimitOrderWithdrawalFor",
359
+ "outputs": [
360
+ {
361
+ "internalType": "uint256",
362
+ "name": "destTokenAmount",
363
+ "type": "uint256"
364
+ }
365
+ ],
366
+ "stateMutability": "nonpayable",
367
+ "type": "function"
368
+ },
369
+ {
370
+ "inputs": [
371
+ {
372
+ "internalType": "address",
373
+ "name": "_user",
374
+ "type": "address"
375
+ }
376
+ ],
377
+ "name": "completeLimitOrderWithdrawalFor",
378
+ "outputs": [],
379
+ "stateMutability": "nonpayable",
380
+ "type": "function"
381
+ },
382
+ {
383
+ "inputs": [
384
+ {
385
+ "components": [
386
+ {
387
+ "components": [
388
+ {
389
+ "internalType": "contract IERC20",
390
+ "name": "token",
391
+ "type": "address"
392
+ },
393
+ {
394
+ "internalType": "uint256",
395
+ "name": "amount",
396
+ "type": "uint256"
397
+ },
398
+ {
399
+ "components": [
400
+ {
401
+ "internalType": "bytes32",
402
+ "name": "routerKey",
403
+ "type": "bytes32"
404
+ },
405
+ {
406
+ "internalType": "bytes",
407
+ "name": "swapData",
408
+ "type": "bytes"
409
+ }
410
+ ],
411
+ "internalType": "struct ISwapper.AggregatorData",
412
+ "name": "aggregatorData",
413
+ "type": "tuple"
414
+ }
415
+ ],
416
+ "internalType": "struct ISwapper.SrcTokenSwapDetails[]",
417
+ "name": "srcData",
418
+ "type": "tuple[]"
419
+ },
420
+ {
421
+ "components": [
422
+ {
423
+ "internalType": "contract IERC20",
424
+ "name": "destToken",
425
+ "type": "address"
426
+ },
427
+ {
428
+ "internalType": "uint256",
429
+ "name": "minDestAmount",
430
+ "type": "uint256"
431
+ }
432
+ ],
433
+ "internalType": "struct ISwapper.DestData",
434
+ "name": "destData",
435
+ "type": "tuple"
436
+ }
437
+ ],
438
+ "internalType": "struct IWithdrawalVault.MultiInSingleOutData",
439
+ "name": "_swapData",
440
+ "type": "tuple"
441
+ },
442
+ {
443
+ "internalType": "uint256",
444
+ "name": "_expectedDestTokenAmount",
445
+ "type": "uint256"
446
+ }
447
+ ],
448
+ "name": "completeWithdrawal",
449
+ "outputs": [
450
+ {
451
+ "internalType": "uint256",
452
+ "name": "destTokenAmount",
453
+ "type": "uint256"
454
+ }
455
+ ],
456
+ "stateMutability": "nonpayable",
457
+ "type": "function"
458
+ },
459
+ {
460
+ "inputs": [],
461
+ "name": "completeWithdrawal",
462
+ "outputs": [],
463
+ "stateMutability": "nonpayable",
464
+ "type": "function"
465
+ },
466
+ {
467
+ "inputs": [],
468
+ "name": "customCooldown",
469
+ "outputs": [
470
+ {
471
+ "internalType": "uint256",
472
+ "name": "",
473
+ "type": "uint256"
474
+ }
475
+ ],
476
+ "stateMutability": "view",
477
+ "type": "function"
478
+ },
479
+ {
480
+ "inputs": [
481
+ {
482
+ "internalType": "address",
483
+ "name": "",
484
+ "type": "address"
485
+ }
486
+ ],
487
+ "name": "customCooldownDepositsWhitelist",
488
+ "outputs": [
489
+ {
490
+ "internalType": "bool",
491
+ "name": "",
492
+ "type": "bool"
493
+ }
494
+ ],
495
+ "stateMutability": "view",
496
+ "type": "function"
497
+ },
498
+ {
499
+ "inputs": [],
500
+ "name": "dHedgePoolFactory",
501
+ "outputs": [
502
+ {
503
+ "internalType": "address",
504
+ "name": "",
505
+ "type": "address"
506
+ }
507
+ ],
508
+ "stateMutability": "view",
509
+ "type": "function"
510
+ },
511
+ {
512
+ "inputs": [
513
+ {
514
+ "internalType": "address",
515
+ "name": "_dHedgeVault",
516
+ "type": "address"
517
+ },
518
+ {
519
+ "internalType": "contract IERC20",
520
+ "name": "_vaultDepositToken",
521
+ "type": "address"
522
+ },
523
+ {
524
+ "internalType": "uint256",
525
+ "name": "_depositAmount",
526
+ "type": "uint256"
527
+ },
528
+ {
529
+ "internalType": "uint256",
530
+ "name": "_expectedAmountReceived",
531
+ "type": "uint256"
532
+ }
533
+ ],
534
+ "name": "deposit",
535
+ "outputs": [],
536
+ "stateMutability": "nonpayable",
537
+ "type": "function"
538
+ },
539
+ {
540
+ "inputs": [
541
+ {
542
+ "internalType": "address",
543
+ "name": "_dHedgeVault",
544
+ "type": "address"
545
+ },
546
+ {
547
+ "internalType": "address",
548
+ "name": "_vaultDepositToken",
549
+ "type": "address"
550
+ },
551
+ {
552
+ "internalType": "uint256",
553
+ "name": "_depositAmount",
554
+ "type": "uint256"
555
+ }
556
+ ],
557
+ "name": "depositQuote",
558
+ "outputs": [
559
+ {
560
+ "internalType": "uint256",
561
+ "name": "expectedAmountReceived",
562
+ "type": "uint256"
563
+ }
564
+ ],
565
+ "stateMutability": "view",
566
+ "type": "function"
567
+ },
568
+ {
569
+ "inputs": [
570
+ {
571
+ "internalType": "address",
572
+ "name": "_dHedgeVault",
573
+ "type": "address"
574
+ },
575
+ {
576
+ "internalType": "contract IERC20",
577
+ "name": "_vaultDepositToken",
578
+ "type": "address"
579
+ },
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "_depositAmount",
583
+ "type": "uint256"
584
+ },
585
+ {
586
+ "internalType": "uint256",
587
+ "name": "_expectedAmountReceived",
588
+ "type": "uint256"
589
+ }
590
+ ],
591
+ "name": "depositWithCustomCooldown",
592
+ "outputs": [],
593
+ "stateMutability": "nonpayable",
594
+ "type": "function"
595
+ },
596
+ {
597
+ "inputs": [
598
+ {
599
+ "internalType": "uint8",
600
+ "name": "",
601
+ "type": "uint8"
602
+ }
603
+ ],
604
+ "name": "getLogic",
605
+ "outputs": [
606
+ {
607
+ "internalType": "address",
608
+ "name": "",
609
+ "type": "address"
610
+ }
611
+ ],
612
+ "stateMutability": "view",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "inputs": [
617
+ {
618
+ "internalType": "address",
619
+ "name": "_depositor",
620
+ "type": "address"
621
+ }
622
+ ],
623
+ "name": "getTrackedAssets",
624
+ "outputs": [
625
+ {
626
+ "components": [
627
+ {
628
+ "internalType": "address",
629
+ "name": "token",
630
+ "type": "address"
631
+ },
632
+ {
633
+ "internalType": "uint256",
634
+ "name": "balance",
635
+ "type": "uint256"
636
+ }
637
+ ],
638
+ "internalType": "struct IWithdrawalVault.TrackedAsset[]",
639
+ "name": "trackedAssets",
640
+ "type": "tuple[]"
641
+ }
642
+ ],
643
+ "stateMutability": "view",
644
+ "type": "function"
645
+ },
646
+ {
647
+ "inputs": [
648
+ {
649
+ "internalType": "address",
650
+ "name": "_depositor",
651
+ "type": "address"
652
+ }
653
+ ],
654
+ "name": "getTrackedAssetsFromLimitOrders",
655
+ "outputs": [
656
+ {
657
+ "components": [
658
+ {
659
+ "internalType": "address",
660
+ "name": "token",
661
+ "type": "address"
662
+ },
663
+ {
664
+ "internalType": "uint256",
665
+ "name": "balance",
666
+ "type": "uint256"
667
+ }
668
+ ],
669
+ "internalType": "struct IWithdrawalVault.TrackedAsset[]",
670
+ "name": "trackedAssets",
671
+ "type": "tuple[]"
672
+ }
673
+ ],
674
+ "stateMutability": "view",
675
+ "type": "function"
676
+ },
677
+ {
678
+ "inputs": [
679
+ {
680
+ "internalType": "address",
681
+ "name": "_user",
682
+ "type": "address"
683
+ },
684
+ {
685
+ "internalType": "address",
686
+ "name": "_dHedgeVault",
687
+ "type": "address"
688
+ },
689
+ {
690
+ "internalType": "uint256",
691
+ "name": "_amountIn",
692
+ "type": "uint256"
693
+ },
694
+ {
695
+ "components": [
696
+ {
697
+ "internalType": "address",
698
+ "name": "supportedAsset",
699
+ "type": "address"
700
+ },
701
+ {
702
+ "internalType": "bytes",
703
+ "name": "withdrawData",
704
+ "type": "bytes"
705
+ },
706
+ {
707
+ "internalType": "uint256",
708
+ "name": "slippageTolerance",
709
+ "type": "uint256"
710
+ }
711
+ ],
712
+ "internalType": "struct IPoolLogic.ComplexAsset[]",
713
+ "name": "_complexAssetsData",
714
+ "type": "tuple[]"
715
+ }
716
+ ],
717
+ "name": "initLimitOrderWithdrawalFor",
718
+ "outputs": [
719
+ {
720
+ "components": [
721
+ {
722
+ "internalType": "address",
723
+ "name": "token",
724
+ "type": "address"
725
+ },
726
+ {
727
+ "internalType": "uint256",
728
+ "name": "balance",
729
+ "type": "uint256"
730
+ }
731
+ ],
732
+ "internalType": "struct IWithdrawalVault.TrackedAsset[]",
733
+ "name": "trackedAssets",
734
+ "type": "tuple[]"
735
+ },
736
+ {
737
+ "internalType": "address",
738
+ "name": "vault",
739
+ "type": "address"
740
+ }
741
+ ],
742
+ "stateMutability": "nonpayable",
743
+ "type": "function"
744
+ },
745
+ {
746
+ "inputs": [
747
+ {
748
+ "internalType": "address",
749
+ "name": "_dHedgeVault",
750
+ "type": "address"
751
+ },
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "_amountIn",
755
+ "type": "uint256"
756
+ },
757
+ {
758
+ "components": [
759
+ {
760
+ "internalType": "address",
761
+ "name": "supportedAsset",
762
+ "type": "address"
763
+ },
764
+ {
765
+ "internalType": "bytes",
766
+ "name": "withdrawData",
767
+ "type": "bytes"
768
+ },
769
+ {
770
+ "internalType": "uint256",
771
+ "name": "slippageTolerance",
772
+ "type": "uint256"
773
+ }
774
+ ],
775
+ "internalType": "struct IPoolLogic.ComplexAsset[]",
776
+ "name": "_complexAssetsData",
777
+ "type": "tuple[]"
778
+ }
779
+ ],
780
+ "name": "initWithdrawal",
781
+ "outputs": [
782
+ {
783
+ "components": [
784
+ {
785
+ "internalType": "address",
786
+ "name": "token",
787
+ "type": "address"
788
+ },
789
+ {
790
+ "internalType": "uint256",
791
+ "name": "balance",
792
+ "type": "uint256"
793
+ }
794
+ ],
795
+ "internalType": "struct IWithdrawalVault.TrackedAsset[]",
796
+ "name": "trackedAssets",
797
+ "type": "tuple[]"
798
+ },
799
+ {
800
+ "internalType": "address",
801
+ "name": "vault",
802
+ "type": "address"
803
+ }
804
+ ],
805
+ "stateMutability": "nonpayable",
806
+ "type": "function"
807
+ },
808
+ {
809
+ "inputs": [
810
+ {
811
+ "internalType": "address",
812
+ "name": "_vaultLogic",
813
+ "type": "address"
814
+ },
815
+ {
816
+ "internalType": "address",
817
+ "name": "_weth",
818
+ "type": "address"
819
+ },
820
+ {
821
+ "internalType": "contract IWETH",
822
+ "name": "_wrappedNativeToken",
823
+ "type": "address"
824
+ },
825
+ {
826
+ "internalType": "contract ISwapper",
827
+ "name": "_swapper",
828
+ "type": "address"
829
+ },
830
+ {
831
+ "internalType": "uint256",
832
+ "name": "_customCooldown",
833
+ "type": "uint256"
834
+ }
835
+ ],
836
+ "name": "initialize",
837
+ "outputs": [],
838
+ "stateMutability": "nonpayable",
839
+ "type": "function"
840
+ },
841
+ {
842
+ "inputs": [
843
+ {
844
+ "internalType": "address",
845
+ "name": "",
846
+ "type": "address"
847
+ }
848
+ ],
849
+ "name": "isAuthorizedWithdrawer",
850
+ "outputs": [
851
+ {
852
+ "internalType": "bool",
853
+ "name": "",
854
+ "type": "bool"
855
+ }
856
+ ],
857
+ "stateMutability": "view",
858
+ "type": "function"
859
+ },
860
+ {
861
+ "inputs": [
862
+ {
863
+ "internalType": "address",
864
+ "name": "_dHedgeVault",
865
+ "type": "address"
866
+ }
867
+ ],
868
+ "name": "isdHedgeVault",
869
+ "outputs": [
870
+ {
871
+ "internalType": "bool",
872
+ "name": "isVault",
873
+ "type": "bool"
874
+ }
875
+ ],
876
+ "stateMutability": "view",
877
+ "type": "function"
878
+ },
879
+ {
880
+ "inputs": [
881
+ {
882
+ "internalType": "address",
883
+ "name": "",
884
+ "type": "address"
885
+ }
886
+ ],
887
+ "name": "limitOrderContracts",
888
+ "outputs": [
889
+ {
890
+ "internalType": "address",
891
+ "name": "",
892
+ "type": "address"
893
+ }
894
+ ],
895
+ "stateMutability": "view",
896
+ "type": "function"
897
+ },
898
+ {
899
+ "inputs": [
900
+ {
901
+ "internalType": "address",
902
+ "name": "_dHedgeVault",
903
+ "type": "address"
904
+ },
905
+ {
906
+ "internalType": "uint256",
907
+ "name": "_expectedAmountReceived",
908
+ "type": "uint256"
909
+ }
910
+ ],
911
+ "name": "nativeDeposit",
912
+ "outputs": [],
913
+ "stateMutability": "payable",
914
+ "type": "function"
915
+ },
916
+ {
917
+ "inputs": [
918
+ {
919
+ "internalType": "address",
920
+ "name": "_dHedgeVault",
921
+ "type": "address"
922
+ },
923
+ {
924
+ "internalType": "uint256",
925
+ "name": "_expectedAmountReceived",
926
+ "type": "uint256"
927
+ }
928
+ ],
929
+ "name": "nativeDepositWithCustomCooldown",
930
+ "outputs": [],
931
+ "stateMutability": "payable",
932
+ "type": "function"
933
+ },
934
+ {
935
+ "inputs": [],
936
+ "name": "owner",
937
+ "outputs": [
938
+ {
939
+ "internalType": "address",
940
+ "name": "",
941
+ "type": "address"
942
+ }
943
+ ],
944
+ "stateMutability": "view",
945
+ "type": "function"
946
+ },
947
+ {
948
+ "inputs": [
949
+ {
950
+ "internalType": "uint256",
951
+ "name": "_portion",
952
+ "type": "uint256"
953
+ },
954
+ {
955
+ "internalType": "address",
956
+ "name": "_to",
957
+ "type": "address"
958
+ }
959
+ ],
960
+ "name": "partialWithdraw",
961
+ "outputs": [],
962
+ "stateMutability": "nonpayable",
963
+ "type": "function"
964
+ },
965
+ {
966
+ "inputs": [],
967
+ "name": "renounceOwnership",
968
+ "outputs": [],
969
+ "stateMutability": "nonpayable",
970
+ "type": "function"
971
+ },
972
+ {
973
+ "inputs": [
974
+ {
975
+ "components": [
976
+ {
977
+ "internalType": "address",
978
+ "name": "toWhitelist",
979
+ "type": "address"
980
+ },
981
+ {
982
+ "internalType": "bool",
983
+ "name": "whitelisted",
984
+ "type": "bool"
985
+ }
986
+ ],
987
+ "internalType": "struct EasySwapperV2.WhitelistSetting[]",
988
+ "name": "_whitelistSettings",
989
+ "type": "tuple[]"
990
+ }
991
+ ],
992
+ "name": "setAuthorizedWithdrawers",
993
+ "outputs": [],
994
+ "stateMutability": "nonpayable",
995
+ "type": "function"
996
+ },
997
+ {
998
+ "inputs": [
999
+ {
1000
+ "internalType": "uint256",
1001
+ "name": "_customCooldown",
1002
+ "type": "uint256"
1003
+ }
1004
+ ],
1005
+ "name": "setCustomCooldown",
1006
+ "outputs": [],
1007
+ "stateMutability": "nonpayable",
1008
+ "type": "function"
1009
+ },
1010
+ {
1011
+ "inputs": [
1012
+ {
1013
+ "components": [
1014
+ {
1015
+ "internalType": "address",
1016
+ "name": "toWhitelist",
1017
+ "type": "address"
1018
+ },
1019
+ {
1020
+ "internalType": "bool",
1021
+ "name": "whitelisted",
1022
+ "type": "bool"
1023
+ }
1024
+ ],
1025
+ "internalType": "struct EasySwapperV2.WhitelistSetting[]",
1026
+ "name": "_whitelistSettings",
1027
+ "type": "tuple[]"
1028
+ }
1029
+ ],
1030
+ "name": "setCustomCooldownWhitelist",
1031
+ "outputs": [],
1032
+ "stateMutability": "nonpayable",
1033
+ "type": "function"
1034
+ },
1035
+ {
1036
+ "inputs": [
1037
+ {
1038
+ "internalType": "address",
1039
+ "name": "_vaultLogic",
1040
+ "type": "address"
1041
+ }
1042
+ ],
1043
+ "name": "setLogic",
1044
+ "outputs": [],
1045
+ "stateMutability": "nonpayable",
1046
+ "type": "function"
1047
+ },
1048
+ {
1049
+ "inputs": [
1050
+ {
1051
+ "internalType": "contract ISwapper",
1052
+ "name": "_swapper",
1053
+ "type": "address"
1054
+ }
1055
+ ],
1056
+ "name": "setSwapper",
1057
+ "outputs": [],
1058
+ "stateMutability": "nonpayable",
1059
+ "type": "function"
1060
+ },
1061
+ {
1062
+ "inputs": [
1063
+ {
1064
+ "internalType": "address",
1065
+ "name": "_dHedgePoolFactory",
1066
+ "type": "address"
1067
+ }
1068
+ ],
1069
+ "name": "setdHedgePoolFactory",
1070
+ "outputs": [],
1071
+ "stateMutability": "nonpayable",
1072
+ "type": "function"
1073
+ },
1074
+ {
1075
+ "inputs": [],
1076
+ "name": "swapper",
1077
+ "outputs": [
1078
+ {
1079
+ "internalType": "contract ISwapper",
1080
+ "name": "",
1081
+ "type": "address"
1082
+ }
1083
+ ],
1084
+ "stateMutability": "view",
1085
+ "type": "function"
1086
+ },
1087
+ {
1088
+ "inputs": [
1089
+ {
1090
+ "internalType": "address",
1091
+ "name": "newOwner",
1092
+ "type": "address"
1093
+ }
1094
+ ],
1095
+ "name": "transferOwnership",
1096
+ "outputs": [],
1097
+ "stateMutability": "nonpayable",
1098
+ "type": "function"
1099
+ },
1100
+ {
1101
+ "inputs": [
1102
+ {
1103
+ "internalType": "address",
1104
+ "name": "_dHedgeVault",
1105
+ "type": "address"
1106
+ },
1107
+ {
1108
+ "internalType": "uint256",
1109
+ "name": "_amountIn",
1110
+ "type": "uint256"
1111
+ },
1112
+ {
1113
+ "components": [
1114
+ {
1115
+ "internalType": "address",
1116
+ "name": "supportedAsset",
1117
+ "type": "address"
1118
+ },
1119
+ {
1120
+ "internalType": "bytes",
1121
+ "name": "withdrawData",
1122
+ "type": "bytes"
1123
+ },
1124
+ {
1125
+ "internalType": "uint256",
1126
+ "name": "slippageTolerance",
1127
+ "type": "uint256"
1128
+ }
1129
+ ],
1130
+ "internalType": "struct IPoolLogic.ComplexAsset[]",
1131
+ "name": "_complexAssetsData",
1132
+ "type": "tuple[]"
1133
+ }
1134
+ ],
1135
+ "name": "unrollAndClaim",
1136
+ "outputs": [
1137
+ {
1138
+ "components": [
1139
+ {
1140
+ "internalType": "address",
1141
+ "name": "token",
1142
+ "type": "address"
1143
+ },
1144
+ {
1145
+ "internalType": "uint256",
1146
+ "name": "balance",
1147
+ "type": "uint256"
1148
+ }
1149
+ ],
1150
+ "internalType": "struct IWithdrawalVault.TrackedAsset[]",
1151
+ "name": "",
1152
+ "type": "tuple[]"
1153
+ }
1154
+ ],
1155
+ "stateMutability": "nonpayable",
1156
+ "type": "function"
1157
+ },
1158
+ {
1159
+ "inputs": [],
1160
+ "name": "weth",
1161
+ "outputs": [
1162
+ {
1163
+ "internalType": "address",
1164
+ "name": "",
1165
+ "type": "address"
1166
+ }
1167
+ ],
1168
+ "stateMutability": "view",
1169
+ "type": "function"
1170
+ },
1171
+ {
1172
+ "inputs": [
1173
+ {
1174
+ "internalType": "address",
1175
+ "name": "",
1176
+ "type": "address"
1177
+ }
1178
+ ],
1179
+ "name": "withdrawalContracts",
1180
+ "outputs": [
1181
+ {
1182
+ "internalType": "address",
1183
+ "name": "",
1184
+ "type": "address"
1185
+ }
1186
+ ],
1187
+ "stateMutability": "view",
1188
+ "type": "function"
1189
+ },
1190
+ {
1191
+ "inputs": [],
1192
+ "name": "wrappedNativeToken",
1193
+ "outputs": [
1194
+ {
1195
+ "internalType": "contract IWETH",
1196
+ "name": "",
1197
+ "type": "address"
1198
+ }
1199
+ ],
1200
+ "stateMutability": "view",
1201
+ "type": "function"
1202
+ },
1203
+ {
1204
+ "inputs": [
1205
+ {
1206
+ "internalType": "address",
1207
+ "name": "_dHedgeVault",
1208
+ "type": "address"
1209
+ },
1210
+ {
1211
+ "components": [
1212
+ {
1213
+ "components": [
1214
+ {
1215
+ "internalType": "contract IERC20",
1216
+ "name": "token",
1217
+ "type": "address"
1218
+ },
1219
+ {
1220
+ "internalType": "uint256",
1221
+ "name": "amount",
1222
+ "type": "uint256"
1223
+ },
1224
+ {
1225
+ "components": [
1226
+ {
1227
+ "internalType": "bytes32",
1228
+ "name": "routerKey",
1229
+ "type": "bytes32"
1230
+ },
1231
+ {
1232
+ "internalType": "bytes",
1233
+ "name": "swapData",
1234
+ "type": "bytes"
1235
+ }
1236
+ ],
1237
+ "internalType": "struct ISwapper.AggregatorData",
1238
+ "name": "aggregatorData",
1239
+ "type": "tuple"
1240
+ }
1241
+ ],
1242
+ "internalType": "struct ISwapper.SrcTokenSwapDetails",
1243
+ "name": "srcData",
1244
+ "type": "tuple"
1245
+ },
1246
+ {
1247
+ "components": [
1248
+ {
1249
+ "internalType": "contract IERC20",
1250
+ "name": "destToken",
1251
+ "type": "address"
1252
+ },
1253
+ {
1254
+ "internalType": "uint256",
1255
+ "name": "minDestAmount",
1256
+ "type": "uint256"
1257
+ }
1258
+ ],
1259
+ "internalType": "struct ISwapper.DestData",
1260
+ "name": "destData",
1261
+ "type": "tuple"
1262
+ }
1263
+ ],
1264
+ "internalType": "struct EasySwapperV2.SingleInSingleOutData",
1265
+ "name": "_swapData",
1266
+ "type": "tuple"
1267
+ },
1268
+ {
1269
+ "internalType": "uint256",
1270
+ "name": "_expectedAmountReceived",
1271
+ "type": "uint256"
1272
+ }
1273
+ ],
1274
+ "name": "zapDeposit",
1275
+ "outputs": [],
1276
+ "stateMutability": "nonpayable",
1277
+ "type": "function"
1278
+ },
1279
+ {
1280
+ "inputs": [
1281
+ {
1282
+ "internalType": "address",
1283
+ "name": "_dHedgeVault",
1284
+ "type": "address"
1285
+ },
1286
+ {
1287
+ "components": [
1288
+ {
1289
+ "components": [
1290
+ {
1291
+ "internalType": "contract IERC20",
1292
+ "name": "token",
1293
+ "type": "address"
1294
+ },
1295
+ {
1296
+ "internalType": "uint256",
1297
+ "name": "amount",
1298
+ "type": "uint256"
1299
+ },
1300
+ {
1301
+ "components": [
1302
+ {
1303
+ "internalType": "bytes32",
1304
+ "name": "routerKey",
1305
+ "type": "bytes32"
1306
+ },
1307
+ {
1308
+ "internalType": "bytes",
1309
+ "name": "swapData",
1310
+ "type": "bytes"
1311
+ }
1312
+ ],
1313
+ "internalType": "struct ISwapper.AggregatorData",
1314
+ "name": "aggregatorData",
1315
+ "type": "tuple"
1316
+ }
1317
+ ],
1318
+ "internalType": "struct ISwapper.SrcTokenSwapDetails",
1319
+ "name": "srcData",
1320
+ "type": "tuple"
1321
+ },
1322
+ {
1323
+ "components": [
1324
+ {
1325
+ "internalType": "contract IERC20",
1326
+ "name": "destToken",
1327
+ "type": "address"
1328
+ },
1329
+ {
1330
+ "internalType": "uint256",
1331
+ "name": "minDestAmount",
1332
+ "type": "uint256"
1333
+ }
1334
+ ],
1335
+ "internalType": "struct ISwapper.DestData",
1336
+ "name": "destData",
1337
+ "type": "tuple"
1338
+ }
1339
+ ],
1340
+ "internalType": "struct EasySwapperV2.SingleInSingleOutData",
1341
+ "name": "_swapData",
1342
+ "type": "tuple"
1343
+ },
1344
+ {
1345
+ "internalType": "uint256",
1346
+ "name": "_expectedAmountReceived",
1347
+ "type": "uint256"
1348
+ }
1349
+ ],
1350
+ "name": "zapDepositWithCustomCooldown",
1351
+ "outputs": [],
1352
+ "stateMutability": "nonpayable",
1353
+ "type": "function"
1354
+ },
1355
+ {
1356
+ "inputs": [
1357
+ {
1358
+ "internalType": "address",
1359
+ "name": "_dHedgeVault",
1360
+ "type": "address"
1361
+ },
1362
+ {
1363
+ "components": [
1364
+ {
1365
+ "components": [
1366
+ {
1367
+ "internalType": "contract IERC20",
1368
+ "name": "token",
1369
+ "type": "address"
1370
+ },
1371
+ {
1372
+ "internalType": "uint256",
1373
+ "name": "amount",
1374
+ "type": "uint256"
1375
+ },
1376
+ {
1377
+ "components": [
1378
+ {
1379
+ "internalType": "bytes32",
1380
+ "name": "routerKey",
1381
+ "type": "bytes32"
1382
+ },
1383
+ {
1384
+ "internalType": "bytes",
1385
+ "name": "swapData",
1386
+ "type": "bytes"
1387
+ }
1388
+ ],
1389
+ "internalType": "struct ISwapper.AggregatorData",
1390
+ "name": "aggregatorData",
1391
+ "type": "tuple"
1392
+ }
1393
+ ],
1394
+ "internalType": "struct ISwapper.SrcTokenSwapDetails",
1395
+ "name": "srcData",
1396
+ "type": "tuple"
1397
+ },
1398
+ {
1399
+ "components": [
1400
+ {
1401
+ "internalType": "contract IERC20",
1402
+ "name": "destToken",
1403
+ "type": "address"
1404
+ },
1405
+ {
1406
+ "internalType": "uint256",
1407
+ "name": "minDestAmount",
1408
+ "type": "uint256"
1409
+ }
1410
+ ],
1411
+ "internalType": "struct ISwapper.DestData",
1412
+ "name": "destData",
1413
+ "type": "tuple"
1414
+ }
1415
+ ],
1416
+ "internalType": "struct EasySwapperV2.SingleInSingleOutData",
1417
+ "name": "_swapData",
1418
+ "type": "tuple"
1419
+ },
1420
+ {
1421
+ "internalType": "uint256",
1422
+ "name": "_expectedAmountReceived",
1423
+ "type": "uint256"
1424
+ }
1425
+ ],
1426
+ "name": "zapNativeDeposit",
1427
+ "outputs": [],
1428
+ "stateMutability": "payable",
1429
+ "type": "function"
1430
+ },
1431
+ {
1432
+ "inputs": [
1433
+ {
1434
+ "internalType": "address",
1435
+ "name": "_dHedgeVault",
1436
+ "type": "address"
1437
+ },
1438
+ {
1439
+ "components": [
1440
+ {
1441
+ "components": [
1442
+ {
1443
+ "internalType": "contract IERC20",
1444
+ "name": "token",
1445
+ "type": "address"
1446
+ },
1447
+ {
1448
+ "internalType": "uint256",
1449
+ "name": "amount",
1450
+ "type": "uint256"
1451
+ },
1452
+ {
1453
+ "components": [
1454
+ {
1455
+ "internalType": "bytes32",
1456
+ "name": "routerKey",
1457
+ "type": "bytes32"
1458
+ },
1459
+ {
1460
+ "internalType": "bytes",
1461
+ "name": "swapData",
1462
+ "type": "bytes"
1463
+ }
1464
+ ],
1465
+ "internalType": "struct ISwapper.AggregatorData",
1466
+ "name": "aggregatorData",
1467
+ "type": "tuple"
1468
+ }
1469
+ ],
1470
+ "internalType": "struct ISwapper.SrcTokenSwapDetails",
1471
+ "name": "srcData",
1472
+ "type": "tuple"
1473
+ },
1474
+ {
1475
+ "components": [
1476
+ {
1477
+ "internalType": "contract IERC20",
1478
+ "name": "destToken",
1479
+ "type": "address"
1480
+ },
1481
+ {
1482
+ "internalType": "uint256",
1483
+ "name": "minDestAmount",
1484
+ "type": "uint256"
1485
+ }
1486
+ ],
1487
+ "internalType": "struct ISwapper.DestData",
1488
+ "name": "destData",
1489
+ "type": "tuple"
1490
+ }
1491
+ ],
1492
+ "internalType": "struct EasySwapperV2.SingleInSingleOutData",
1493
+ "name": "_swapData",
1494
+ "type": "tuple"
1495
+ },
1496
+ {
1497
+ "internalType": "uint256",
1498
+ "name": "_expectedAmountReceived",
1499
+ "type": "uint256"
1500
+ }
1501
+ ],
1502
+ "name": "zapNativeDepositWithCustomCooldown",
1503
+ "outputs": [],
1504
+ "stateMutability": "payable",
1505
+ "type": "function"
1506
+ }
1507
+ ]