@switch-win/sdk 1.0.3 → 1.0.5

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.
@@ -1,954 +1 @@
1
- [
2
- {
3
- "type": "constructor",
4
- "inputs": [
5
- {
6
- "name": "_adapters",
7
- "type": "address[]",
8
- "internalType": "address[]"
9
- },
10
- {
11
- "name": "_feeClaimer",
12
- "type": "address",
13
- "internalType": "address"
14
- },
15
- {
16
- "name": "_wrapped_native",
17
- "type": "address",
18
- "internalType": "address"
19
- }
20
- ],
21
- "stateMutability": "nonpayable"
22
- },
23
- {
24
- "type": "receive",
25
- "stateMutability": "payable"
26
- },
27
- {
28
- "type": "function",
29
- "name": "ADAPTERS",
30
- "inputs": [
31
- {
32
- "name": "",
33
- "type": "uint256",
34
- "internalType": "uint256"
35
- }
36
- ],
37
- "outputs": [
38
- {
39
- "name": "",
40
- "type": "address",
41
- "internalType": "address"
42
- }
43
- ],
44
- "stateMutability": "view"
45
- },
46
- {
47
- "type": "function",
48
- "name": "APPROVED_ADAPTERS",
49
- "inputs": [
50
- {
51
- "name": "",
52
- "type": "address",
53
- "internalType": "address"
54
- }
55
- ],
56
- "outputs": [
57
- {
58
- "name": "",
59
- "type": "bool",
60
- "internalType": "bool"
61
- }
62
- ],
63
- "stateMutability": "view"
64
- },
65
- {
66
- "type": "function",
67
- "name": "DEFAULT_ADMIN_ROLE",
68
- "inputs": [
69
-
70
- ],
71
- "outputs": [
72
- {
73
- "name": "",
74
- "type": "bytes32",
75
- "internalType": "bytes32"
76
- }
77
- ],
78
- "stateMutability": "view"
79
- },
80
- {
81
- "type": "function",
82
- "name": "FEE_CLAIMER",
83
- "inputs": [
84
-
85
- ],
86
- "outputs": [
87
- {
88
- "name": "",
89
- "type": "address",
90
- "internalType": "address"
91
- }
92
- ],
93
- "stateMutability": "view"
94
- },
95
- {
96
- "type": "function",
97
- "name": "FEE_DENOMINATOR",
98
- "inputs": [
99
-
100
- ],
101
- "outputs": [
102
- {
103
- "name": "",
104
- "type": "uint256",
105
- "internalType": "uint256"
106
- }
107
- ],
108
- "stateMutability": "view"
109
- },
110
- {
111
- "type": "function",
112
- "name": "FEE_EXEMPT",
113
- "inputs": [
114
- {
115
- "name": "",
116
- "type": "address",
117
- "internalType": "address"
118
- }
119
- ],
120
- "outputs": [
121
- {
122
- "name": "",
123
- "type": "bool",
124
- "internalType": "bool"
125
- }
126
- ],
127
- "stateMutability": "view"
128
- },
129
- {
130
- "type": "function",
131
- "name": "LIMIT_ORDER_CONTRACT",
132
- "inputs": [
133
-
134
- ],
135
- "outputs": [
136
- {
137
- "name": "",
138
- "type": "address",
139
- "internalType": "address"
140
- }
141
- ],
142
- "stateMutability": "view"
143
- },
144
- {
145
- "type": "function",
146
- "name": "MAINTAINER_ROLE",
147
- "inputs": [
148
-
149
- ],
150
- "outputs": [
151
- {
152
- "name": "",
153
- "type": "bytes32",
154
- "internalType": "bytes32"
155
- }
156
- ],
157
- "stateMutability": "view"
158
- },
159
- {
160
- "type": "function",
161
- "name": "MAX_FEE",
162
- "inputs": [
163
-
164
- ],
165
- "outputs": [
166
- {
167
- "name": "",
168
- "type": "uint256",
169
- "internalType": "uint256"
170
- }
171
- ],
172
- "stateMutability": "view"
173
- },
174
- {
175
- "type": "function",
176
- "name": "MIN_FEE",
177
- "inputs": [
178
-
179
- ],
180
- "outputs": [
181
- {
182
- "name": "",
183
- "type": "uint256",
184
- "internalType": "uint256"
185
- }
186
- ],
187
- "stateMutability": "view"
188
- },
189
- {
190
- "type": "function",
191
- "name": "MIN_FEE_EXEMPT",
192
- "inputs": [
193
- {
194
- "name": "",
195
- "type": "address",
196
- "internalType": "address"
197
- }
198
- ],
199
- "outputs": [
200
- {
201
- "name": "",
202
- "type": "bool",
203
- "internalType": "bool"
204
- }
205
- ],
206
- "stateMutability": "view"
207
- },
208
- {
209
- "type": "function",
210
- "name": "NATIVE",
211
- "inputs": [
212
-
213
- ],
214
- "outputs": [
215
- {
216
- "name": "",
217
- "type": "address",
218
- "internalType": "address"
219
- }
220
- ],
221
- "stateMutability": "view"
222
- },
223
- {
224
- "type": "function",
225
- "name": "PARTNER_FEE_SHARE",
226
- "inputs": [
227
-
228
- ],
229
- "outputs": [
230
- {
231
- "name": "",
232
- "type": "uint256",
233
- "internalType": "uint256"
234
- }
235
- ],
236
- "stateMutability": "view"
237
- },
238
- {
239
- "type": "function",
240
- "name": "WNATIVE",
241
- "inputs": [
242
-
243
- ],
244
- "outputs": [
245
- {
246
- "name": "",
247
- "type": "address",
248
- "internalType": "address"
249
- }
250
- ],
251
- "stateMutability": "view"
252
- },
253
- {
254
- "type": "function",
255
- "name": "adaptersCount",
256
- "inputs": [
257
-
258
- ],
259
- "outputs": [
260
- {
261
- "name": "",
262
- "type": "uint256",
263
- "internalType": "uint256"
264
- }
265
- ],
266
- "stateMutability": "view"
267
- },
268
- {
269
- "type": "function",
270
- "name": "addMaintainer",
271
- "inputs": [
272
- {
273
- "name": "addedMaintainer",
274
- "type": "address",
275
- "internalType": "address"
276
- }
277
- ],
278
- "outputs": [
279
-
280
- ],
281
- "stateMutability": "nonpayable"
282
- },
283
- {
284
- "type": "function",
285
- "name": "getRoleAdmin",
286
- "inputs": [
287
- {
288
- "name": "role",
289
- "type": "bytes32",
290
- "internalType": "bytes32"
291
- }
292
- ],
293
- "outputs": [
294
- {
295
- "name": "",
296
- "type": "bytes32",
297
- "internalType": "bytes32"
298
- }
299
- ],
300
- "stateMutability": "view"
301
- },
302
- {
303
- "type": "function",
304
- "name": "goSwitch",
305
- "inputs": [
306
- {
307
- "name": "_routes",
308
- "type": "tuple[]",
309
- "internalType": "struct RouteAllocation[]",
310
- "components": [
311
- {
312
- "name": "amountIn",
313
- "type": "uint256",
314
- "internalType": "uint256"
315
- },
316
- {
317
- "name": "hops",
318
- "type": "tuple[]",
319
- "internalType": "struct HopAllocation[]",
320
- "components": [
321
- {
322
- "name": "tokenIn",
323
- "type": "address",
324
- "internalType": "address"
325
- },
326
- {
327
- "name": "tokenOut",
328
- "type": "address",
329
- "internalType": "address"
330
- },
331
- {
332
- "name": "legs",
333
- "type": "tuple[]",
334
- "internalType": "struct HopAdapterAllocation[]",
335
- "components": [
336
- {
337
- "name": "adapter",
338
- "type": "address",
339
- "internalType": "address"
340
- },
341
- {
342
- "name": "amountIn",
343
- "type": "uint256",
344
- "internalType": "uint256"
345
- }
346
- ]
347
- }
348
- ]
349
- }
350
- ]
351
- },
352
- {
353
- "name": "_to",
354
- "type": "address",
355
- "internalType": "address"
356
- },
357
- {
358
- "name": "_minTotalAmountOut",
359
- "type": "uint256",
360
- "internalType": "uint256"
361
- },
362
- {
363
- "name": "_fee",
364
- "type": "uint256",
365
- "internalType": "uint256"
366
- },
367
- {
368
- "name": "_feeOnOutput",
369
- "type": "bool",
370
- "internalType": "bool"
371
- },
372
- {
373
- "name": "_unwrapOutput",
374
- "type": "bool",
375
- "internalType": "bool"
376
- },
377
- {
378
- "name": "_partnerAddress",
379
- "type": "address",
380
- "internalType": "address"
381
- }
382
- ],
383
- "outputs": [
384
-
385
- ],
386
- "stateMutability": "payable"
387
- },
388
- {
389
- "type": "function",
390
- "name": "goSwitchFrom",
391
- "inputs": [
392
- {
393
- "name": "_payer",
394
- "type": "address",
395
- "internalType": "address"
396
- },
397
- {
398
- "name": "_routes",
399
- "type": "tuple[]",
400
- "internalType": "struct RouteAllocation[]",
401
- "components": [
402
- {
403
- "name": "amountIn",
404
- "type": "uint256",
405
- "internalType": "uint256"
406
- },
407
- {
408
- "name": "hops",
409
- "type": "tuple[]",
410
- "internalType": "struct HopAllocation[]",
411
- "components": [
412
- {
413
- "name": "tokenIn",
414
- "type": "address",
415
- "internalType": "address"
416
- },
417
- {
418
- "name": "tokenOut",
419
- "type": "address",
420
- "internalType": "address"
421
- },
422
- {
423
- "name": "legs",
424
- "type": "tuple[]",
425
- "internalType": "struct HopAdapterAllocation[]",
426
- "components": [
427
- {
428
- "name": "adapter",
429
- "type": "address",
430
- "internalType": "address"
431
- },
432
- {
433
- "name": "amountIn",
434
- "type": "uint256",
435
- "internalType": "uint256"
436
- }
437
- ]
438
- }
439
- ]
440
- }
441
- ]
442
- },
443
- {
444
- "name": "_to",
445
- "type": "address",
446
- "internalType": "address"
447
- },
448
- {
449
- "name": "_minTotalAmountOut",
450
- "type": "uint256",
451
- "internalType": "uint256"
452
- },
453
- {
454
- "name": "_unwrapOutput",
455
- "type": "bool",
456
- "internalType": "bool"
457
- }
458
- ],
459
- "outputs": [
460
-
461
- ],
462
- "stateMutability": "nonpayable"
463
- },
464
- {
465
- "type": "function",
466
- "name": "grantRole",
467
- "inputs": [
468
- {
469
- "name": "role",
470
- "type": "bytes32",
471
- "internalType": "bytes32"
472
- },
473
- {
474
- "name": "account",
475
- "type": "address",
476
- "internalType": "address"
477
- }
478
- ],
479
- "outputs": [
480
-
481
- ],
482
- "stateMutability": "nonpayable"
483
- },
484
- {
485
- "type": "function",
486
- "name": "hasRole",
487
- "inputs": [
488
- {
489
- "name": "role",
490
- "type": "bytes32",
491
- "internalType": "bytes32"
492
- },
493
- {
494
- "name": "account",
495
- "type": "address",
496
- "internalType": "address"
497
- }
498
- ],
499
- "outputs": [
500
- {
501
- "name": "",
502
- "type": "bool",
503
- "internalType": "bool"
504
- }
505
- ],
506
- "stateMutability": "view"
507
- },
508
- {
509
- "type": "function",
510
- "name": "recoverERC20",
511
- "inputs": [
512
- {
513
- "name": "_tokenAddress",
514
- "type": "address",
515
- "internalType": "address"
516
- },
517
- {
518
- "name": "_tokenAmount",
519
- "type": "uint256",
520
- "internalType": "uint256"
521
- }
522
- ],
523
- "outputs": [
524
-
525
- ],
526
- "stateMutability": "nonpayable"
527
- },
528
- {
529
- "type": "function",
530
- "name": "recoverNative",
531
- "inputs": [
532
- {
533
- "name": "_amount",
534
- "type": "uint256",
535
- "internalType": "uint256"
536
- }
537
- ],
538
- "outputs": [
539
-
540
- ],
541
- "stateMutability": "nonpayable"
542
- },
543
- {
544
- "type": "function",
545
- "name": "removeMaintainer",
546
- "inputs": [
547
- {
548
- "name": "removedMaintainer",
549
- "type": "address",
550
- "internalType": "address"
551
- }
552
- ],
553
- "outputs": [
554
-
555
- ],
556
- "stateMutability": "nonpayable"
557
- },
558
- {
559
- "type": "function",
560
- "name": "renounceRole",
561
- "inputs": [
562
- {
563
- "name": "role",
564
- "type": "bytes32",
565
- "internalType": "bytes32"
566
- },
567
- {
568
- "name": "account",
569
- "type": "address",
570
- "internalType": "address"
571
- }
572
- ],
573
- "outputs": [
574
-
575
- ],
576
- "stateMutability": "nonpayable"
577
- },
578
- {
579
- "type": "function",
580
- "name": "renounceRole",
581
- "inputs": [
582
- {
583
- "name": "role",
584
- "type": "bytes32",
585
- "internalType": "bytes32"
586
- }
587
- ],
588
- "outputs": [
589
-
590
- ],
591
- "stateMutability": "nonpayable"
592
- },
593
- {
594
- "type": "function",
595
- "name": "revokeRole",
596
- "inputs": [
597
- {
598
- "name": "role",
599
- "type": "bytes32",
600
- "internalType": "bytes32"
601
- },
602
- {
603
- "name": "account",
604
- "type": "address",
605
- "internalType": "address"
606
- }
607
- ],
608
- "outputs": [
609
-
610
- ],
611
- "stateMutability": "nonpayable"
612
- },
613
- {
614
- "type": "function",
615
- "name": "setAdapters",
616
- "inputs": [
617
- {
618
- "name": "_adapters",
619
- "type": "address[]",
620
- "internalType": "address[]"
621
- }
622
- ],
623
- "outputs": [
624
-
625
- ],
626
- "stateMutability": "nonpayable"
627
- },
628
- {
629
- "type": "function",
630
- "name": "setFeeClaimer",
631
- "inputs": [
632
- {
633
- "name": "_claimer",
634
- "type": "address",
635
- "internalType": "address"
636
- }
637
- ],
638
- "outputs": [
639
-
640
- ],
641
- "stateMutability": "nonpayable"
642
- },
643
- {
644
- "type": "function",
645
- "name": "setFeeExempt",
646
- "inputs": [
647
- {
648
- "name": "account",
649
- "type": "address",
650
- "internalType": "address"
651
- },
652
- {
653
- "name": "exempt",
654
- "type": "bool",
655
- "internalType": "bool"
656
- }
657
- ],
658
- "outputs": [
659
-
660
- ],
661
- "stateMutability": "nonpayable"
662
- },
663
- {
664
- "type": "function",
665
- "name": "setLimitOrderContract",
666
- "inputs": [
667
- {
668
- "name": "_limitOrder",
669
- "type": "address",
670
- "internalType": "address"
671
- }
672
- ],
673
- "outputs": [
674
-
675
- ],
676
- "stateMutability": "nonpayable"
677
- },
678
- {
679
- "type": "function",
680
- "name": "setMinFee",
681
- "inputs": [
682
- {
683
- "name": "_fee",
684
- "type": "uint256",
685
- "internalType": "uint256"
686
- }
687
- ],
688
- "outputs": [
689
-
690
- ],
691
- "stateMutability": "nonpayable"
692
- },
693
- {
694
- "type": "function",
695
- "name": "setMinFeeExempt",
696
- "inputs": [
697
- {
698
- "name": "account",
699
- "type": "address",
700
- "internalType": "address"
701
- },
702
- {
703
- "name": "exempt",
704
- "type": "bool",
705
- "internalType": "bool"
706
- }
707
- ],
708
- "outputs": [
709
-
710
- ],
711
- "stateMutability": "nonpayable"
712
- },
713
- {
714
- "type": "function",
715
- "name": "supportsInterface",
716
- "inputs": [
717
- {
718
- "name": "interfaceId",
719
- "type": "bytes4",
720
- "internalType": "bytes4"
721
- }
722
- ],
723
- "outputs": [
724
- {
725
- "name": "",
726
- "type": "bool",
727
- "internalType": "bool"
728
- }
729
- ],
730
- "stateMutability": "view"
731
- },
732
- {
733
- "type": "function",
734
- "name": "transferOwnership",
735
- "inputs": [
736
- {
737
- "name": "newOwner",
738
- "type": "address",
739
- "internalType": "address"
740
- }
741
- ],
742
- "outputs": [
743
-
744
- ],
745
- "stateMutability": "nonpayable"
746
- },
747
- {
748
- "type": "event",
749
- "name": "RoleAdminChanged",
750
- "inputs": [
751
- {
752
- "name": "role",
753
- "type": "bytes32",
754
- "indexed": true,
755
- "internalType": "bytes32"
756
- },
757
- {
758
- "name": "previousAdminRole",
759
- "type": "bytes32",
760
- "indexed": true,
761
- "internalType": "bytes32"
762
- },
763
- {
764
- "name": "newAdminRole",
765
- "type": "bytes32",
766
- "indexed": true,
767
- "internalType": "bytes32"
768
- }
769
- ],
770
- "anonymous": false
771
- },
772
- {
773
- "type": "event",
774
- "name": "RoleGranted",
775
- "inputs": [
776
- {
777
- "name": "role",
778
- "type": "bytes32",
779
- "indexed": true,
780
- "internalType": "bytes32"
781
- },
782
- {
783
- "name": "account",
784
- "type": "address",
785
- "indexed": true,
786
- "internalType": "address"
787
- },
788
- {
789
- "name": "sender",
790
- "type": "address",
791
- "indexed": true,
792
- "internalType": "address"
793
- }
794
- ],
795
- "anonymous": false
796
- },
797
- {
798
- "type": "event",
799
- "name": "RoleRevoked",
800
- "inputs": [
801
- {
802
- "name": "role",
803
- "type": "bytes32",
804
- "indexed": true,
805
- "internalType": "bytes32"
806
- },
807
- {
808
- "name": "account",
809
- "type": "address",
810
- "indexed": true,
811
- "internalType": "address"
812
- },
813
- {
814
- "name": "sender",
815
- "type": "address",
816
- "indexed": true,
817
- "internalType": "address"
818
- }
819
- ],
820
- "anonymous": false
821
- },
822
- {
823
- "type": "event",
824
- "name": "Switched",
825
- "inputs": [
826
- {
827
- "name": "_tokenIn",
828
- "type": "address",
829
- "indexed": true,
830
- "internalType": "address"
831
- },
832
- {
833
- "name": "_tokenOut",
834
- "type": "address",
835
- "indexed": true,
836
- "internalType": "address"
837
- },
838
- {
839
- "name": "_amountIn",
840
- "type": "uint256",
841
- "indexed": false,
842
- "internalType": "uint256"
843
- },
844
- {
845
- "name": "_amountOut",
846
- "type": "uint256",
847
- "indexed": false,
848
- "internalType": "uint256"
849
- },
850
- {
851
- "name": "_partnerAddress",
852
- "type": "address",
853
- "indexed": false,
854
- "internalType": "address"
855
- }
856
- ],
857
- "anonymous": false
858
- },
859
- {
860
- "type": "error",
861
- "name": "AdapterNotApproved",
862
- "inputs": [
863
- {
864
- "name": "adapter",
865
- "type": "address",
866
- "internalType": "address"
867
- }
868
- ]
869
- },
870
- {
871
- "type": "error",
872
- "name": "EmptyHop",
873
- "inputs": [
874
-
875
- ]
876
- },
877
- {
878
- "type": "error",
879
- "name": "EmptySplit",
880
- "inputs": [
881
-
882
- ]
883
- },
884
- {
885
- "type": "error",
886
- "name": "ExcessiveFee",
887
- "inputs": [
888
-
889
- ]
890
- },
891
- {
892
- "type": "error",
893
- "name": "FeeNotSupported",
894
- "inputs": [
895
-
896
- ]
897
- },
898
- {
899
- "type": "error",
900
- "name": "FinalAmountOutTooLow",
901
- "inputs": [
902
-
903
- ]
904
- },
905
- {
906
- "type": "error",
907
- "name": "InsufficientFee",
908
- "inputs": [
909
-
910
- ]
911
- },
912
- {
913
- "type": "error",
914
- "name": "MsgValueMismatch",
915
- "inputs": [
916
-
917
- ]
918
- },
919
- {
920
- "type": "error",
921
- "name": "PathNeedsBeginWithWPLS",
922
- "inputs": [
923
-
924
- ]
925
- },
926
- {
927
- "type": "error",
928
- "name": "PathNeedsEndWithWPLS",
929
- "inputs": [
930
-
931
- ]
932
- },
933
- {
934
- "type": "error",
935
- "name": "SplitMixedTokenIn",
936
- "inputs": [
937
-
938
- ]
939
- },
940
- {
941
- "type": "error",
942
- "name": "SplitMixedTokenOut",
943
- "inputs": [
944
-
945
- ]
946
- },
947
- {
948
- "type": "error",
949
- "name": "ZeroInput",
950
- "inputs": [
951
-
952
- ]
953
- }
954
- ]
1
+ [{"type":"constructor","inputs":[{"name":"_adapters","type":"address[]","internalType":"address[]"},{"name":"_feeClaimer","type":"address","internalType":"address"},{"name":"_wrapped_native","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"ADAPTERS","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"APPROVED_ADAPTERS","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"FEE_CLAIMER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"FEE_DENOMINATOR","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"FEE_EXEMPT","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"LIMIT_ORDER_CONTRACT","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"MAINTAINER_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MIN_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MIN_FEE_EXEMPT","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PARTNER_FEE_SHARE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"WNATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"adaptersCount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"addMaintainer","inputs":[{"name":"addedMaintainer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"goSwitch","inputs":[{"name":"_routes","type":"tuple[]","internalType":"struct RouteAllocation[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct HopAllocation[]","components":[{"name":"tokenIn","type":"address","internalType":"address"},{"name":"tokenOut","type":"address","internalType":"address"},{"name":"legs","type":"tuple[]","internalType":"struct HopAdapterAllocation[]","components":[{"name":"adapter","type":"address","internalType":"address"},{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"fee","type":"uint24","internalType":"uint24"}]}]}]},{"name":"_to","type":"address","internalType":"address"},{"name":"_minTotalAmountOut","type":"uint256","internalType":"uint256"},{"name":"_fee","type":"uint256","internalType":"uint256"},{"name":"_feeOnOutput","type":"bool","internalType":"bool"},{"name":"_unwrapOutput","type":"bool","internalType":"bool"},{"name":"_partnerAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"goSwitchFrom","inputs":[{"name":"_payer","type":"address","internalType":"address"},{"name":"_routes","type":"tuple[]","internalType":"struct RouteAllocation[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct HopAllocation[]","components":[{"name":"tokenIn","type":"address","internalType":"address"},{"name":"tokenOut","type":"address","internalType":"address"},{"name":"legs","type":"tuple[]","internalType":"struct HopAdapterAllocation[]","components":[{"name":"adapter","type":"address","internalType":"address"},{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"fee","type":"uint24","internalType":"uint24"}]}]}]},{"name":"_to","type":"address","internalType":"address"},{"name":"_minTotalAmountOut","type":"uint256","internalType":"uint256"},{"name":"_unwrapOutput","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"pullTokens","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_from","type":"address","internalType":"address"},{"name":"_to","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"recoverERC20","inputs":[{"name":"_tokenAddress","type":"address","internalType":"address"},{"name":"_tokenAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"recoverNative","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeMaintainer","inputs":[{"name":"removedMaintainer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setAdapters","inputs":[{"name":"_adapters","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setFeeClaimer","inputs":[{"name":"_claimer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setFeeExempt","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"exempt","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setLimitOrderContract","inputs":[{"name":"_limitOrder","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMinFee","inputs":[{"name":"_fee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMinFeeExempt","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"exempt","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Switched","inputs":[{"name":"_tokenIn","type":"address","indexed":true,"internalType":"address"},{"name":"_tokenOut","type":"address","indexed":true,"internalType":"address"},{"name":"_amountIn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_amountOut","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_partnerAddress","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AdapterNotApproved","inputs":[{"name":"adapter","type":"address","internalType":"address"}]},{"type":"error","name":"EmptyHop","inputs":[]},{"type":"error","name":"EmptySplit","inputs":[]},{"type":"error","name":"ExcessiveFee","inputs":[]},{"type":"error","name":"FeeNotSupported","inputs":[]},{"type":"error","name":"FinalAmountOutTooLow","inputs":[]},{"type":"error","name":"InsufficientFee","inputs":[]},{"type":"error","name":"MsgValueMismatch","inputs":[]},{"type":"error","name":"PathNeedsBeginWithWPLS","inputs":[]},{"type":"error","name":"PathNeedsEndWithWPLS","inputs":[]},{"type":"error","name":"SplitMixedTokenIn","inputs":[]},{"type":"error","name":"SplitMixedTokenOut","inputs":[]},{"type":"error","name":"ZeroInput","inputs":[]}]