@gitmyabi/sy-susde 1.0.0

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.
@@ -0,0 +1,1840 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PendleSUSDESY_json = exports.PendleSUSDESY_jsonAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * PendleSUSDESY_json ABI
7
+ *
8
+ * This ABI is typed using viem's type system for full type safety.
9
+ */
10
+ exports.PendleSUSDESY_jsonAbi = [
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "address",
15
+ "name": "_susde",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "_initialSupplyCap",
21
+ "type": "uint256"
22
+ }
23
+ ],
24
+ "stateMutability": "nonpayable",
25
+ "type": "constructor"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "InvalidShortString",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [
34
+ {
35
+ "internalType": "uint256",
36
+ "name": "actualSharesOut",
37
+ "type": "uint256"
38
+ },
39
+ {
40
+ "internalType": "uint256",
41
+ "name": "requiredSharesOut",
42
+ "type": "uint256"
43
+ }
44
+ ],
45
+ "name": "SYInsufficientSharesOut",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [
50
+ {
51
+ "internalType": "uint256",
52
+ "name": "actualTokenOut",
53
+ "type": "uint256"
54
+ },
55
+ {
56
+ "internalType": "uint256",
57
+ "name": "requiredTokenOut",
58
+ "type": "uint256"
59
+ }
60
+ ],
61
+ "name": "SYInsufficientTokenOut",
62
+ "type": "error"
63
+ },
64
+ {
65
+ "inputs": [
66
+ {
67
+ "internalType": "address",
68
+ "name": "token",
69
+ "type": "address"
70
+ }
71
+ ],
72
+ "name": "SYInvalidTokenIn",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [
77
+ {
78
+ "internalType": "address",
79
+ "name": "token",
80
+ "type": "address"
81
+ }
82
+ ],
83
+ "name": "SYInvalidTokenOut",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [],
88
+ "name": "SYZeroDeposit",
89
+ "type": "error"
90
+ },
91
+ {
92
+ "inputs": [],
93
+ "name": "SYZeroRedeem",
94
+ "type": "error"
95
+ },
96
+ {
97
+ "inputs": [
98
+ {
99
+ "internalType": "string",
100
+ "name": "str",
101
+ "type": "string"
102
+ }
103
+ ],
104
+ "name": "StringTooLong",
105
+ "type": "error"
106
+ },
107
+ {
108
+ "inputs": [
109
+ {
110
+ "internalType": "uint256",
111
+ "name": "totalSupply",
112
+ "type": "uint256"
113
+ },
114
+ {
115
+ "internalType": "uint256",
116
+ "name": "supplyCap",
117
+ "type": "uint256"
118
+ }
119
+ ],
120
+ "name": "SupplyCapExceeded",
121
+ "type": "error"
122
+ },
123
+ {
124
+ "anonymous": false,
125
+ "inputs": [
126
+ {
127
+ "indexed": true,
128
+ "internalType": "address",
129
+ "name": "owner",
130
+ "type": "address"
131
+ },
132
+ {
133
+ "indexed": true,
134
+ "internalType": "address",
135
+ "name": "spender",
136
+ "type": "address"
137
+ },
138
+ {
139
+ "indexed": false,
140
+ "internalType": "uint256",
141
+ "name": "value",
142
+ "type": "uint256"
143
+ }
144
+ ],
145
+ "name": "Approval",
146
+ "type": "event"
147
+ },
148
+ {
149
+ "anonymous": false,
150
+ "inputs": [
151
+ {
152
+ "indexed": true,
153
+ "internalType": "address",
154
+ "name": "user",
155
+ "type": "address"
156
+ },
157
+ {
158
+ "indexed": false,
159
+ "internalType": "address[]",
160
+ "name": "rewardTokens",
161
+ "type": "address[]"
162
+ },
163
+ {
164
+ "indexed": false,
165
+ "internalType": "uint256[]",
166
+ "name": "rewardAmounts",
167
+ "type": "uint256[]"
168
+ }
169
+ ],
170
+ "name": "ClaimRewards",
171
+ "type": "event"
172
+ },
173
+ {
174
+ "anonymous": false,
175
+ "inputs": [
176
+ {
177
+ "indexed": true,
178
+ "internalType": "address",
179
+ "name": "caller",
180
+ "type": "address"
181
+ },
182
+ {
183
+ "indexed": true,
184
+ "internalType": "address",
185
+ "name": "receiver",
186
+ "type": "address"
187
+ },
188
+ {
189
+ "indexed": true,
190
+ "internalType": "address",
191
+ "name": "tokenIn",
192
+ "type": "address"
193
+ },
194
+ {
195
+ "indexed": false,
196
+ "internalType": "uint256",
197
+ "name": "amountDeposited",
198
+ "type": "uint256"
199
+ },
200
+ {
201
+ "indexed": false,
202
+ "internalType": "uint256",
203
+ "name": "amountSyOut",
204
+ "type": "uint256"
205
+ }
206
+ ],
207
+ "name": "Deposit",
208
+ "type": "event"
209
+ },
210
+ {
211
+ "anonymous": false,
212
+ "inputs": [],
213
+ "name": "EIP712DomainChanged",
214
+ "type": "event"
215
+ },
216
+ {
217
+ "anonymous": false,
218
+ "inputs": [
219
+ {
220
+ "indexed": false,
221
+ "internalType": "uint8",
222
+ "name": "version",
223
+ "type": "uint8"
224
+ }
225
+ ],
226
+ "name": "Initialized",
227
+ "type": "event"
228
+ },
229
+ {
230
+ "anonymous": false,
231
+ "inputs": [
232
+ {
233
+ "indexed": true,
234
+ "internalType": "address",
235
+ "name": "previousOwner",
236
+ "type": "address"
237
+ },
238
+ {
239
+ "indexed": true,
240
+ "internalType": "address",
241
+ "name": "newOwner",
242
+ "type": "address"
243
+ }
244
+ ],
245
+ "name": "OwnershipTransferred",
246
+ "type": "event"
247
+ },
248
+ {
249
+ "anonymous": false,
250
+ "inputs": [
251
+ {
252
+ "indexed": false,
253
+ "internalType": "address",
254
+ "name": "account",
255
+ "type": "address"
256
+ }
257
+ ],
258
+ "name": "Paused",
259
+ "type": "event"
260
+ },
261
+ {
262
+ "anonymous": false,
263
+ "inputs": [
264
+ {
265
+ "indexed": true,
266
+ "internalType": "address",
267
+ "name": "caller",
268
+ "type": "address"
269
+ },
270
+ {
271
+ "indexed": true,
272
+ "internalType": "address",
273
+ "name": "receiver",
274
+ "type": "address"
275
+ },
276
+ {
277
+ "indexed": true,
278
+ "internalType": "address",
279
+ "name": "tokenOut",
280
+ "type": "address"
281
+ },
282
+ {
283
+ "indexed": false,
284
+ "internalType": "uint256",
285
+ "name": "amountSyToRedeem",
286
+ "type": "uint256"
287
+ },
288
+ {
289
+ "indexed": false,
290
+ "internalType": "uint256",
291
+ "name": "amountTokenOut",
292
+ "type": "uint256"
293
+ }
294
+ ],
295
+ "name": "Redeem",
296
+ "type": "event"
297
+ },
298
+ {
299
+ "anonymous": false,
300
+ "inputs": [
301
+ {
302
+ "indexed": false,
303
+ "internalType": "uint256",
304
+ "name": "newSupplyCap",
305
+ "type": "uint256"
306
+ }
307
+ ],
308
+ "name": "SupplyCapUpdated",
309
+ "type": "event"
310
+ },
311
+ {
312
+ "anonymous": false,
313
+ "inputs": [
314
+ {
315
+ "indexed": true,
316
+ "internalType": "address",
317
+ "name": "from",
318
+ "type": "address"
319
+ },
320
+ {
321
+ "indexed": true,
322
+ "internalType": "address",
323
+ "name": "to",
324
+ "type": "address"
325
+ },
326
+ {
327
+ "indexed": false,
328
+ "internalType": "uint256",
329
+ "name": "value",
330
+ "type": "uint256"
331
+ }
332
+ ],
333
+ "name": "Transfer",
334
+ "type": "event"
335
+ },
336
+ {
337
+ "anonymous": false,
338
+ "inputs": [
339
+ {
340
+ "indexed": false,
341
+ "internalType": "address",
342
+ "name": "account",
343
+ "type": "address"
344
+ }
345
+ ],
346
+ "name": "Unpaused",
347
+ "type": "event"
348
+ },
349
+ {
350
+ "inputs": [],
351
+ "name": "DOMAIN_SEPARATOR",
352
+ "outputs": [
353
+ {
354
+ "internalType": "bytes32",
355
+ "name": "",
356
+ "type": "bytes32"
357
+ }
358
+ ],
359
+ "stateMutability": "view",
360
+ "type": "function"
361
+ },
362
+ {
363
+ "inputs": [
364
+ {
365
+ "internalType": "address",
366
+ "name": "",
367
+ "type": "address"
368
+ }
369
+ ],
370
+ "name": "accruedRewards",
371
+ "outputs": [
372
+ {
373
+ "internalType": "uint256[]",
374
+ "name": "rewardAmounts",
375
+ "type": "uint256[]"
376
+ }
377
+ ],
378
+ "stateMutability": "view",
379
+ "type": "function"
380
+ },
381
+ {
382
+ "inputs": [
383
+ {
384
+ "internalType": "address",
385
+ "name": "owner",
386
+ "type": "address"
387
+ },
388
+ {
389
+ "internalType": "address",
390
+ "name": "spender",
391
+ "type": "address"
392
+ }
393
+ ],
394
+ "name": "allowance",
395
+ "outputs": [
396
+ {
397
+ "internalType": "uint256",
398
+ "name": "",
399
+ "type": "uint256"
400
+ }
401
+ ],
402
+ "stateMutability": "view",
403
+ "type": "function"
404
+ },
405
+ {
406
+ "inputs": [
407
+ {
408
+ "internalType": "address",
409
+ "name": "spender",
410
+ "type": "address"
411
+ },
412
+ {
413
+ "internalType": "uint256",
414
+ "name": "amount",
415
+ "type": "uint256"
416
+ }
417
+ ],
418
+ "name": "approve",
419
+ "outputs": [
420
+ {
421
+ "internalType": "bool",
422
+ "name": "",
423
+ "type": "bool"
424
+ }
425
+ ],
426
+ "stateMutability": "nonpayable",
427
+ "type": "function"
428
+ },
429
+ {
430
+ "inputs": [],
431
+ "name": "asset",
432
+ "outputs": [
433
+ {
434
+ "internalType": "address",
435
+ "name": "",
436
+ "type": "address"
437
+ }
438
+ ],
439
+ "stateMutability": "view",
440
+ "type": "function"
441
+ },
442
+ {
443
+ "inputs": [],
444
+ "name": "assetInfo",
445
+ "outputs": [
446
+ {
447
+ "internalType": "enum IStandardizedYield.AssetType",
448
+ "name": "assetType",
449
+ "type": "uint8"
450
+ },
451
+ {
452
+ "internalType": "address",
453
+ "name": "assetAddress",
454
+ "type": "address"
455
+ },
456
+ {
457
+ "internalType": "uint8",
458
+ "name": "assetDecimals",
459
+ "type": "uint8"
460
+ }
461
+ ],
462
+ "stateMutability": "view",
463
+ "type": "function"
464
+ },
465
+ {
466
+ "inputs": [
467
+ {
468
+ "internalType": "address",
469
+ "name": "account",
470
+ "type": "address"
471
+ }
472
+ ],
473
+ "name": "balanceOf",
474
+ "outputs": [
475
+ {
476
+ "internalType": "uint256",
477
+ "name": "",
478
+ "type": "uint256"
479
+ }
480
+ ],
481
+ "stateMutability": "view",
482
+ "type": "function"
483
+ },
484
+ {
485
+ "inputs": [],
486
+ "name": "claimOwnership",
487
+ "outputs": [],
488
+ "stateMutability": "nonpayable",
489
+ "type": "function"
490
+ },
491
+ {
492
+ "inputs": [
493
+ {
494
+ "internalType": "address",
495
+ "name": "",
496
+ "type": "address"
497
+ }
498
+ ],
499
+ "name": "claimRewards",
500
+ "outputs": [
501
+ {
502
+ "internalType": "uint256[]",
503
+ "name": "rewardAmounts",
504
+ "type": "uint256[]"
505
+ }
506
+ ],
507
+ "stateMutability": "nonpayable",
508
+ "type": "function"
509
+ },
510
+ {
511
+ "inputs": [],
512
+ "name": "decimals",
513
+ "outputs": [
514
+ {
515
+ "internalType": "uint8",
516
+ "name": "",
517
+ "type": "uint8"
518
+ }
519
+ ],
520
+ "stateMutability": "view",
521
+ "type": "function"
522
+ },
523
+ {
524
+ "inputs": [
525
+ {
526
+ "internalType": "address",
527
+ "name": "receiver",
528
+ "type": "address"
529
+ },
530
+ {
531
+ "internalType": "address",
532
+ "name": "tokenIn",
533
+ "type": "address"
534
+ },
535
+ {
536
+ "internalType": "uint256",
537
+ "name": "amountTokenToDeposit",
538
+ "type": "uint256"
539
+ },
540
+ {
541
+ "internalType": "uint256",
542
+ "name": "minSharesOut",
543
+ "type": "uint256"
544
+ }
545
+ ],
546
+ "name": "deposit",
547
+ "outputs": [
548
+ {
549
+ "internalType": "uint256",
550
+ "name": "amountSharesOut",
551
+ "type": "uint256"
552
+ }
553
+ ],
554
+ "stateMutability": "payable",
555
+ "type": "function"
556
+ },
557
+ {
558
+ "inputs": [],
559
+ "name": "eip712Domain",
560
+ "outputs": [
561
+ {
562
+ "internalType": "bytes1",
563
+ "name": "fields",
564
+ "type": "bytes1"
565
+ },
566
+ {
567
+ "internalType": "string",
568
+ "name": "name",
569
+ "type": "string"
570
+ },
571
+ {
572
+ "internalType": "string",
573
+ "name": "version",
574
+ "type": "string"
575
+ },
576
+ {
577
+ "internalType": "uint256",
578
+ "name": "chainId",
579
+ "type": "uint256"
580
+ },
581
+ {
582
+ "internalType": "address",
583
+ "name": "verifyingContract",
584
+ "type": "address"
585
+ },
586
+ {
587
+ "internalType": "bytes32",
588
+ "name": "salt",
589
+ "type": "bytes32"
590
+ },
591
+ {
592
+ "internalType": "uint256[]",
593
+ "name": "extensions",
594
+ "type": "uint256[]"
595
+ }
596
+ ],
597
+ "stateMutability": "view",
598
+ "type": "function"
599
+ },
600
+ {
601
+ "inputs": [],
602
+ "name": "exchangeRate",
603
+ "outputs": [
604
+ {
605
+ "internalType": "uint256",
606
+ "name": "",
607
+ "type": "uint256"
608
+ }
609
+ ],
610
+ "stateMutability": "view",
611
+ "type": "function"
612
+ },
613
+ {
614
+ "inputs": [],
615
+ "name": "getAbsoluteSupplyCap",
616
+ "outputs": [
617
+ {
618
+ "internalType": "uint256",
619
+ "name": "",
620
+ "type": "uint256"
621
+ }
622
+ ],
623
+ "stateMutability": "view",
624
+ "type": "function"
625
+ },
626
+ {
627
+ "inputs": [],
628
+ "name": "getAbsoluteTotalSupply",
629
+ "outputs": [
630
+ {
631
+ "internalType": "uint256",
632
+ "name": "",
633
+ "type": "uint256"
634
+ }
635
+ ],
636
+ "stateMutability": "view",
637
+ "type": "function"
638
+ },
639
+ {
640
+ "inputs": [],
641
+ "name": "getRewardTokens",
642
+ "outputs": [
643
+ {
644
+ "internalType": "address[]",
645
+ "name": "rewardTokens",
646
+ "type": "address[]"
647
+ }
648
+ ],
649
+ "stateMutability": "view",
650
+ "type": "function"
651
+ },
652
+ {
653
+ "inputs": [],
654
+ "name": "getTokensIn",
655
+ "outputs": [
656
+ {
657
+ "internalType": "address[]",
658
+ "name": "res",
659
+ "type": "address[]"
660
+ }
661
+ ],
662
+ "stateMutability": "view",
663
+ "type": "function"
664
+ },
665
+ {
666
+ "inputs": [],
667
+ "name": "getTokensOut",
668
+ "outputs": [
669
+ {
670
+ "internalType": "address[]",
671
+ "name": "res",
672
+ "type": "address[]"
673
+ }
674
+ ],
675
+ "stateMutability": "view",
676
+ "type": "function"
677
+ },
678
+ {
679
+ "inputs": [
680
+ {
681
+ "internalType": "address",
682
+ "name": "token",
683
+ "type": "address"
684
+ }
685
+ ],
686
+ "name": "isValidTokenIn",
687
+ "outputs": [
688
+ {
689
+ "internalType": "bool",
690
+ "name": "",
691
+ "type": "bool"
692
+ }
693
+ ],
694
+ "stateMutability": "view",
695
+ "type": "function"
696
+ },
697
+ {
698
+ "inputs": [
699
+ {
700
+ "internalType": "address",
701
+ "name": "token",
702
+ "type": "address"
703
+ }
704
+ ],
705
+ "name": "isValidTokenOut",
706
+ "outputs": [
707
+ {
708
+ "internalType": "bool",
709
+ "name": "",
710
+ "type": "bool"
711
+ }
712
+ ],
713
+ "stateMutability": "view",
714
+ "type": "function"
715
+ },
716
+ {
717
+ "inputs": [],
718
+ "name": "name",
719
+ "outputs": [
720
+ {
721
+ "internalType": "string",
722
+ "name": "",
723
+ "type": "string"
724
+ }
725
+ ],
726
+ "stateMutability": "view",
727
+ "type": "function"
728
+ },
729
+ {
730
+ "inputs": [
731
+ {
732
+ "internalType": "address",
733
+ "name": "owner",
734
+ "type": "address"
735
+ }
736
+ ],
737
+ "name": "nonces",
738
+ "outputs": [
739
+ {
740
+ "internalType": "uint256",
741
+ "name": "",
742
+ "type": "uint256"
743
+ }
744
+ ],
745
+ "stateMutability": "view",
746
+ "type": "function"
747
+ },
748
+ {
749
+ "inputs": [],
750
+ "name": "owner",
751
+ "outputs": [
752
+ {
753
+ "internalType": "address",
754
+ "name": "",
755
+ "type": "address"
756
+ }
757
+ ],
758
+ "stateMutability": "view",
759
+ "type": "function"
760
+ },
761
+ {
762
+ "inputs": [],
763
+ "name": "pause",
764
+ "outputs": [],
765
+ "stateMutability": "nonpayable",
766
+ "type": "function"
767
+ },
768
+ {
769
+ "inputs": [],
770
+ "name": "paused",
771
+ "outputs": [
772
+ {
773
+ "internalType": "bool",
774
+ "name": "",
775
+ "type": "bool"
776
+ }
777
+ ],
778
+ "stateMutability": "view",
779
+ "type": "function"
780
+ },
781
+ {
782
+ "inputs": [],
783
+ "name": "pendingOwner",
784
+ "outputs": [
785
+ {
786
+ "internalType": "address",
787
+ "name": "",
788
+ "type": "address"
789
+ }
790
+ ],
791
+ "stateMutability": "view",
792
+ "type": "function"
793
+ },
794
+ {
795
+ "inputs": [
796
+ {
797
+ "internalType": "address",
798
+ "name": "owner",
799
+ "type": "address"
800
+ },
801
+ {
802
+ "internalType": "address",
803
+ "name": "spender",
804
+ "type": "address"
805
+ },
806
+ {
807
+ "internalType": "uint256",
808
+ "name": "value",
809
+ "type": "uint256"
810
+ },
811
+ {
812
+ "internalType": "uint256",
813
+ "name": "deadline",
814
+ "type": "uint256"
815
+ },
816
+ {
817
+ "internalType": "uint8",
818
+ "name": "v",
819
+ "type": "uint8"
820
+ },
821
+ {
822
+ "internalType": "bytes32",
823
+ "name": "r",
824
+ "type": "bytes32"
825
+ },
826
+ {
827
+ "internalType": "bytes32",
828
+ "name": "s",
829
+ "type": "bytes32"
830
+ }
831
+ ],
832
+ "name": "permit",
833
+ "outputs": [],
834
+ "stateMutability": "nonpayable",
835
+ "type": "function"
836
+ },
837
+ {
838
+ "inputs": [
839
+ {
840
+ "internalType": "address",
841
+ "name": "tokenIn",
842
+ "type": "address"
843
+ },
844
+ {
845
+ "internalType": "uint256",
846
+ "name": "amountTokenToDeposit",
847
+ "type": "uint256"
848
+ }
849
+ ],
850
+ "name": "previewDeposit",
851
+ "outputs": [
852
+ {
853
+ "internalType": "uint256",
854
+ "name": "amountSharesOut",
855
+ "type": "uint256"
856
+ }
857
+ ],
858
+ "stateMutability": "view",
859
+ "type": "function"
860
+ },
861
+ {
862
+ "inputs": [
863
+ {
864
+ "internalType": "address",
865
+ "name": "tokenOut",
866
+ "type": "address"
867
+ },
868
+ {
869
+ "internalType": "uint256",
870
+ "name": "amountSharesToRedeem",
871
+ "type": "uint256"
872
+ }
873
+ ],
874
+ "name": "previewRedeem",
875
+ "outputs": [
876
+ {
877
+ "internalType": "uint256",
878
+ "name": "amountTokenOut",
879
+ "type": "uint256"
880
+ }
881
+ ],
882
+ "stateMutability": "view",
883
+ "type": "function"
884
+ },
885
+ {
886
+ "inputs": [
887
+ {
888
+ "internalType": "address",
889
+ "name": "receiver",
890
+ "type": "address"
891
+ },
892
+ {
893
+ "internalType": "uint256",
894
+ "name": "amountSharesToRedeem",
895
+ "type": "uint256"
896
+ },
897
+ {
898
+ "internalType": "address",
899
+ "name": "tokenOut",
900
+ "type": "address"
901
+ },
902
+ {
903
+ "internalType": "uint256",
904
+ "name": "minTokenOut",
905
+ "type": "uint256"
906
+ },
907
+ {
908
+ "internalType": "bool",
909
+ "name": "burnFromInternalBalance",
910
+ "type": "bool"
911
+ }
912
+ ],
913
+ "name": "redeem",
914
+ "outputs": [
915
+ {
916
+ "internalType": "uint256",
917
+ "name": "amountTokenOut",
918
+ "type": "uint256"
919
+ }
920
+ ],
921
+ "stateMutability": "nonpayable",
922
+ "type": "function"
923
+ },
924
+ {
925
+ "inputs": [],
926
+ "name": "rewardIndexesCurrent",
927
+ "outputs": [
928
+ {
929
+ "internalType": "uint256[]",
930
+ "name": "indexes",
931
+ "type": "uint256[]"
932
+ }
933
+ ],
934
+ "stateMutability": "nonpayable",
935
+ "type": "function"
936
+ },
937
+ {
938
+ "inputs": [],
939
+ "name": "rewardIndexesStored",
940
+ "outputs": [
941
+ {
942
+ "internalType": "uint256[]",
943
+ "name": "indexes",
944
+ "type": "uint256[]"
945
+ }
946
+ ],
947
+ "stateMutability": "view",
948
+ "type": "function"
949
+ },
950
+ {
951
+ "inputs": [],
952
+ "name": "supplyCap",
953
+ "outputs": [
954
+ {
955
+ "internalType": "uint256",
956
+ "name": "",
957
+ "type": "uint256"
958
+ }
959
+ ],
960
+ "stateMutability": "view",
961
+ "type": "function"
962
+ },
963
+ {
964
+ "inputs": [],
965
+ "name": "symbol",
966
+ "outputs": [
967
+ {
968
+ "internalType": "string",
969
+ "name": "",
970
+ "type": "string"
971
+ }
972
+ ],
973
+ "stateMutability": "view",
974
+ "type": "function"
975
+ },
976
+ {
977
+ "inputs": [],
978
+ "name": "totalSupply",
979
+ "outputs": [
980
+ {
981
+ "internalType": "uint256",
982
+ "name": "",
983
+ "type": "uint256"
984
+ }
985
+ ],
986
+ "stateMutability": "view",
987
+ "type": "function"
988
+ },
989
+ {
990
+ "inputs": [
991
+ {
992
+ "internalType": "address",
993
+ "name": "to",
994
+ "type": "address"
995
+ },
996
+ {
997
+ "internalType": "uint256",
998
+ "name": "amount",
999
+ "type": "uint256"
1000
+ }
1001
+ ],
1002
+ "name": "transfer",
1003
+ "outputs": [
1004
+ {
1005
+ "internalType": "bool",
1006
+ "name": "",
1007
+ "type": "bool"
1008
+ }
1009
+ ],
1010
+ "stateMutability": "nonpayable",
1011
+ "type": "function"
1012
+ },
1013
+ {
1014
+ "inputs": [
1015
+ {
1016
+ "internalType": "address",
1017
+ "name": "from",
1018
+ "type": "address"
1019
+ },
1020
+ {
1021
+ "internalType": "address",
1022
+ "name": "to",
1023
+ "type": "address"
1024
+ },
1025
+ {
1026
+ "internalType": "uint256",
1027
+ "name": "amount",
1028
+ "type": "uint256"
1029
+ }
1030
+ ],
1031
+ "name": "transferFrom",
1032
+ "outputs": [
1033
+ {
1034
+ "internalType": "bool",
1035
+ "name": "",
1036
+ "type": "bool"
1037
+ }
1038
+ ],
1039
+ "stateMutability": "nonpayable",
1040
+ "type": "function"
1041
+ },
1042
+ {
1043
+ "inputs": [
1044
+ {
1045
+ "internalType": "address",
1046
+ "name": "newOwner",
1047
+ "type": "address"
1048
+ },
1049
+ {
1050
+ "internalType": "bool",
1051
+ "name": "direct",
1052
+ "type": "bool"
1053
+ },
1054
+ {
1055
+ "internalType": "bool",
1056
+ "name": "renounce",
1057
+ "type": "bool"
1058
+ }
1059
+ ],
1060
+ "name": "transferOwnership",
1061
+ "outputs": [],
1062
+ "stateMutability": "nonpayable",
1063
+ "type": "function"
1064
+ },
1065
+ {
1066
+ "inputs": [],
1067
+ "name": "unpause",
1068
+ "outputs": [],
1069
+ "stateMutability": "nonpayable",
1070
+ "type": "function"
1071
+ },
1072
+ {
1073
+ "inputs": [
1074
+ {
1075
+ "internalType": "uint256",
1076
+ "name": "newSupplyCap",
1077
+ "type": "uint256"
1078
+ }
1079
+ ],
1080
+ "name": "updateSupplyCap",
1081
+ "outputs": [],
1082
+ "stateMutability": "nonpayable",
1083
+ "type": "function"
1084
+ },
1085
+ {
1086
+ "inputs": [],
1087
+ "name": "yieldToken",
1088
+ "outputs": [
1089
+ {
1090
+ "internalType": "address",
1091
+ "name": "",
1092
+ "type": "address"
1093
+ }
1094
+ ],
1095
+ "stateMutability": "view",
1096
+ "type": "function"
1097
+ },
1098
+ {
1099
+ "stateMutability": "payable",
1100
+ "type": "receive"
1101
+ }
1102
+ ];
1103
+ /**
1104
+ * PendleSUSDESY_json Contract Class
1105
+ *
1106
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1107
+ *
1108
+ * @example
1109
+ * ```typescript
1110
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1111
+ * import { mainnet } from 'viem/chains';
1112
+ * import { PendleSUSDESY_json } from 'PendleSUSDESY_json';
1113
+ *
1114
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1115
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1116
+ *
1117
+ * const contract = new PendleSUSDESY_json('0x...', { publicClient, walletClient });
1118
+ *
1119
+ * // Read functions
1120
+ * const result = await contract.balanceOf('0x...');
1121
+ *
1122
+ * // Write functions
1123
+ * const hash = await contract.transfer('0x...', 1000n);
1124
+ *
1125
+ * // Simulate transactions (dry-run)
1126
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1127
+ * console.log('Gas estimate:', simulation.request.gas);
1128
+ *
1129
+ * // Watch events
1130
+ * const unwatch = contract.watch.Transfer((event) => {
1131
+ * console.log('Transfer event:', event);
1132
+ * });
1133
+ * ```
1134
+ */
1135
+ class PendleSUSDESY_json {
1136
+ constructor(address, clients) {
1137
+ this.contractAddress = address;
1138
+ this.publicClient = clients.publicClient;
1139
+ this.contract = (0, viem_1.getContract)({
1140
+ address,
1141
+ abi: exports.PendleSUSDESY_jsonAbi,
1142
+ client: {
1143
+ public: clients.publicClient,
1144
+ wallet: clients.walletClient,
1145
+ },
1146
+ });
1147
+ }
1148
+ /**
1149
+ * Get the contract address
1150
+ */
1151
+ get address() {
1152
+ return this.contractAddress;
1153
+ }
1154
+ /**
1155
+ * Get the underlying viem contract instance
1156
+ */
1157
+ getContract() {
1158
+ return this.contract;
1159
+ }
1160
+ /**
1161
+ * DOMAIN_SEPARATOR
1162
+ * view
1163
+ */
1164
+ async DOMAIN_SEPARATOR() {
1165
+ return this.contract.read.DOMAIN_SEPARATOR();
1166
+ }
1167
+ /**
1168
+ * accruedRewards
1169
+ * view
1170
+ */
1171
+ async accruedRewards(arg0) {
1172
+ return this.contract.read.accruedRewards([arg0]);
1173
+ }
1174
+ /**
1175
+ * allowance
1176
+ * view
1177
+ */
1178
+ async allowance(owner, spender) {
1179
+ return this.contract.read.allowance([owner, spender]);
1180
+ }
1181
+ /**
1182
+ * asset
1183
+ * view
1184
+ */
1185
+ async asset() {
1186
+ return this.contract.read.asset();
1187
+ }
1188
+ /**
1189
+ * assetInfo
1190
+ * view
1191
+ */
1192
+ async assetInfo() {
1193
+ return this.contract.read.assetInfo();
1194
+ }
1195
+ /**
1196
+ * balanceOf
1197
+ * view
1198
+ */
1199
+ async balanceOf(account) {
1200
+ return this.contract.read.balanceOf([account]);
1201
+ }
1202
+ /**
1203
+ * decimals
1204
+ * view
1205
+ */
1206
+ async decimals() {
1207
+ return this.contract.read.decimals();
1208
+ }
1209
+ /**
1210
+ * eip712Domain
1211
+ * view
1212
+ */
1213
+ async eip712Domain() {
1214
+ return this.contract.read.eip712Domain();
1215
+ }
1216
+ /**
1217
+ * exchangeRate
1218
+ * view
1219
+ */
1220
+ async exchangeRate() {
1221
+ return this.contract.read.exchangeRate();
1222
+ }
1223
+ /**
1224
+ * getAbsoluteSupplyCap
1225
+ * view
1226
+ */
1227
+ async getAbsoluteSupplyCap() {
1228
+ return this.contract.read.getAbsoluteSupplyCap();
1229
+ }
1230
+ /**
1231
+ * getAbsoluteTotalSupply
1232
+ * view
1233
+ */
1234
+ async getAbsoluteTotalSupply() {
1235
+ return this.contract.read.getAbsoluteTotalSupply();
1236
+ }
1237
+ /**
1238
+ * getRewardTokens
1239
+ * view
1240
+ */
1241
+ async getRewardTokens() {
1242
+ return this.contract.read.getRewardTokens();
1243
+ }
1244
+ /**
1245
+ * getTokensIn
1246
+ * view
1247
+ */
1248
+ async getTokensIn() {
1249
+ return this.contract.read.getTokensIn();
1250
+ }
1251
+ /**
1252
+ * getTokensOut
1253
+ * view
1254
+ */
1255
+ async getTokensOut() {
1256
+ return this.contract.read.getTokensOut();
1257
+ }
1258
+ /**
1259
+ * isValidTokenIn
1260
+ * view
1261
+ */
1262
+ async isValidTokenIn(token) {
1263
+ return this.contract.read.isValidTokenIn([token]);
1264
+ }
1265
+ /**
1266
+ * isValidTokenOut
1267
+ * view
1268
+ */
1269
+ async isValidTokenOut(token) {
1270
+ return this.contract.read.isValidTokenOut([token]);
1271
+ }
1272
+ /**
1273
+ * name
1274
+ * view
1275
+ */
1276
+ async name() {
1277
+ return this.contract.read.name();
1278
+ }
1279
+ /**
1280
+ * nonces
1281
+ * view
1282
+ */
1283
+ async nonces(owner) {
1284
+ return this.contract.read.nonces([owner]);
1285
+ }
1286
+ /**
1287
+ * owner
1288
+ * view
1289
+ */
1290
+ async owner() {
1291
+ return this.contract.read.owner();
1292
+ }
1293
+ /**
1294
+ * paused
1295
+ * view
1296
+ */
1297
+ async paused() {
1298
+ return this.contract.read.paused();
1299
+ }
1300
+ /**
1301
+ * pendingOwner
1302
+ * view
1303
+ */
1304
+ async pendingOwner() {
1305
+ return this.contract.read.pendingOwner();
1306
+ }
1307
+ /**
1308
+ * previewDeposit
1309
+ * view
1310
+ */
1311
+ async previewDeposit(tokenIn, amountTokenToDeposit) {
1312
+ return this.contract.read.previewDeposit([tokenIn, amountTokenToDeposit]);
1313
+ }
1314
+ /**
1315
+ * previewRedeem
1316
+ * view
1317
+ */
1318
+ async previewRedeem(tokenOut, amountSharesToRedeem) {
1319
+ return this.contract.read.previewRedeem([tokenOut, amountSharesToRedeem]);
1320
+ }
1321
+ /**
1322
+ * rewardIndexesStored
1323
+ * view
1324
+ */
1325
+ async rewardIndexesStored() {
1326
+ return this.contract.read.rewardIndexesStored();
1327
+ }
1328
+ /**
1329
+ * supplyCap
1330
+ * view
1331
+ */
1332
+ async supplyCap() {
1333
+ return this.contract.read.supplyCap();
1334
+ }
1335
+ /**
1336
+ * symbol
1337
+ * view
1338
+ */
1339
+ async symbol() {
1340
+ return this.contract.read.symbol();
1341
+ }
1342
+ /**
1343
+ * totalSupply
1344
+ * view
1345
+ */
1346
+ async totalSupply() {
1347
+ return this.contract.read.totalSupply();
1348
+ }
1349
+ /**
1350
+ * yieldToken
1351
+ * view
1352
+ */
1353
+ async yieldToken() {
1354
+ return this.contract.read.yieldToken();
1355
+ }
1356
+ /**
1357
+ * approve
1358
+ * nonpayable
1359
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1360
+ */
1361
+ async approve(spender, amount, options) {
1362
+ if (!this.contract.write) {
1363
+ throw new Error('Wallet client is required for write operations');
1364
+ }
1365
+ return this.contract.write.approve([spender, amount], options);
1366
+ }
1367
+ /**
1368
+ * claimOwnership
1369
+ * nonpayable
1370
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1371
+ */
1372
+ async claimOwnership(options) {
1373
+ if (!this.contract.write) {
1374
+ throw new Error('Wallet client is required for write operations');
1375
+ }
1376
+ return this.contract.write.claimOwnership(options);
1377
+ }
1378
+ /**
1379
+ * claimRewards
1380
+ * nonpayable
1381
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1382
+ */
1383
+ async claimRewards(arg0, options) {
1384
+ if (!this.contract.write) {
1385
+ throw new Error('Wallet client is required for write operations');
1386
+ }
1387
+ return this.contract.write.claimRewards([arg0], options);
1388
+ }
1389
+ /**
1390
+ * deposit
1391
+ * payable
1392
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1393
+ */
1394
+ async deposit(receiver, tokenIn, amountTokenToDeposit, minSharesOut, options) {
1395
+ if (!this.contract.write) {
1396
+ throw new Error('Wallet client is required for write operations');
1397
+ }
1398
+ return this.contract.write.deposit([receiver, tokenIn, amountTokenToDeposit, minSharesOut], options);
1399
+ }
1400
+ /**
1401
+ * pause
1402
+ * nonpayable
1403
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1404
+ */
1405
+ async pause(options) {
1406
+ if (!this.contract.write) {
1407
+ throw new Error('Wallet client is required for write operations');
1408
+ }
1409
+ return this.contract.write.pause(options);
1410
+ }
1411
+ /**
1412
+ * permit
1413
+ * nonpayable
1414
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1415
+ */
1416
+ async permit(owner, spender, value, deadline, v, r, s, options) {
1417
+ if (!this.contract.write) {
1418
+ throw new Error('Wallet client is required for write operations');
1419
+ }
1420
+ return this.contract.write.permit([owner, spender, value, deadline, v, r, s], options);
1421
+ }
1422
+ /**
1423
+ * redeem
1424
+ * nonpayable
1425
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1426
+ */
1427
+ async redeem(receiver, amountSharesToRedeem, tokenOut, minTokenOut, burnFromInternalBalance, options) {
1428
+ if (!this.contract.write) {
1429
+ throw new Error('Wallet client is required for write operations');
1430
+ }
1431
+ return this.contract.write.redeem([receiver, amountSharesToRedeem, tokenOut, minTokenOut, burnFromInternalBalance], options);
1432
+ }
1433
+ /**
1434
+ * rewardIndexesCurrent
1435
+ * nonpayable
1436
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1437
+ */
1438
+ async rewardIndexesCurrent(options) {
1439
+ if (!this.contract.write) {
1440
+ throw new Error('Wallet client is required for write operations');
1441
+ }
1442
+ return this.contract.write.rewardIndexesCurrent(options);
1443
+ }
1444
+ /**
1445
+ * transfer
1446
+ * nonpayable
1447
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1448
+ */
1449
+ async transfer(to, amount, options) {
1450
+ if (!this.contract.write) {
1451
+ throw new Error('Wallet client is required for write operations');
1452
+ }
1453
+ return this.contract.write.transfer([to, amount], options);
1454
+ }
1455
+ /**
1456
+ * transferFrom
1457
+ * nonpayable
1458
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1459
+ */
1460
+ async transferFrom(from, to, amount, options) {
1461
+ if (!this.contract.write) {
1462
+ throw new Error('Wallet client is required for write operations');
1463
+ }
1464
+ return this.contract.write.transferFrom([from, to, amount], options);
1465
+ }
1466
+ /**
1467
+ * transferOwnership
1468
+ * nonpayable
1469
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1470
+ */
1471
+ async transferOwnership(newOwner, direct, renounce, options) {
1472
+ if (!this.contract.write) {
1473
+ throw new Error('Wallet client is required for write operations');
1474
+ }
1475
+ return this.contract.write.transferOwnership([newOwner, direct, renounce], options);
1476
+ }
1477
+ /**
1478
+ * unpause
1479
+ * nonpayable
1480
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1481
+ */
1482
+ async unpause(options) {
1483
+ if (!this.contract.write) {
1484
+ throw new Error('Wallet client is required for write operations');
1485
+ }
1486
+ return this.contract.write.unpause(options);
1487
+ }
1488
+ /**
1489
+ * updateSupplyCap
1490
+ * nonpayable
1491
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1492
+ */
1493
+ async updateSupplyCap(newSupplyCap, options) {
1494
+ if (!this.contract.write) {
1495
+ throw new Error('Wallet client is required for write operations');
1496
+ }
1497
+ return this.contract.write.updateSupplyCap([newSupplyCap], options);
1498
+ }
1499
+ /**
1500
+ * Simulate contract write operations (dry-run without sending transaction)
1501
+ *
1502
+ * @example
1503
+ * const result = await contract.simulate.transfer('0x...', 1000n);
1504
+ * console.log('Gas estimate:', result.request.gas);
1505
+ * console.log('Would succeed:', result.result);
1506
+ */
1507
+ get simulate() {
1508
+ const contract = this.contract;
1509
+ if (!contract.simulate) {
1510
+ throw new Error('Public client is required for simulation');
1511
+ }
1512
+ return {
1513
+ /**
1514
+ * Simulate approve
1515
+ * Returns gas estimate and result without sending transaction
1516
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1517
+ */
1518
+ async approve(spender, amount, options) {
1519
+ return contract.simulate.approve([spender, amount], options);
1520
+ },
1521
+ /**
1522
+ * Simulate claimOwnership
1523
+ * Returns gas estimate and result without sending transaction
1524
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1525
+ */
1526
+ async claimOwnership(options) {
1527
+ return contract.simulate.claimOwnership(options);
1528
+ },
1529
+ /**
1530
+ * Simulate claimRewards
1531
+ * Returns gas estimate and result without sending transaction
1532
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1533
+ */
1534
+ async claimRewards(arg0, options) {
1535
+ return contract.simulate.claimRewards([arg0], options);
1536
+ },
1537
+ /**
1538
+ * Simulate deposit
1539
+ * Returns gas estimate and result without sending transaction
1540
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1541
+ */
1542
+ async deposit(receiver, tokenIn, amountTokenToDeposit, minSharesOut, options) {
1543
+ return contract.simulate.deposit([receiver, tokenIn, amountTokenToDeposit, minSharesOut], options);
1544
+ },
1545
+ /**
1546
+ * Simulate pause
1547
+ * Returns gas estimate and result without sending transaction
1548
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1549
+ */
1550
+ async pause(options) {
1551
+ return contract.simulate.pause(options);
1552
+ },
1553
+ /**
1554
+ * Simulate permit
1555
+ * Returns gas estimate and result without sending transaction
1556
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1557
+ */
1558
+ async permit(owner, spender, value, deadline, v, r, s, options) {
1559
+ return contract.simulate.permit([owner, spender, value, deadline, v, r, s], options);
1560
+ },
1561
+ /**
1562
+ * Simulate redeem
1563
+ * Returns gas estimate and result without sending transaction
1564
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1565
+ */
1566
+ async redeem(receiver, amountSharesToRedeem, tokenOut, minTokenOut, burnFromInternalBalance, options) {
1567
+ return contract.simulate.redeem([receiver, amountSharesToRedeem, tokenOut, minTokenOut, burnFromInternalBalance], options);
1568
+ },
1569
+ /**
1570
+ * Simulate rewardIndexesCurrent
1571
+ * Returns gas estimate and result without sending transaction
1572
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1573
+ */
1574
+ async rewardIndexesCurrent(options) {
1575
+ return contract.simulate.rewardIndexesCurrent(options);
1576
+ },
1577
+ /**
1578
+ * Simulate transfer
1579
+ * Returns gas estimate and result without sending transaction
1580
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1581
+ */
1582
+ async transfer(to, amount, options) {
1583
+ return contract.simulate.transfer([to, amount], options);
1584
+ },
1585
+ /**
1586
+ * Simulate transferFrom
1587
+ * Returns gas estimate and result without sending transaction
1588
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1589
+ */
1590
+ async transferFrom(from, to, amount, options) {
1591
+ return contract.simulate.transferFrom([from, to, amount], options);
1592
+ },
1593
+ /**
1594
+ * Simulate transferOwnership
1595
+ * Returns gas estimate and result without sending transaction
1596
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1597
+ */
1598
+ async transferOwnership(newOwner, direct, renounce, options) {
1599
+ return contract.simulate.transferOwnership([newOwner, direct, renounce], options);
1600
+ },
1601
+ /**
1602
+ * Simulate unpause
1603
+ * Returns gas estimate and result without sending transaction
1604
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1605
+ */
1606
+ async unpause(options) {
1607
+ return contract.simulate.unpause(options);
1608
+ },
1609
+ /**
1610
+ * Simulate updateSupplyCap
1611
+ * Returns gas estimate and result without sending transaction
1612
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1613
+ */
1614
+ async updateSupplyCap(newSupplyCap, options) {
1615
+ return contract.simulate.updateSupplyCap([newSupplyCap], options);
1616
+ }
1617
+ };
1618
+ }
1619
+ /**
1620
+ * Watch contract events
1621
+ *
1622
+ * @example
1623
+ * // Watch all Transfer events
1624
+ * const unwatch = contract.watch.Transfer((event) => {
1625
+ * console.log('Transfer:', event);
1626
+ * });
1627
+ *
1628
+ * // Stop watching
1629
+ * unwatch();
1630
+ */
1631
+ get watch() {
1632
+ return {
1633
+ /**
1634
+ * Watch Approval events
1635
+ * @param callback Function to call when event is emitted
1636
+ * @param filter Optional filter for indexed parameters
1637
+ * @returns Unwatch function to stop listening
1638
+ */
1639
+ Approval: (callback, filter) => {
1640
+ return this.publicClient.watchContractEvent({
1641
+ address: this.contractAddress,
1642
+ abi: exports.PendleSUSDESY_jsonAbi,
1643
+ eventName: 'Approval',
1644
+ args: filter,
1645
+ onLogs: (logs) => {
1646
+ logs.forEach((log) => {
1647
+ callback(log.args);
1648
+ });
1649
+ },
1650
+ });
1651
+ },
1652
+ /**
1653
+ * Watch ClaimRewards events
1654
+ * @param callback Function to call when event is emitted
1655
+ * @param filter Optional filter for indexed parameters
1656
+ * @returns Unwatch function to stop listening
1657
+ */
1658
+ ClaimRewards: (callback, filter) => {
1659
+ return this.publicClient.watchContractEvent({
1660
+ address: this.contractAddress,
1661
+ abi: exports.PendleSUSDESY_jsonAbi,
1662
+ eventName: 'ClaimRewards',
1663
+ args: filter,
1664
+ onLogs: (logs) => {
1665
+ logs.forEach((log) => {
1666
+ callback(log.args);
1667
+ });
1668
+ },
1669
+ });
1670
+ },
1671
+ /**
1672
+ * Watch Deposit events
1673
+ * @param callback Function to call when event is emitted
1674
+ * @param filter Optional filter for indexed parameters
1675
+ * @returns Unwatch function to stop listening
1676
+ */
1677
+ Deposit: (callback, filter) => {
1678
+ return this.publicClient.watchContractEvent({
1679
+ address: this.contractAddress,
1680
+ abi: exports.PendleSUSDESY_jsonAbi,
1681
+ eventName: 'Deposit',
1682
+ args: filter,
1683
+ onLogs: (logs) => {
1684
+ logs.forEach((log) => {
1685
+ callback(log.args);
1686
+ });
1687
+ },
1688
+ });
1689
+ },
1690
+ /**
1691
+ * Watch EIP712DomainChanged events
1692
+ * @param callback Function to call when event is emitted
1693
+ * @param filter Optional filter for indexed parameters
1694
+ * @returns Unwatch function to stop listening
1695
+ */
1696
+ EIP712DomainChanged: (callback) => {
1697
+ return this.publicClient.watchContractEvent({
1698
+ address: this.contractAddress,
1699
+ abi: exports.PendleSUSDESY_jsonAbi,
1700
+ eventName: 'EIP712DomainChanged',
1701
+ onLogs: (logs) => {
1702
+ logs.forEach((log) => {
1703
+ callback(log.args);
1704
+ });
1705
+ },
1706
+ });
1707
+ },
1708
+ /**
1709
+ * Watch Initialized events
1710
+ * @param callback Function to call when event is emitted
1711
+ * @param filter Optional filter for indexed parameters
1712
+ * @returns Unwatch function to stop listening
1713
+ */
1714
+ Initialized: (callback) => {
1715
+ return this.publicClient.watchContractEvent({
1716
+ address: this.contractAddress,
1717
+ abi: exports.PendleSUSDESY_jsonAbi,
1718
+ eventName: 'Initialized',
1719
+ onLogs: (logs) => {
1720
+ logs.forEach((log) => {
1721
+ callback(log.args);
1722
+ });
1723
+ },
1724
+ });
1725
+ },
1726
+ /**
1727
+ * Watch OwnershipTransferred events
1728
+ * @param callback Function to call when event is emitted
1729
+ * @param filter Optional filter for indexed parameters
1730
+ * @returns Unwatch function to stop listening
1731
+ */
1732
+ OwnershipTransferred: (callback, filter) => {
1733
+ return this.publicClient.watchContractEvent({
1734
+ address: this.contractAddress,
1735
+ abi: exports.PendleSUSDESY_jsonAbi,
1736
+ eventName: 'OwnershipTransferred',
1737
+ args: filter,
1738
+ onLogs: (logs) => {
1739
+ logs.forEach((log) => {
1740
+ callback(log.args);
1741
+ });
1742
+ },
1743
+ });
1744
+ },
1745
+ /**
1746
+ * Watch Paused events
1747
+ * @param callback Function to call when event is emitted
1748
+ * @param filter Optional filter for indexed parameters
1749
+ * @returns Unwatch function to stop listening
1750
+ */
1751
+ Paused: (callback) => {
1752
+ return this.publicClient.watchContractEvent({
1753
+ address: this.contractAddress,
1754
+ abi: exports.PendleSUSDESY_jsonAbi,
1755
+ eventName: 'Paused',
1756
+ onLogs: (logs) => {
1757
+ logs.forEach((log) => {
1758
+ callback(log.args);
1759
+ });
1760
+ },
1761
+ });
1762
+ },
1763
+ /**
1764
+ * Watch Redeem events
1765
+ * @param callback Function to call when event is emitted
1766
+ * @param filter Optional filter for indexed parameters
1767
+ * @returns Unwatch function to stop listening
1768
+ */
1769
+ Redeem: (callback, filter) => {
1770
+ return this.publicClient.watchContractEvent({
1771
+ address: this.contractAddress,
1772
+ abi: exports.PendleSUSDESY_jsonAbi,
1773
+ eventName: 'Redeem',
1774
+ args: filter,
1775
+ onLogs: (logs) => {
1776
+ logs.forEach((log) => {
1777
+ callback(log.args);
1778
+ });
1779
+ },
1780
+ });
1781
+ },
1782
+ /**
1783
+ * Watch SupplyCapUpdated events
1784
+ * @param callback Function to call when event is emitted
1785
+ * @param filter Optional filter for indexed parameters
1786
+ * @returns Unwatch function to stop listening
1787
+ */
1788
+ SupplyCapUpdated: (callback) => {
1789
+ return this.publicClient.watchContractEvent({
1790
+ address: this.contractAddress,
1791
+ abi: exports.PendleSUSDESY_jsonAbi,
1792
+ eventName: 'SupplyCapUpdated',
1793
+ onLogs: (logs) => {
1794
+ logs.forEach((log) => {
1795
+ callback(log.args);
1796
+ });
1797
+ },
1798
+ });
1799
+ },
1800
+ /**
1801
+ * Watch Transfer events
1802
+ * @param callback Function to call when event is emitted
1803
+ * @param filter Optional filter for indexed parameters
1804
+ * @returns Unwatch function to stop listening
1805
+ */
1806
+ Transfer: (callback, filter) => {
1807
+ return this.publicClient.watchContractEvent({
1808
+ address: this.contractAddress,
1809
+ abi: exports.PendleSUSDESY_jsonAbi,
1810
+ eventName: 'Transfer',
1811
+ args: filter,
1812
+ onLogs: (logs) => {
1813
+ logs.forEach((log) => {
1814
+ callback(log.args);
1815
+ });
1816
+ },
1817
+ });
1818
+ },
1819
+ /**
1820
+ * Watch Unpaused events
1821
+ * @param callback Function to call when event is emitted
1822
+ * @param filter Optional filter for indexed parameters
1823
+ * @returns Unwatch function to stop listening
1824
+ */
1825
+ Unpaused: (callback) => {
1826
+ return this.publicClient.watchContractEvent({
1827
+ address: this.contractAddress,
1828
+ abi: exports.PendleSUSDESY_jsonAbi,
1829
+ eventName: 'Unpaused',
1830
+ onLogs: (logs) => {
1831
+ logs.forEach((log) => {
1832
+ callback(log.args);
1833
+ });
1834
+ },
1835
+ });
1836
+ }
1837
+ };
1838
+ }
1839
+ }
1840
+ exports.PendleSUSDESY_json = PendleSUSDESY_json;