@gitmyabi-stg/musd 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,2858 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * MUSD ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const MUSDAbi: readonly [{
8
+ readonly inputs: readonly [{
9
+ readonly internalType: "address";
10
+ readonly name: "mToken";
11
+ readonly type: "address";
12
+ }, {
13
+ readonly internalType: "address";
14
+ readonly name: "swapFacility";
15
+ readonly type: "address";
16
+ }];
17
+ readonly stateMutability: "nonpayable";
18
+ readonly type: "constructor";
19
+ }, {
20
+ readonly inputs: readonly [];
21
+ readonly name: "AccessControlBadConfirmation";
22
+ readonly type: "error";
23
+ }, {
24
+ readonly inputs: readonly [{
25
+ readonly internalType: "address";
26
+ readonly name: "account";
27
+ readonly type: "address";
28
+ }, {
29
+ readonly internalType: "bytes32";
30
+ readonly name: "neededRole";
31
+ readonly type: "bytes32";
32
+ }];
33
+ readonly name: "AccessControlUnauthorizedAccount";
34
+ readonly type: "error";
35
+ }, {
36
+ readonly inputs: readonly [{
37
+ readonly internalType: "address";
38
+ readonly name: "account";
39
+ readonly type: "address";
40
+ }];
41
+ readonly name: "AccountFrozen";
42
+ readonly type: "error";
43
+ }, {
44
+ readonly inputs: readonly [{
45
+ readonly internalType: "address";
46
+ readonly name: "account";
47
+ readonly type: "address";
48
+ }];
49
+ readonly name: "AccountNotFrozen";
50
+ readonly type: "error";
51
+ }, {
52
+ readonly inputs: readonly [];
53
+ readonly name: "ArrayLengthMismatch";
54
+ readonly type: "error";
55
+ }, {
56
+ readonly inputs: readonly [{
57
+ readonly internalType: "address";
58
+ readonly name: "authorizer";
59
+ readonly type: "address";
60
+ }, {
61
+ readonly internalType: "bytes32";
62
+ readonly name: "nonce";
63
+ readonly type: "bytes32";
64
+ }];
65
+ readonly name: "AuthorizationAlreadyUsed";
66
+ readonly type: "error";
67
+ }, {
68
+ readonly inputs: readonly [{
69
+ readonly internalType: "uint256";
70
+ readonly name: "timestamp";
71
+ readonly type: "uint256";
72
+ }, {
73
+ readonly internalType: "uint256";
74
+ readonly name: "validBefore";
75
+ readonly type: "uint256";
76
+ }];
77
+ readonly name: "AuthorizationExpired";
78
+ readonly type: "error";
79
+ }, {
80
+ readonly inputs: readonly [{
81
+ readonly internalType: "uint256";
82
+ readonly name: "timestamp";
83
+ readonly type: "uint256";
84
+ }, {
85
+ readonly internalType: "uint256";
86
+ readonly name: "validAfter";
87
+ readonly type: "uint256";
88
+ }];
89
+ readonly name: "AuthorizationNotYetValid";
90
+ readonly type: "error";
91
+ }, {
92
+ readonly inputs: readonly [{
93
+ readonly internalType: "address";
94
+ readonly name: "caller";
95
+ readonly type: "address";
96
+ }, {
97
+ readonly internalType: "address";
98
+ readonly name: "payee";
99
+ readonly type: "address";
100
+ }];
101
+ readonly name: "CallerMustBePayee";
102
+ readonly type: "error";
103
+ }, {
104
+ readonly inputs: readonly [];
105
+ readonly name: "EarningIsDisabled";
106
+ readonly type: "error";
107
+ }, {
108
+ readonly inputs: readonly [];
109
+ readonly name: "EarningIsEnabled";
110
+ readonly type: "error";
111
+ }, {
112
+ readonly inputs: readonly [];
113
+ readonly name: "EnforcedPause";
114
+ readonly type: "error";
115
+ }, {
116
+ readonly inputs: readonly [];
117
+ readonly name: "ExpectedPause";
118
+ readonly type: "error";
119
+ }, {
120
+ readonly inputs: readonly [{
121
+ readonly internalType: "address";
122
+ readonly name: "spender";
123
+ readonly type: "address";
124
+ }, {
125
+ readonly internalType: "uint256";
126
+ readonly name: "allowance";
127
+ readonly type: "uint256";
128
+ }, {
129
+ readonly internalType: "uint256";
130
+ readonly name: "needed";
131
+ readonly type: "uint256";
132
+ }];
133
+ readonly name: "InsufficientAllowance";
134
+ readonly type: "error";
135
+ }, {
136
+ readonly inputs: readonly [{
137
+ readonly internalType: "uint256";
138
+ readonly name: "amount";
139
+ readonly type: "uint256";
140
+ }];
141
+ readonly name: "InsufficientAmount";
142
+ readonly type: "error";
143
+ }, {
144
+ readonly inputs: readonly [{
145
+ readonly internalType: "address";
146
+ readonly name: "account";
147
+ readonly type: "address";
148
+ }, {
149
+ readonly internalType: "uint256";
150
+ readonly name: "balance";
151
+ readonly type: "uint256";
152
+ }, {
153
+ readonly internalType: "uint256";
154
+ readonly name: "amount";
155
+ readonly type: "uint256";
156
+ }];
157
+ readonly name: "InsufficientBalance";
158
+ readonly type: "error";
159
+ }, {
160
+ readonly inputs: readonly [{
161
+ readonly internalType: "uint256";
162
+ readonly name: "nonce";
163
+ readonly type: "uint256";
164
+ }, {
165
+ readonly internalType: "uint256";
166
+ readonly name: "expectedNonce";
167
+ readonly type: "uint256";
168
+ }];
169
+ readonly name: "InvalidAccountNonce";
170
+ readonly type: "error";
171
+ }, {
172
+ readonly inputs: readonly [];
173
+ readonly name: "InvalidInitialization";
174
+ readonly type: "error";
175
+ }, {
176
+ readonly inputs: readonly [{
177
+ readonly internalType: "address";
178
+ readonly name: "recipient";
179
+ readonly type: "address";
180
+ }];
181
+ readonly name: "InvalidRecipient";
182
+ readonly type: "error";
183
+ }, {
184
+ readonly inputs: readonly [];
185
+ readonly name: "InvalidSignature";
186
+ readonly type: "error";
187
+ }, {
188
+ readonly inputs: readonly [];
189
+ readonly name: "InvalidSignatureLength";
190
+ readonly type: "error";
191
+ }, {
192
+ readonly inputs: readonly [];
193
+ readonly name: "InvalidSignatureS";
194
+ readonly type: "error";
195
+ }, {
196
+ readonly inputs: readonly [];
197
+ readonly name: "InvalidSignatureV";
198
+ readonly type: "error";
199
+ }, {
200
+ readonly inputs: readonly [];
201
+ readonly name: "NotInitializing";
202
+ readonly type: "error";
203
+ }, {
204
+ readonly inputs: readonly [];
205
+ readonly name: "NotSwapFacility";
206
+ readonly type: "error";
207
+ }, {
208
+ readonly inputs: readonly [{
209
+ readonly internalType: "uint256";
210
+ readonly name: "deadline";
211
+ readonly type: "uint256";
212
+ }, {
213
+ readonly internalType: "uint256";
214
+ readonly name: "timestamp";
215
+ readonly type: "uint256";
216
+ }];
217
+ readonly name: "SignatureExpired";
218
+ readonly type: "error";
219
+ }, {
220
+ readonly inputs: readonly [];
221
+ readonly name: "SignerMismatch";
222
+ readonly type: "error";
223
+ }, {
224
+ readonly inputs: readonly [];
225
+ readonly name: "ZeroAdmin";
226
+ readonly type: "error";
227
+ }, {
228
+ readonly inputs: readonly [];
229
+ readonly name: "ZeroForcedTransferManager";
230
+ readonly type: "error";
231
+ }, {
232
+ readonly inputs: readonly [];
233
+ readonly name: "ZeroFreezeManager";
234
+ readonly type: "error";
235
+ }, {
236
+ readonly inputs: readonly [];
237
+ readonly name: "ZeroMToken";
238
+ readonly type: "error";
239
+ }, {
240
+ readonly inputs: readonly [];
241
+ readonly name: "ZeroPauser";
242
+ readonly type: "error";
243
+ }, {
244
+ readonly inputs: readonly [];
245
+ readonly name: "ZeroSwapFacility";
246
+ readonly type: "error";
247
+ }, {
248
+ readonly inputs: readonly [];
249
+ readonly name: "ZeroYieldRecipient";
250
+ readonly type: "error";
251
+ }, {
252
+ readonly inputs: readonly [];
253
+ readonly name: "ZeroYieldRecipientManager";
254
+ readonly type: "error";
255
+ }, {
256
+ readonly anonymous: false;
257
+ readonly inputs: readonly [{
258
+ readonly indexed: true;
259
+ readonly internalType: "address";
260
+ readonly name: "account";
261
+ readonly type: "address";
262
+ }, {
263
+ readonly indexed: true;
264
+ readonly internalType: "address";
265
+ readonly name: "spender";
266
+ readonly type: "address";
267
+ }, {
268
+ readonly indexed: false;
269
+ readonly internalType: "uint256";
270
+ readonly name: "amount";
271
+ readonly type: "uint256";
272
+ }];
273
+ readonly name: "Approval";
274
+ readonly type: "event";
275
+ }, {
276
+ readonly anonymous: false;
277
+ readonly inputs: readonly [{
278
+ readonly indexed: true;
279
+ readonly internalType: "address";
280
+ readonly name: "authorizer";
281
+ readonly type: "address";
282
+ }, {
283
+ readonly indexed: true;
284
+ readonly internalType: "bytes32";
285
+ readonly name: "nonce";
286
+ readonly type: "bytes32";
287
+ }];
288
+ readonly name: "AuthorizationCanceled";
289
+ readonly type: "event";
290
+ }, {
291
+ readonly anonymous: false;
292
+ readonly inputs: readonly [{
293
+ readonly indexed: true;
294
+ readonly internalType: "address";
295
+ readonly name: "authorizer";
296
+ readonly type: "address";
297
+ }, {
298
+ readonly indexed: true;
299
+ readonly internalType: "bytes32";
300
+ readonly name: "nonce";
301
+ readonly type: "bytes32";
302
+ }];
303
+ readonly name: "AuthorizationUsed";
304
+ readonly type: "event";
305
+ }, {
306
+ readonly anonymous: false;
307
+ readonly inputs: readonly [];
308
+ readonly name: "EIP712DomainChanged";
309
+ readonly type: "event";
310
+ }, {
311
+ readonly anonymous: false;
312
+ readonly inputs: readonly [{
313
+ readonly indexed: false;
314
+ readonly internalType: "uint128";
315
+ readonly name: "index";
316
+ readonly type: "uint128";
317
+ }];
318
+ readonly name: "EarningDisabled";
319
+ readonly type: "event";
320
+ }, {
321
+ readonly anonymous: false;
322
+ readonly inputs: readonly [{
323
+ readonly indexed: false;
324
+ readonly internalType: "uint128";
325
+ readonly name: "index";
326
+ readonly type: "uint128";
327
+ }];
328
+ readonly name: "EarningEnabled";
329
+ readonly type: "event";
330
+ }, {
331
+ readonly anonymous: false;
332
+ readonly inputs: readonly [{
333
+ readonly indexed: true;
334
+ readonly internalType: "address";
335
+ readonly name: "frozenAccount";
336
+ readonly type: "address";
337
+ }, {
338
+ readonly indexed: true;
339
+ readonly internalType: "address";
340
+ readonly name: "recipient";
341
+ readonly type: "address";
342
+ }, {
343
+ readonly indexed: true;
344
+ readonly internalType: "address";
345
+ readonly name: "forcedTransferManager";
346
+ readonly type: "address";
347
+ }, {
348
+ readonly indexed: false;
349
+ readonly internalType: "uint256";
350
+ readonly name: "amount";
351
+ readonly type: "uint256";
352
+ }];
353
+ readonly name: "ForcedTransfer";
354
+ readonly type: "event";
355
+ }, {
356
+ readonly anonymous: false;
357
+ readonly inputs: readonly [{
358
+ readonly indexed: true;
359
+ readonly internalType: "address";
360
+ readonly name: "account";
361
+ readonly type: "address";
362
+ }, {
363
+ readonly indexed: false;
364
+ readonly internalType: "uint256";
365
+ readonly name: "timestamp";
366
+ readonly type: "uint256";
367
+ }];
368
+ readonly name: "Frozen";
369
+ readonly type: "event";
370
+ }, {
371
+ readonly anonymous: false;
372
+ readonly inputs: readonly [{
373
+ readonly indexed: false;
374
+ readonly internalType: "uint64";
375
+ readonly name: "version";
376
+ readonly type: "uint64";
377
+ }];
378
+ readonly name: "Initialized";
379
+ readonly type: "event";
380
+ }, {
381
+ readonly anonymous: false;
382
+ readonly inputs: readonly [{
383
+ readonly indexed: false;
384
+ readonly internalType: "address";
385
+ readonly name: "account";
386
+ readonly type: "address";
387
+ }];
388
+ readonly name: "Paused";
389
+ readonly type: "event";
390
+ }, {
391
+ readonly anonymous: false;
392
+ readonly inputs: readonly [{
393
+ readonly indexed: true;
394
+ readonly internalType: "bytes32";
395
+ readonly name: "role";
396
+ readonly type: "bytes32";
397
+ }, {
398
+ readonly indexed: true;
399
+ readonly internalType: "bytes32";
400
+ readonly name: "previousAdminRole";
401
+ readonly type: "bytes32";
402
+ }, {
403
+ readonly indexed: true;
404
+ readonly internalType: "bytes32";
405
+ readonly name: "newAdminRole";
406
+ readonly type: "bytes32";
407
+ }];
408
+ readonly name: "RoleAdminChanged";
409
+ readonly type: "event";
410
+ }, {
411
+ readonly anonymous: false;
412
+ readonly inputs: readonly [{
413
+ readonly indexed: true;
414
+ readonly internalType: "bytes32";
415
+ readonly name: "role";
416
+ readonly type: "bytes32";
417
+ }, {
418
+ readonly indexed: true;
419
+ readonly internalType: "address";
420
+ readonly name: "account";
421
+ readonly type: "address";
422
+ }, {
423
+ readonly indexed: true;
424
+ readonly internalType: "address";
425
+ readonly name: "sender";
426
+ readonly type: "address";
427
+ }];
428
+ readonly name: "RoleGranted";
429
+ readonly type: "event";
430
+ }, {
431
+ readonly anonymous: false;
432
+ readonly inputs: readonly [{
433
+ readonly indexed: true;
434
+ readonly internalType: "bytes32";
435
+ readonly name: "role";
436
+ readonly type: "bytes32";
437
+ }, {
438
+ readonly indexed: true;
439
+ readonly internalType: "address";
440
+ readonly name: "account";
441
+ readonly type: "address";
442
+ }, {
443
+ readonly indexed: true;
444
+ readonly internalType: "address";
445
+ readonly name: "sender";
446
+ readonly type: "address";
447
+ }];
448
+ readonly name: "RoleRevoked";
449
+ readonly type: "event";
450
+ }, {
451
+ readonly anonymous: false;
452
+ readonly inputs: readonly [{
453
+ readonly indexed: true;
454
+ readonly internalType: "address";
455
+ readonly name: "sender";
456
+ readonly type: "address";
457
+ }, {
458
+ readonly indexed: true;
459
+ readonly internalType: "address";
460
+ readonly name: "recipient";
461
+ readonly type: "address";
462
+ }, {
463
+ readonly indexed: false;
464
+ readonly internalType: "uint256";
465
+ readonly name: "amount";
466
+ readonly type: "uint256";
467
+ }];
468
+ readonly name: "Transfer";
469
+ readonly type: "event";
470
+ }, {
471
+ readonly anonymous: false;
472
+ readonly inputs: readonly [{
473
+ readonly indexed: true;
474
+ readonly internalType: "address";
475
+ readonly name: "account";
476
+ readonly type: "address";
477
+ }, {
478
+ readonly indexed: false;
479
+ readonly internalType: "uint256";
480
+ readonly name: "timestamp";
481
+ readonly type: "uint256";
482
+ }];
483
+ readonly name: "Unfrozen";
484
+ readonly type: "event";
485
+ }, {
486
+ readonly anonymous: false;
487
+ readonly inputs: readonly [{
488
+ readonly indexed: false;
489
+ readonly internalType: "address";
490
+ readonly name: "account";
491
+ readonly type: "address";
492
+ }];
493
+ readonly name: "Unpaused";
494
+ readonly type: "event";
495
+ }, {
496
+ readonly anonymous: false;
497
+ readonly inputs: readonly [{
498
+ readonly indexed: false;
499
+ readonly internalType: "uint256";
500
+ readonly name: "yield";
501
+ readonly type: "uint256";
502
+ }];
503
+ readonly name: "YieldClaimed";
504
+ readonly type: "event";
505
+ }, {
506
+ readonly anonymous: false;
507
+ readonly inputs: readonly [{
508
+ readonly indexed: true;
509
+ readonly internalType: "address";
510
+ readonly name: "yieldRecipient";
511
+ readonly type: "address";
512
+ }];
513
+ readonly name: "YieldRecipientSet";
514
+ readonly type: "event";
515
+ }, {
516
+ readonly inputs: readonly [];
517
+ readonly name: "CANCEL_AUTHORIZATION_TYPEHASH";
518
+ readonly outputs: readonly [{
519
+ readonly internalType: "bytes32";
520
+ readonly name: "";
521
+ readonly type: "bytes32";
522
+ }];
523
+ readonly stateMutability: "view";
524
+ readonly type: "function";
525
+ }, {
526
+ readonly inputs: readonly [];
527
+ readonly name: "DEFAULT_ADMIN_ROLE";
528
+ readonly outputs: readonly [{
529
+ readonly internalType: "bytes32";
530
+ readonly name: "";
531
+ readonly type: "bytes32";
532
+ }];
533
+ readonly stateMutability: "view";
534
+ readonly type: "function";
535
+ }, {
536
+ readonly inputs: readonly [];
537
+ readonly name: "DOMAIN_SEPARATOR";
538
+ readonly outputs: readonly [{
539
+ readonly internalType: "bytes32";
540
+ readonly name: "";
541
+ readonly type: "bytes32";
542
+ }];
543
+ readonly stateMutability: "view";
544
+ readonly type: "function";
545
+ }, {
546
+ readonly inputs: readonly [];
547
+ readonly name: "FORCED_TRANSFER_MANAGER_ROLE";
548
+ readonly outputs: readonly [{
549
+ readonly internalType: "bytes32";
550
+ readonly name: "";
551
+ readonly type: "bytes32";
552
+ }];
553
+ readonly stateMutability: "view";
554
+ readonly type: "function";
555
+ }, {
556
+ readonly inputs: readonly [];
557
+ readonly name: "FREEZE_MANAGER_ROLE";
558
+ readonly outputs: readonly [{
559
+ readonly internalType: "bytes32";
560
+ readonly name: "";
561
+ readonly type: "bytes32";
562
+ }];
563
+ readonly stateMutability: "view";
564
+ readonly type: "function";
565
+ }, {
566
+ readonly inputs: readonly [];
567
+ readonly name: "PAUSER_ROLE";
568
+ readonly outputs: readonly [{
569
+ readonly internalType: "bytes32";
570
+ readonly name: "";
571
+ readonly type: "bytes32";
572
+ }];
573
+ readonly stateMutability: "view";
574
+ readonly type: "function";
575
+ }, {
576
+ readonly inputs: readonly [];
577
+ readonly name: "PERMIT_TYPEHASH";
578
+ readonly outputs: readonly [{
579
+ readonly internalType: "bytes32";
580
+ readonly name: "";
581
+ readonly type: "bytes32";
582
+ }];
583
+ readonly stateMutability: "view";
584
+ readonly type: "function";
585
+ }, {
586
+ readonly inputs: readonly [];
587
+ readonly name: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH";
588
+ readonly outputs: readonly [{
589
+ readonly internalType: "bytes32";
590
+ readonly name: "";
591
+ readonly type: "bytes32";
592
+ }];
593
+ readonly stateMutability: "view";
594
+ readonly type: "function";
595
+ }, {
596
+ readonly inputs: readonly [];
597
+ readonly name: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH";
598
+ readonly outputs: readonly [{
599
+ readonly internalType: "bytes32";
600
+ readonly name: "";
601
+ readonly type: "bytes32";
602
+ }];
603
+ readonly stateMutability: "view";
604
+ readonly type: "function";
605
+ }, {
606
+ readonly inputs: readonly [];
607
+ readonly name: "YIELD_RECIPIENT_MANAGER_ROLE";
608
+ readonly outputs: readonly [{
609
+ readonly internalType: "bytes32";
610
+ readonly name: "";
611
+ readonly type: "bytes32";
612
+ }];
613
+ readonly stateMutability: "view";
614
+ readonly type: "function";
615
+ }, {
616
+ readonly inputs: readonly [{
617
+ readonly internalType: "address";
618
+ readonly name: "account";
619
+ readonly type: "address";
620
+ }, {
621
+ readonly internalType: "address";
622
+ readonly name: "spender";
623
+ readonly type: "address";
624
+ }];
625
+ readonly name: "allowance";
626
+ readonly outputs: readonly [{
627
+ readonly internalType: "uint256";
628
+ readonly name: "";
629
+ readonly type: "uint256";
630
+ }];
631
+ readonly stateMutability: "view";
632
+ readonly type: "function";
633
+ }, {
634
+ readonly inputs: readonly [{
635
+ readonly internalType: "address";
636
+ readonly name: "spender_";
637
+ readonly type: "address";
638
+ }, {
639
+ readonly internalType: "uint256";
640
+ readonly name: "amount_";
641
+ readonly type: "uint256";
642
+ }];
643
+ readonly name: "approve";
644
+ readonly outputs: readonly [{
645
+ readonly internalType: "bool";
646
+ readonly name: "";
647
+ readonly type: "bool";
648
+ }];
649
+ readonly stateMutability: "nonpayable";
650
+ readonly type: "function";
651
+ }, {
652
+ readonly inputs: readonly [{
653
+ readonly internalType: "address";
654
+ readonly name: "authorizer";
655
+ readonly type: "address";
656
+ }, {
657
+ readonly internalType: "bytes32";
658
+ readonly name: "nonce";
659
+ readonly type: "bytes32";
660
+ }];
661
+ readonly name: "authorizationState";
662
+ readonly outputs: readonly [{
663
+ readonly internalType: "bool";
664
+ readonly name: "";
665
+ readonly type: "bool";
666
+ }];
667
+ readonly stateMutability: "view";
668
+ readonly type: "function";
669
+ }, {
670
+ readonly inputs: readonly [{
671
+ readonly internalType: "address";
672
+ readonly name: "account";
673
+ readonly type: "address";
674
+ }];
675
+ readonly name: "balanceOf";
676
+ readonly outputs: readonly [{
677
+ readonly internalType: "uint256";
678
+ readonly name: "";
679
+ readonly type: "uint256";
680
+ }];
681
+ readonly stateMutability: "view";
682
+ readonly type: "function";
683
+ }, {
684
+ readonly inputs: readonly [{
685
+ readonly internalType: "address";
686
+ readonly name: "authorizer_";
687
+ readonly type: "address";
688
+ }, {
689
+ readonly internalType: "bytes32";
690
+ readonly name: "nonce_";
691
+ readonly type: "bytes32";
692
+ }, {
693
+ readonly internalType: "bytes32";
694
+ readonly name: "r_";
695
+ readonly type: "bytes32";
696
+ }, {
697
+ readonly internalType: "bytes32";
698
+ readonly name: "vs_";
699
+ readonly type: "bytes32";
700
+ }];
701
+ readonly name: "cancelAuthorization";
702
+ readonly outputs: readonly [];
703
+ readonly stateMutability: "nonpayable";
704
+ readonly type: "function";
705
+ }, {
706
+ readonly inputs: readonly [{
707
+ readonly internalType: "address";
708
+ readonly name: "authorizer_";
709
+ readonly type: "address";
710
+ }, {
711
+ readonly internalType: "bytes32";
712
+ readonly name: "nonce_";
713
+ readonly type: "bytes32";
714
+ }, {
715
+ readonly internalType: "uint8";
716
+ readonly name: "v_";
717
+ readonly type: "uint8";
718
+ }, {
719
+ readonly internalType: "bytes32";
720
+ readonly name: "r_";
721
+ readonly type: "bytes32";
722
+ }, {
723
+ readonly internalType: "bytes32";
724
+ readonly name: "s_";
725
+ readonly type: "bytes32";
726
+ }];
727
+ readonly name: "cancelAuthorization";
728
+ readonly outputs: readonly [];
729
+ readonly stateMutability: "nonpayable";
730
+ readonly type: "function";
731
+ }, {
732
+ readonly inputs: readonly [{
733
+ readonly internalType: "address";
734
+ readonly name: "authorizer_";
735
+ readonly type: "address";
736
+ }, {
737
+ readonly internalType: "bytes32";
738
+ readonly name: "nonce_";
739
+ readonly type: "bytes32";
740
+ }, {
741
+ readonly internalType: "bytes";
742
+ readonly name: "signature_";
743
+ readonly type: "bytes";
744
+ }];
745
+ readonly name: "cancelAuthorization";
746
+ readonly outputs: readonly [];
747
+ readonly stateMutability: "nonpayable";
748
+ readonly type: "function";
749
+ }, {
750
+ readonly inputs: readonly [];
751
+ readonly name: "claimYield";
752
+ readonly outputs: readonly [{
753
+ readonly internalType: "uint256";
754
+ readonly name: "";
755
+ readonly type: "uint256";
756
+ }];
757
+ readonly stateMutability: "nonpayable";
758
+ readonly type: "function";
759
+ }, {
760
+ readonly inputs: readonly [];
761
+ readonly name: "currentIndex";
762
+ readonly outputs: readonly [{
763
+ readonly internalType: "uint128";
764
+ readonly name: "";
765
+ readonly type: "uint128";
766
+ }];
767
+ readonly stateMutability: "view";
768
+ readonly type: "function";
769
+ }, {
770
+ readonly inputs: readonly [];
771
+ readonly name: "decimals";
772
+ readonly outputs: readonly [{
773
+ readonly internalType: "uint8";
774
+ readonly name: "";
775
+ readonly type: "uint8";
776
+ }];
777
+ readonly stateMutability: "view";
778
+ readonly type: "function";
779
+ }, {
780
+ readonly inputs: readonly [];
781
+ readonly name: "disableEarning";
782
+ readonly outputs: readonly [];
783
+ readonly stateMutability: "nonpayable";
784
+ readonly type: "function";
785
+ }, {
786
+ readonly inputs: readonly [];
787
+ readonly name: "eip712Domain";
788
+ readonly outputs: readonly [{
789
+ readonly internalType: "bytes1";
790
+ readonly name: "fields_";
791
+ readonly type: "bytes1";
792
+ }, {
793
+ readonly internalType: "string";
794
+ readonly name: "name_";
795
+ readonly type: "string";
796
+ }, {
797
+ readonly internalType: "string";
798
+ readonly name: "version_";
799
+ readonly type: "string";
800
+ }, {
801
+ readonly internalType: "uint256";
802
+ readonly name: "chainId_";
803
+ readonly type: "uint256";
804
+ }, {
805
+ readonly internalType: "address";
806
+ readonly name: "verifyingContract_";
807
+ readonly type: "address";
808
+ }, {
809
+ readonly internalType: "bytes32";
810
+ readonly name: "salt_";
811
+ readonly type: "bytes32";
812
+ }, {
813
+ readonly internalType: "uint256[]";
814
+ readonly name: "extensions_";
815
+ readonly type: "uint256[]";
816
+ }];
817
+ readonly stateMutability: "view";
818
+ readonly type: "function";
819
+ }, {
820
+ readonly inputs: readonly [];
821
+ readonly name: "enableEarning";
822
+ readonly outputs: readonly [];
823
+ readonly stateMutability: "nonpayable";
824
+ readonly type: "function";
825
+ }, {
826
+ readonly inputs: readonly [{
827
+ readonly internalType: "address";
828
+ readonly name: "frozenAccount";
829
+ readonly type: "address";
830
+ }, {
831
+ readonly internalType: "address";
832
+ readonly name: "recipient";
833
+ readonly type: "address";
834
+ }, {
835
+ readonly internalType: "uint256";
836
+ readonly name: "amount";
837
+ readonly type: "uint256";
838
+ }];
839
+ readonly name: "forceTransfer";
840
+ readonly outputs: readonly [];
841
+ readonly stateMutability: "nonpayable";
842
+ readonly type: "function";
843
+ }, {
844
+ readonly inputs: readonly [{
845
+ readonly internalType: "address[]";
846
+ readonly name: "frozenAccounts";
847
+ readonly type: "address[]";
848
+ }, {
849
+ readonly internalType: "address[]";
850
+ readonly name: "recipients";
851
+ readonly type: "address[]";
852
+ }, {
853
+ readonly internalType: "uint256[]";
854
+ readonly name: "amounts";
855
+ readonly type: "uint256[]";
856
+ }];
857
+ readonly name: "forceTransfers";
858
+ readonly outputs: readonly [];
859
+ readonly stateMutability: "nonpayable";
860
+ readonly type: "function";
861
+ }, {
862
+ readonly inputs: readonly [{
863
+ readonly internalType: "address";
864
+ readonly name: "account";
865
+ readonly type: "address";
866
+ }];
867
+ readonly name: "freeze";
868
+ readonly outputs: readonly [];
869
+ readonly stateMutability: "nonpayable";
870
+ readonly type: "function";
871
+ }, {
872
+ readonly inputs: readonly [{
873
+ readonly internalType: "address[]";
874
+ readonly name: "accounts";
875
+ readonly type: "address[]";
876
+ }];
877
+ readonly name: "freezeAccounts";
878
+ readonly outputs: readonly [];
879
+ readonly stateMutability: "nonpayable";
880
+ readonly type: "function";
881
+ }, {
882
+ readonly inputs: readonly [{
883
+ readonly internalType: "bytes32";
884
+ readonly name: "role";
885
+ readonly type: "bytes32";
886
+ }];
887
+ readonly name: "getRoleAdmin";
888
+ readonly outputs: readonly [{
889
+ readonly internalType: "bytes32";
890
+ readonly name: "";
891
+ readonly type: "bytes32";
892
+ }];
893
+ readonly stateMutability: "view";
894
+ readonly type: "function";
895
+ }, {
896
+ readonly inputs: readonly [{
897
+ readonly internalType: "bytes32";
898
+ readonly name: "role";
899
+ readonly type: "bytes32";
900
+ }, {
901
+ readonly internalType: "address";
902
+ readonly name: "account";
903
+ readonly type: "address";
904
+ }];
905
+ readonly name: "grantRole";
906
+ readonly outputs: readonly [];
907
+ readonly stateMutability: "nonpayable";
908
+ readonly type: "function";
909
+ }, {
910
+ readonly inputs: readonly [{
911
+ readonly internalType: "bytes32";
912
+ readonly name: "role";
913
+ readonly type: "bytes32";
914
+ }, {
915
+ readonly internalType: "address";
916
+ readonly name: "account";
917
+ readonly type: "address";
918
+ }];
919
+ readonly name: "hasRole";
920
+ readonly outputs: readonly [{
921
+ readonly internalType: "bool";
922
+ readonly name: "";
923
+ readonly type: "bool";
924
+ }];
925
+ readonly stateMutability: "view";
926
+ readonly type: "function";
927
+ }, {
928
+ readonly inputs: readonly [{
929
+ readonly internalType: "address";
930
+ readonly name: "yieldRecipient";
931
+ readonly type: "address";
932
+ }, {
933
+ readonly internalType: "address";
934
+ readonly name: "admin";
935
+ readonly type: "address";
936
+ }, {
937
+ readonly internalType: "address";
938
+ readonly name: "freezeManager";
939
+ readonly type: "address";
940
+ }, {
941
+ readonly internalType: "address";
942
+ readonly name: "yieldRecipientManager";
943
+ readonly type: "address";
944
+ }, {
945
+ readonly internalType: "address";
946
+ readonly name: "pauser";
947
+ readonly type: "address";
948
+ }, {
949
+ readonly internalType: "address";
950
+ readonly name: "forcedTransferManager";
951
+ readonly type: "address";
952
+ }];
953
+ readonly name: "initialize";
954
+ readonly outputs: readonly [];
955
+ readonly stateMutability: "nonpayable";
956
+ readonly type: "function";
957
+ }, {
958
+ readonly inputs: readonly [{
959
+ readonly internalType: "string";
960
+ readonly name: "name";
961
+ readonly type: "string";
962
+ }, {
963
+ readonly internalType: "string";
964
+ readonly name: "symbol";
965
+ readonly type: "string";
966
+ }, {
967
+ readonly internalType: "address";
968
+ readonly name: "yieldRecipient_";
969
+ readonly type: "address";
970
+ }, {
971
+ readonly internalType: "address";
972
+ readonly name: "admin";
973
+ readonly type: "address";
974
+ }, {
975
+ readonly internalType: "address";
976
+ readonly name: "freezeManager";
977
+ readonly type: "address";
978
+ }, {
979
+ readonly internalType: "address";
980
+ readonly name: "yieldRecipientManager";
981
+ readonly type: "address";
982
+ }];
983
+ readonly name: "initialize";
984
+ readonly outputs: readonly [];
985
+ readonly stateMutability: "nonpayable";
986
+ readonly type: "function";
987
+ }, {
988
+ readonly inputs: readonly [];
989
+ readonly name: "isEarningEnabled";
990
+ readonly outputs: readonly [{
991
+ readonly internalType: "bool";
992
+ readonly name: "";
993
+ readonly type: "bool";
994
+ }];
995
+ readonly stateMutability: "view";
996
+ readonly type: "function";
997
+ }, {
998
+ readonly inputs: readonly [{
999
+ readonly internalType: "address";
1000
+ readonly name: "account";
1001
+ readonly type: "address";
1002
+ }];
1003
+ readonly name: "isFrozen";
1004
+ readonly outputs: readonly [{
1005
+ readonly internalType: "bool";
1006
+ readonly name: "";
1007
+ readonly type: "bool";
1008
+ }];
1009
+ readonly stateMutability: "view";
1010
+ readonly type: "function";
1011
+ }, {
1012
+ readonly inputs: readonly [];
1013
+ readonly name: "mToken";
1014
+ readonly outputs: readonly [{
1015
+ readonly internalType: "address";
1016
+ readonly name: "";
1017
+ readonly type: "address";
1018
+ }];
1019
+ readonly stateMutability: "view";
1020
+ readonly type: "function";
1021
+ }, {
1022
+ readonly inputs: readonly [];
1023
+ readonly name: "name";
1024
+ readonly outputs: readonly [{
1025
+ readonly internalType: "string";
1026
+ readonly name: "";
1027
+ readonly type: "string";
1028
+ }];
1029
+ readonly stateMutability: "view";
1030
+ readonly type: "function";
1031
+ }, {
1032
+ readonly inputs: readonly [{
1033
+ readonly internalType: "address";
1034
+ readonly name: "account";
1035
+ readonly type: "address";
1036
+ }];
1037
+ readonly name: "nonces";
1038
+ readonly outputs: readonly [{
1039
+ readonly internalType: "uint256";
1040
+ readonly name: "";
1041
+ readonly type: "uint256";
1042
+ }];
1043
+ readonly stateMutability: "view";
1044
+ readonly type: "function";
1045
+ }, {
1046
+ readonly inputs: readonly [];
1047
+ readonly name: "pause";
1048
+ readonly outputs: readonly [];
1049
+ readonly stateMutability: "nonpayable";
1050
+ readonly type: "function";
1051
+ }, {
1052
+ readonly inputs: readonly [];
1053
+ readonly name: "paused";
1054
+ readonly outputs: readonly [{
1055
+ readonly internalType: "bool";
1056
+ readonly name: "";
1057
+ readonly type: "bool";
1058
+ }];
1059
+ readonly stateMutability: "view";
1060
+ readonly type: "function";
1061
+ }, {
1062
+ readonly inputs: readonly [{
1063
+ readonly internalType: "address";
1064
+ readonly name: "owner_";
1065
+ readonly type: "address";
1066
+ }, {
1067
+ readonly internalType: "address";
1068
+ readonly name: "spender_";
1069
+ readonly type: "address";
1070
+ }, {
1071
+ readonly internalType: "uint256";
1072
+ readonly name: "value_";
1073
+ readonly type: "uint256";
1074
+ }, {
1075
+ readonly internalType: "uint256";
1076
+ readonly name: "deadline_";
1077
+ readonly type: "uint256";
1078
+ }, {
1079
+ readonly internalType: "bytes";
1080
+ readonly name: "signature_";
1081
+ readonly type: "bytes";
1082
+ }];
1083
+ readonly name: "permit";
1084
+ readonly outputs: readonly [];
1085
+ readonly stateMutability: "nonpayable";
1086
+ readonly type: "function";
1087
+ }, {
1088
+ readonly inputs: readonly [{
1089
+ readonly internalType: "address";
1090
+ readonly name: "owner_";
1091
+ readonly type: "address";
1092
+ }, {
1093
+ readonly internalType: "address";
1094
+ readonly name: "spender_";
1095
+ readonly type: "address";
1096
+ }, {
1097
+ readonly internalType: "uint256";
1098
+ readonly name: "value_";
1099
+ readonly type: "uint256";
1100
+ }, {
1101
+ readonly internalType: "uint256";
1102
+ readonly name: "deadline_";
1103
+ readonly type: "uint256";
1104
+ }, {
1105
+ readonly internalType: "uint8";
1106
+ readonly name: "v_";
1107
+ readonly type: "uint8";
1108
+ }, {
1109
+ readonly internalType: "bytes32";
1110
+ readonly name: "r_";
1111
+ readonly type: "bytes32";
1112
+ }, {
1113
+ readonly internalType: "bytes32";
1114
+ readonly name: "s_";
1115
+ readonly type: "bytes32";
1116
+ }];
1117
+ readonly name: "permit";
1118
+ readonly outputs: readonly [];
1119
+ readonly stateMutability: "nonpayable";
1120
+ readonly type: "function";
1121
+ }, {
1122
+ readonly inputs: readonly [{
1123
+ readonly internalType: "address";
1124
+ readonly name: "from_";
1125
+ readonly type: "address";
1126
+ }, {
1127
+ readonly internalType: "address";
1128
+ readonly name: "to_";
1129
+ readonly type: "address";
1130
+ }, {
1131
+ readonly internalType: "uint256";
1132
+ readonly name: "value_";
1133
+ readonly type: "uint256";
1134
+ }, {
1135
+ readonly internalType: "uint256";
1136
+ readonly name: "validAfter_";
1137
+ readonly type: "uint256";
1138
+ }, {
1139
+ readonly internalType: "uint256";
1140
+ readonly name: "validBefore_";
1141
+ readonly type: "uint256";
1142
+ }, {
1143
+ readonly internalType: "bytes32";
1144
+ readonly name: "nonce_";
1145
+ readonly type: "bytes32";
1146
+ }, {
1147
+ readonly internalType: "bytes";
1148
+ readonly name: "signature_";
1149
+ readonly type: "bytes";
1150
+ }];
1151
+ readonly name: "receiveWithAuthorization";
1152
+ readonly outputs: readonly [];
1153
+ readonly stateMutability: "nonpayable";
1154
+ readonly type: "function";
1155
+ }, {
1156
+ readonly inputs: readonly [{
1157
+ readonly internalType: "address";
1158
+ readonly name: "from_";
1159
+ readonly type: "address";
1160
+ }, {
1161
+ readonly internalType: "address";
1162
+ readonly name: "to_";
1163
+ readonly type: "address";
1164
+ }, {
1165
+ readonly internalType: "uint256";
1166
+ readonly name: "value_";
1167
+ readonly type: "uint256";
1168
+ }, {
1169
+ readonly internalType: "uint256";
1170
+ readonly name: "validAfter_";
1171
+ readonly type: "uint256";
1172
+ }, {
1173
+ readonly internalType: "uint256";
1174
+ readonly name: "validBefore_";
1175
+ readonly type: "uint256";
1176
+ }, {
1177
+ readonly internalType: "bytes32";
1178
+ readonly name: "nonce_";
1179
+ readonly type: "bytes32";
1180
+ }, {
1181
+ readonly internalType: "bytes32";
1182
+ readonly name: "r_";
1183
+ readonly type: "bytes32";
1184
+ }, {
1185
+ readonly internalType: "bytes32";
1186
+ readonly name: "vs_";
1187
+ readonly type: "bytes32";
1188
+ }];
1189
+ readonly name: "receiveWithAuthorization";
1190
+ readonly outputs: readonly [];
1191
+ readonly stateMutability: "nonpayable";
1192
+ readonly type: "function";
1193
+ }, {
1194
+ readonly inputs: readonly [{
1195
+ readonly internalType: "address";
1196
+ readonly name: "from_";
1197
+ readonly type: "address";
1198
+ }, {
1199
+ readonly internalType: "address";
1200
+ readonly name: "to_";
1201
+ readonly type: "address";
1202
+ }, {
1203
+ readonly internalType: "uint256";
1204
+ readonly name: "value_";
1205
+ readonly type: "uint256";
1206
+ }, {
1207
+ readonly internalType: "uint256";
1208
+ readonly name: "validAfter_";
1209
+ readonly type: "uint256";
1210
+ }, {
1211
+ readonly internalType: "uint256";
1212
+ readonly name: "validBefore_";
1213
+ readonly type: "uint256";
1214
+ }, {
1215
+ readonly internalType: "bytes32";
1216
+ readonly name: "nonce_";
1217
+ readonly type: "bytes32";
1218
+ }, {
1219
+ readonly internalType: "uint8";
1220
+ readonly name: "v_";
1221
+ readonly type: "uint8";
1222
+ }, {
1223
+ readonly internalType: "bytes32";
1224
+ readonly name: "r_";
1225
+ readonly type: "bytes32";
1226
+ }, {
1227
+ readonly internalType: "bytes32";
1228
+ readonly name: "s_";
1229
+ readonly type: "bytes32";
1230
+ }];
1231
+ readonly name: "receiveWithAuthorization";
1232
+ readonly outputs: readonly [];
1233
+ readonly stateMutability: "nonpayable";
1234
+ readonly type: "function";
1235
+ }, {
1236
+ readonly inputs: readonly [{
1237
+ readonly internalType: "bytes32";
1238
+ readonly name: "role";
1239
+ readonly type: "bytes32";
1240
+ }, {
1241
+ readonly internalType: "address";
1242
+ readonly name: "callerConfirmation";
1243
+ readonly type: "address";
1244
+ }];
1245
+ readonly name: "renounceRole";
1246
+ readonly outputs: readonly [];
1247
+ readonly stateMutability: "nonpayable";
1248
+ readonly type: "function";
1249
+ }, {
1250
+ readonly inputs: readonly [{
1251
+ readonly internalType: "bytes32";
1252
+ readonly name: "role";
1253
+ readonly type: "bytes32";
1254
+ }, {
1255
+ readonly internalType: "address";
1256
+ readonly name: "account";
1257
+ readonly type: "address";
1258
+ }];
1259
+ readonly name: "revokeRole";
1260
+ readonly outputs: readonly [];
1261
+ readonly stateMutability: "nonpayable";
1262
+ readonly type: "function";
1263
+ }, {
1264
+ readonly inputs: readonly [{
1265
+ readonly internalType: "address";
1266
+ readonly name: "account";
1267
+ readonly type: "address";
1268
+ }];
1269
+ readonly name: "setYieldRecipient";
1270
+ readonly outputs: readonly [];
1271
+ readonly stateMutability: "nonpayable";
1272
+ readonly type: "function";
1273
+ }, {
1274
+ readonly inputs: readonly [{
1275
+ readonly internalType: "bytes4";
1276
+ readonly name: "interfaceId";
1277
+ readonly type: "bytes4";
1278
+ }];
1279
+ readonly name: "supportsInterface";
1280
+ readonly outputs: readonly [{
1281
+ readonly internalType: "bool";
1282
+ readonly name: "";
1283
+ readonly type: "bool";
1284
+ }];
1285
+ readonly stateMutability: "view";
1286
+ readonly type: "function";
1287
+ }, {
1288
+ readonly inputs: readonly [];
1289
+ readonly name: "swapFacility";
1290
+ readonly outputs: readonly [{
1291
+ readonly internalType: "address";
1292
+ readonly name: "";
1293
+ readonly type: "address";
1294
+ }];
1295
+ readonly stateMutability: "view";
1296
+ readonly type: "function";
1297
+ }, {
1298
+ readonly inputs: readonly [];
1299
+ readonly name: "symbol";
1300
+ readonly outputs: readonly [{
1301
+ readonly internalType: "string";
1302
+ readonly name: "";
1303
+ readonly type: "string";
1304
+ }];
1305
+ readonly stateMutability: "view";
1306
+ readonly type: "function";
1307
+ }, {
1308
+ readonly inputs: readonly [];
1309
+ readonly name: "totalSupply";
1310
+ readonly outputs: readonly [{
1311
+ readonly internalType: "uint256";
1312
+ readonly name: "";
1313
+ readonly type: "uint256";
1314
+ }];
1315
+ readonly stateMutability: "view";
1316
+ readonly type: "function";
1317
+ }, {
1318
+ readonly inputs: readonly [{
1319
+ readonly internalType: "address";
1320
+ readonly name: "recipient_";
1321
+ readonly type: "address";
1322
+ }, {
1323
+ readonly internalType: "uint256";
1324
+ readonly name: "amount_";
1325
+ readonly type: "uint256";
1326
+ }];
1327
+ readonly name: "transfer";
1328
+ readonly outputs: readonly [{
1329
+ readonly internalType: "bool";
1330
+ readonly name: "";
1331
+ readonly type: "bool";
1332
+ }];
1333
+ readonly stateMutability: "nonpayable";
1334
+ readonly type: "function";
1335
+ }, {
1336
+ readonly inputs: readonly [{
1337
+ readonly internalType: "address";
1338
+ readonly name: "sender_";
1339
+ readonly type: "address";
1340
+ }, {
1341
+ readonly internalType: "address";
1342
+ readonly name: "recipient_";
1343
+ readonly type: "address";
1344
+ }, {
1345
+ readonly internalType: "uint256";
1346
+ readonly name: "amount_";
1347
+ readonly type: "uint256";
1348
+ }];
1349
+ readonly name: "transferFrom";
1350
+ readonly outputs: readonly [{
1351
+ readonly internalType: "bool";
1352
+ readonly name: "";
1353
+ readonly type: "bool";
1354
+ }];
1355
+ readonly stateMutability: "nonpayable";
1356
+ readonly type: "function";
1357
+ }, {
1358
+ readonly inputs: readonly [{
1359
+ readonly internalType: "address";
1360
+ readonly name: "from_";
1361
+ readonly type: "address";
1362
+ }, {
1363
+ readonly internalType: "address";
1364
+ readonly name: "to_";
1365
+ readonly type: "address";
1366
+ }, {
1367
+ readonly internalType: "uint256";
1368
+ readonly name: "value_";
1369
+ readonly type: "uint256";
1370
+ }, {
1371
+ readonly internalType: "uint256";
1372
+ readonly name: "validAfter_";
1373
+ readonly type: "uint256";
1374
+ }, {
1375
+ readonly internalType: "uint256";
1376
+ readonly name: "validBefore_";
1377
+ readonly type: "uint256";
1378
+ }, {
1379
+ readonly internalType: "bytes32";
1380
+ readonly name: "nonce_";
1381
+ readonly type: "bytes32";
1382
+ }, {
1383
+ readonly internalType: "bytes32";
1384
+ readonly name: "r_";
1385
+ readonly type: "bytes32";
1386
+ }, {
1387
+ readonly internalType: "bytes32";
1388
+ readonly name: "vs_";
1389
+ readonly type: "bytes32";
1390
+ }];
1391
+ readonly name: "transferWithAuthorization";
1392
+ readonly outputs: readonly [];
1393
+ readonly stateMutability: "nonpayable";
1394
+ readonly type: "function";
1395
+ }, {
1396
+ readonly inputs: readonly [{
1397
+ readonly internalType: "address";
1398
+ readonly name: "from_";
1399
+ readonly type: "address";
1400
+ }, {
1401
+ readonly internalType: "address";
1402
+ readonly name: "to_";
1403
+ readonly type: "address";
1404
+ }, {
1405
+ readonly internalType: "uint256";
1406
+ readonly name: "value_";
1407
+ readonly type: "uint256";
1408
+ }, {
1409
+ readonly internalType: "uint256";
1410
+ readonly name: "validAfter_";
1411
+ readonly type: "uint256";
1412
+ }, {
1413
+ readonly internalType: "uint256";
1414
+ readonly name: "validBefore_";
1415
+ readonly type: "uint256";
1416
+ }, {
1417
+ readonly internalType: "bytes32";
1418
+ readonly name: "nonce_";
1419
+ readonly type: "bytes32";
1420
+ }, {
1421
+ readonly internalType: "bytes";
1422
+ readonly name: "signature_";
1423
+ readonly type: "bytes";
1424
+ }];
1425
+ readonly name: "transferWithAuthorization";
1426
+ readonly outputs: readonly [];
1427
+ readonly stateMutability: "nonpayable";
1428
+ readonly type: "function";
1429
+ }, {
1430
+ readonly inputs: readonly [{
1431
+ readonly internalType: "address";
1432
+ readonly name: "from_";
1433
+ readonly type: "address";
1434
+ }, {
1435
+ readonly internalType: "address";
1436
+ readonly name: "to_";
1437
+ readonly type: "address";
1438
+ }, {
1439
+ readonly internalType: "uint256";
1440
+ readonly name: "value_";
1441
+ readonly type: "uint256";
1442
+ }, {
1443
+ readonly internalType: "uint256";
1444
+ readonly name: "validAfter_";
1445
+ readonly type: "uint256";
1446
+ }, {
1447
+ readonly internalType: "uint256";
1448
+ readonly name: "validBefore_";
1449
+ readonly type: "uint256";
1450
+ }, {
1451
+ readonly internalType: "bytes32";
1452
+ readonly name: "nonce_";
1453
+ readonly type: "bytes32";
1454
+ }, {
1455
+ readonly internalType: "uint8";
1456
+ readonly name: "v_";
1457
+ readonly type: "uint8";
1458
+ }, {
1459
+ readonly internalType: "bytes32";
1460
+ readonly name: "r_";
1461
+ readonly type: "bytes32";
1462
+ }, {
1463
+ readonly internalType: "bytes32";
1464
+ readonly name: "s_";
1465
+ readonly type: "bytes32";
1466
+ }];
1467
+ readonly name: "transferWithAuthorization";
1468
+ readonly outputs: readonly [];
1469
+ readonly stateMutability: "nonpayable";
1470
+ readonly type: "function";
1471
+ }, {
1472
+ readonly inputs: readonly [{
1473
+ readonly internalType: "address";
1474
+ readonly name: "account";
1475
+ readonly type: "address";
1476
+ }];
1477
+ readonly name: "unfreeze";
1478
+ readonly outputs: readonly [];
1479
+ readonly stateMutability: "nonpayable";
1480
+ readonly type: "function";
1481
+ }, {
1482
+ readonly inputs: readonly [{
1483
+ readonly internalType: "address[]";
1484
+ readonly name: "accounts";
1485
+ readonly type: "address[]";
1486
+ }];
1487
+ readonly name: "unfreezeAccounts";
1488
+ readonly outputs: readonly [];
1489
+ readonly stateMutability: "nonpayable";
1490
+ readonly type: "function";
1491
+ }, {
1492
+ readonly inputs: readonly [];
1493
+ readonly name: "unpause";
1494
+ readonly outputs: readonly [];
1495
+ readonly stateMutability: "nonpayable";
1496
+ readonly type: "function";
1497
+ }, {
1498
+ readonly inputs: readonly [{
1499
+ readonly internalType: "address";
1500
+ readonly name: "";
1501
+ readonly type: "address";
1502
+ }, {
1503
+ readonly internalType: "uint256";
1504
+ readonly name: "amount";
1505
+ readonly type: "uint256";
1506
+ }];
1507
+ readonly name: "unwrap";
1508
+ readonly outputs: readonly [];
1509
+ readonly stateMutability: "nonpayable";
1510
+ readonly type: "function";
1511
+ }, {
1512
+ readonly inputs: readonly [{
1513
+ readonly internalType: "address";
1514
+ readonly name: "recipient";
1515
+ readonly type: "address";
1516
+ }, {
1517
+ readonly internalType: "uint256";
1518
+ readonly name: "amount";
1519
+ readonly type: "uint256";
1520
+ }];
1521
+ readonly name: "wrap";
1522
+ readonly outputs: readonly [];
1523
+ readonly stateMutability: "nonpayable";
1524
+ readonly type: "function";
1525
+ }, {
1526
+ readonly inputs: readonly [];
1527
+ readonly name: "yield";
1528
+ readonly outputs: readonly [{
1529
+ readonly internalType: "uint256";
1530
+ readonly name: "";
1531
+ readonly type: "uint256";
1532
+ }];
1533
+ readonly stateMutability: "view";
1534
+ readonly type: "function";
1535
+ }, {
1536
+ readonly inputs: readonly [];
1537
+ readonly name: "yieldRecipient";
1538
+ readonly outputs: readonly [{
1539
+ readonly internalType: "address";
1540
+ readonly name: "";
1541
+ readonly type: "address";
1542
+ }];
1543
+ readonly stateMutability: "view";
1544
+ readonly type: "function";
1545
+ }];
1546
+ /**
1547
+ * Type-safe ABI for MUSD
1548
+ */
1549
+ export type MUSDAbi = typeof MUSDAbi;
1550
+ /**
1551
+ * Contract instance type for MUSD
1552
+ */
1553
+ export type MUSDContract = any;
1554
+ /**
1555
+ * MUSD Contract Class
1556
+ *
1557
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1558
+ *
1559
+ * @example
1560
+ * ```typescript
1561
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1562
+ * import { mainnet } from 'viem/chains';
1563
+ * import { MUSD } from 'MUSD';
1564
+ *
1565
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1566
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1567
+ *
1568
+ * const contract = new MUSD('0x...', { publicClient, walletClient });
1569
+ *
1570
+ * // Read functions
1571
+ * const result = await contract.balanceOf('0x...');
1572
+ *
1573
+ * // Write functions
1574
+ * const hash = await contract.transfer('0x...', 1000n);
1575
+ *
1576
+ * // Simulate transactions (dry-run)
1577
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1578
+ * console.log('Gas estimate:', simulation.request.gas);
1579
+ *
1580
+ * // Watch events
1581
+ * const unwatch = contract.watch.Transfer((event) => {
1582
+ * console.log('Transfer event:', event);
1583
+ * });
1584
+ * ```
1585
+ */
1586
+ export declare class MUSD {
1587
+ private contract;
1588
+ private contractAddress;
1589
+ private publicClient;
1590
+ constructor(address: Address, clients: {
1591
+ publicClient: PublicClient;
1592
+ walletClient?: WalletClient;
1593
+ });
1594
+ /**
1595
+ * Get the contract address
1596
+ */
1597
+ get address(): Address;
1598
+ /**
1599
+ * Get the underlying viem contract instance.
1600
+ */
1601
+ getContract(): MUSDContract;
1602
+ /**
1603
+ * CANCEL_AUTHORIZATION_TYPEHASH
1604
+ * view
1605
+ */
1606
+ CANCEL_AUTHORIZATION_TYPEHASH(): Promise<`0x${string}`>;
1607
+ /**
1608
+ * DEFAULT_ADMIN_ROLE
1609
+ * view
1610
+ */
1611
+ DEFAULT_ADMIN_ROLE(): Promise<`0x${string}`>;
1612
+ /**
1613
+ * DOMAIN_SEPARATOR
1614
+ * view
1615
+ */
1616
+ DOMAIN_SEPARATOR(): Promise<`0x${string}`>;
1617
+ /**
1618
+ * FORCED_TRANSFER_MANAGER_ROLE
1619
+ * view
1620
+ */
1621
+ FORCED_TRANSFER_MANAGER_ROLE(): Promise<`0x${string}`>;
1622
+ /**
1623
+ * FREEZE_MANAGER_ROLE
1624
+ * view
1625
+ */
1626
+ FREEZE_MANAGER_ROLE(): Promise<`0x${string}`>;
1627
+ /**
1628
+ * PAUSER_ROLE
1629
+ * view
1630
+ */
1631
+ PAUSER_ROLE(): Promise<`0x${string}`>;
1632
+ /**
1633
+ * PERMIT_TYPEHASH
1634
+ * view
1635
+ */
1636
+ PERMIT_TYPEHASH(): Promise<`0x${string}`>;
1637
+ /**
1638
+ * RECEIVE_WITH_AUTHORIZATION_TYPEHASH
1639
+ * view
1640
+ */
1641
+ RECEIVE_WITH_AUTHORIZATION_TYPEHASH(): Promise<`0x${string}`>;
1642
+ /**
1643
+ * TRANSFER_WITH_AUTHORIZATION_TYPEHASH
1644
+ * view
1645
+ */
1646
+ TRANSFER_WITH_AUTHORIZATION_TYPEHASH(): Promise<`0x${string}`>;
1647
+ /**
1648
+ * YIELD_RECIPIENT_MANAGER_ROLE
1649
+ * view
1650
+ */
1651
+ YIELD_RECIPIENT_MANAGER_ROLE(): Promise<`0x${string}`>;
1652
+ /**
1653
+ * allowance
1654
+ * view
1655
+ */
1656
+ allowance(account: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
1657
+ /**
1658
+ * authorizationState
1659
+ * view
1660
+ */
1661
+ authorizationState(authorizer: `0x${string}`, nonce: `0x${string}`): Promise<boolean>;
1662
+ /**
1663
+ * balanceOf
1664
+ * view
1665
+ */
1666
+ balanceOf(account: `0x${string}`): Promise<bigint>;
1667
+ /**
1668
+ * currentIndex
1669
+ * view
1670
+ */
1671
+ currentIndex(): Promise<bigint>;
1672
+ /**
1673
+ * decimals
1674
+ * view
1675
+ */
1676
+ decimals(): Promise<bigint>;
1677
+ /**
1678
+ * eip712Domain
1679
+ * view
1680
+ */
1681
+ eip712Domain(): Promise<[`0x${string}`, string, string, bigint, `0x${string}`, `0x${string}`, bigint[]]>;
1682
+ /**
1683
+ * getRoleAdmin
1684
+ * view
1685
+ */
1686
+ getRoleAdmin(role: `0x${string}`): Promise<`0x${string}`>;
1687
+ /**
1688
+ * hasRole
1689
+ * view
1690
+ */
1691
+ hasRole(role: `0x${string}`, account: `0x${string}`): Promise<boolean>;
1692
+ /**
1693
+ * isEarningEnabled
1694
+ * view
1695
+ */
1696
+ isEarningEnabled(): Promise<boolean>;
1697
+ /**
1698
+ * isFrozen
1699
+ * view
1700
+ */
1701
+ isFrozen(account: `0x${string}`): Promise<boolean>;
1702
+ /**
1703
+ * mToken
1704
+ * view
1705
+ */
1706
+ mToken(): Promise<`0x${string}`>;
1707
+ /**
1708
+ * name
1709
+ * view
1710
+ */
1711
+ name(): Promise<string>;
1712
+ /**
1713
+ * nonces
1714
+ * view
1715
+ */
1716
+ nonces(account: `0x${string}`): Promise<bigint>;
1717
+ /**
1718
+ * paused
1719
+ * view
1720
+ */
1721
+ paused(): Promise<boolean>;
1722
+ /**
1723
+ * supportsInterface
1724
+ * view
1725
+ */
1726
+ supportsInterface(interfaceId: `0x${string}`): Promise<boolean>;
1727
+ /**
1728
+ * swapFacility
1729
+ * view
1730
+ */
1731
+ swapFacility(): Promise<`0x${string}`>;
1732
+ /**
1733
+ * symbol
1734
+ * view
1735
+ */
1736
+ symbol(): Promise<string>;
1737
+ /**
1738
+ * totalSupply
1739
+ * view
1740
+ */
1741
+ totalSupply(): Promise<bigint>;
1742
+ /**
1743
+ * yield
1744
+ * view
1745
+ */
1746
+ yield(): Promise<bigint>;
1747
+ /**
1748
+ * yieldRecipient
1749
+ * view
1750
+ */
1751
+ yieldRecipient(): Promise<`0x${string}`>;
1752
+ /**
1753
+ * approve
1754
+ * nonpayable
1755
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1756
+ */
1757
+ approve(spender_: `0x${string}`, amount_: bigint, options?: {
1758
+ accessList?: import('viem').AccessList;
1759
+ authorizationList?: import('viem').AuthorizationList;
1760
+ chain?: import('viem').Chain | null;
1761
+ dataSuffix?: `0x${string}`;
1762
+ gas?: bigint;
1763
+ gasPrice?: bigint;
1764
+ maxFeePerGas?: bigint;
1765
+ maxPriorityFeePerGas?: bigint;
1766
+ nonce?: number;
1767
+ value?: bigint;
1768
+ }): Promise<`0x${string}`>;
1769
+ cancelAuthorization(authorizer_: `0x${string}`, nonce_: `0x${string}`, r_: `0x${string}`, vs_: `0x${string}`, options?: {
1770
+ accessList?: import('viem').AccessList;
1771
+ authorizationList?: import('viem').AuthorizationList;
1772
+ chain?: import('viem').Chain | null;
1773
+ dataSuffix?: `0x${string}`;
1774
+ gas?: bigint;
1775
+ gasPrice?: bigint;
1776
+ maxFeePerGas?: bigint;
1777
+ maxPriorityFeePerGas?: bigint;
1778
+ nonce?: number;
1779
+ value?: bigint;
1780
+ }): Promise<`0x${string}`>;
1781
+ cancelAuthorization(authorizer_: `0x${string}`, nonce_: `0x${string}`, v_: bigint, r_: `0x${string}`, s_: `0x${string}`, options?: {
1782
+ accessList?: import('viem').AccessList;
1783
+ authorizationList?: import('viem').AuthorizationList;
1784
+ chain?: import('viem').Chain | null;
1785
+ dataSuffix?: `0x${string}`;
1786
+ gas?: bigint;
1787
+ gasPrice?: bigint;
1788
+ maxFeePerGas?: bigint;
1789
+ maxPriorityFeePerGas?: bigint;
1790
+ nonce?: number;
1791
+ value?: bigint;
1792
+ }): Promise<`0x${string}`>;
1793
+ cancelAuthorization(authorizer_: `0x${string}`, nonce_: `0x${string}`, signature_: `0x${string}`, options?: {
1794
+ accessList?: import('viem').AccessList;
1795
+ authorizationList?: import('viem').AuthorizationList;
1796
+ chain?: import('viem').Chain | null;
1797
+ dataSuffix?: `0x${string}`;
1798
+ gas?: bigint;
1799
+ gasPrice?: bigint;
1800
+ maxFeePerGas?: bigint;
1801
+ maxPriorityFeePerGas?: bigint;
1802
+ nonce?: number;
1803
+ value?: bigint;
1804
+ }): Promise<`0x${string}`>;
1805
+ /**
1806
+ * claimYield
1807
+ * nonpayable
1808
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1809
+ */
1810
+ claimYield(options?: {
1811
+ accessList?: import('viem').AccessList;
1812
+ authorizationList?: import('viem').AuthorizationList;
1813
+ chain?: import('viem').Chain | null;
1814
+ dataSuffix?: `0x${string}`;
1815
+ gas?: bigint;
1816
+ gasPrice?: bigint;
1817
+ maxFeePerGas?: bigint;
1818
+ maxPriorityFeePerGas?: bigint;
1819
+ nonce?: number;
1820
+ value?: bigint;
1821
+ }): Promise<`0x${string}`>;
1822
+ /**
1823
+ * disableEarning
1824
+ * nonpayable
1825
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1826
+ */
1827
+ disableEarning(options?: {
1828
+ accessList?: import('viem').AccessList;
1829
+ authorizationList?: import('viem').AuthorizationList;
1830
+ chain?: import('viem').Chain | null;
1831
+ dataSuffix?: `0x${string}`;
1832
+ gas?: bigint;
1833
+ gasPrice?: bigint;
1834
+ maxFeePerGas?: bigint;
1835
+ maxPriorityFeePerGas?: bigint;
1836
+ nonce?: number;
1837
+ value?: bigint;
1838
+ }): Promise<`0x${string}`>;
1839
+ /**
1840
+ * enableEarning
1841
+ * nonpayable
1842
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1843
+ */
1844
+ enableEarning(options?: {
1845
+ accessList?: import('viem').AccessList;
1846
+ authorizationList?: import('viem').AuthorizationList;
1847
+ chain?: import('viem').Chain | null;
1848
+ dataSuffix?: `0x${string}`;
1849
+ gas?: bigint;
1850
+ gasPrice?: bigint;
1851
+ maxFeePerGas?: bigint;
1852
+ maxPriorityFeePerGas?: bigint;
1853
+ nonce?: number;
1854
+ value?: bigint;
1855
+ }): Promise<`0x${string}`>;
1856
+ /**
1857
+ * forceTransfer
1858
+ * nonpayable
1859
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1860
+ */
1861
+ forceTransfer(frozenAccount: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
1862
+ accessList?: import('viem').AccessList;
1863
+ authorizationList?: import('viem').AuthorizationList;
1864
+ chain?: import('viem').Chain | null;
1865
+ dataSuffix?: `0x${string}`;
1866
+ gas?: bigint;
1867
+ gasPrice?: bigint;
1868
+ maxFeePerGas?: bigint;
1869
+ maxPriorityFeePerGas?: bigint;
1870
+ nonce?: number;
1871
+ value?: bigint;
1872
+ }): Promise<`0x${string}`>;
1873
+ /**
1874
+ * forceTransfers
1875
+ * nonpayable
1876
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1877
+ */
1878
+ forceTransfers(frozenAccounts: `0x${string}`[], recipients: `0x${string}`[], amounts: bigint[], options?: {
1879
+ accessList?: import('viem').AccessList;
1880
+ authorizationList?: import('viem').AuthorizationList;
1881
+ chain?: import('viem').Chain | null;
1882
+ dataSuffix?: `0x${string}`;
1883
+ gas?: bigint;
1884
+ gasPrice?: bigint;
1885
+ maxFeePerGas?: bigint;
1886
+ maxPriorityFeePerGas?: bigint;
1887
+ nonce?: number;
1888
+ value?: bigint;
1889
+ }): Promise<`0x${string}`>;
1890
+ /**
1891
+ * freeze
1892
+ * nonpayable
1893
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1894
+ */
1895
+ freeze(account: `0x${string}`, options?: {
1896
+ accessList?: import('viem').AccessList;
1897
+ authorizationList?: import('viem').AuthorizationList;
1898
+ chain?: import('viem').Chain | null;
1899
+ dataSuffix?: `0x${string}`;
1900
+ gas?: bigint;
1901
+ gasPrice?: bigint;
1902
+ maxFeePerGas?: bigint;
1903
+ maxPriorityFeePerGas?: bigint;
1904
+ nonce?: number;
1905
+ value?: bigint;
1906
+ }): Promise<`0x${string}`>;
1907
+ /**
1908
+ * freezeAccounts
1909
+ * nonpayable
1910
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1911
+ */
1912
+ freezeAccounts(accounts: `0x${string}`[], options?: {
1913
+ accessList?: import('viem').AccessList;
1914
+ authorizationList?: import('viem').AuthorizationList;
1915
+ chain?: import('viem').Chain | null;
1916
+ dataSuffix?: `0x${string}`;
1917
+ gas?: bigint;
1918
+ gasPrice?: bigint;
1919
+ maxFeePerGas?: bigint;
1920
+ maxPriorityFeePerGas?: bigint;
1921
+ nonce?: number;
1922
+ value?: bigint;
1923
+ }): Promise<`0x${string}`>;
1924
+ /**
1925
+ * grantRole
1926
+ * nonpayable
1927
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1928
+ */
1929
+ grantRole(role: `0x${string}`, account: `0x${string}`, options?: {
1930
+ accessList?: import('viem').AccessList;
1931
+ authorizationList?: import('viem').AuthorizationList;
1932
+ chain?: import('viem').Chain | null;
1933
+ dataSuffix?: `0x${string}`;
1934
+ gas?: bigint;
1935
+ gasPrice?: bigint;
1936
+ maxFeePerGas?: bigint;
1937
+ maxPriorityFeePerGas?: bigint;
1938
+ nonce?: number;
1939
+ value?: bigint;
1940
+ }): Promise<`0x${string}`>;
1941
+ initialize(yieldRecipient: `0x${string}`, admin: `0x${string}`, freezeManager: `0x${string}`, yieldRecipientManager: `0x${string}`, pauser: `0x${string}`, forcedTransferManager: `0x${string}`, options?: {
1942
+ accessList?: import('viem').AccessList;
1943
+ authorizationList?: import('viem').AuthorizationList;
1944
+ chain?: import('viem').Chain | null;
1945
+ dataSuffix?: `0x${string}`;
1946
+ gas?: bigint;
1947
+ gasPrice?: bigint;
1948
+ maxFeePerGas?: bigint;
1949
+ maxPriorityFeePerGas?: bigint;
1950
+ nonce?: number;
1951
+ value?: bigint;
1952
+ }): Promise<`0x${string}`>;
1953
+ initialize(name: string, symbol: string, yieldRecipient_: `0x${string}`, admin: `0x${string}`, freezeManager: `0x${string}`, yieldRecipientManager: `0x${string}`, options?: {
1954
+ accessList?: import('viem').AccessList;
1955
+ authorizationList?: import('viem').AuthorizationList;
1956
+ chain?: import('viem').Chain | null;
1957
+ dataSuffix?: `0x${string}`;
1958
+ gas?: bigint;
1959
+ gasPrice?: bigint;
1960
+ maxFeePerGas?: bigint;
1961
+ maxPriorityFeePerGas?: bigint;
1962
+ nonce?: number;
1963
+ value?: bigint;
1964
+ }): Promise<`0x${string}`>;
1965
+ /**
1966
+ * pause
1967
+ * nonpayable
1968
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1969
+ */
1970
+ pause(options?: {
1971
+ accessList?: import('viem').AccessList;
1972
+ authorizationList?: import('viem').AuthorizationList;
1973
+ chain?: import('viem').Chain | null;
1974
+ dataSuffix?: `0x${string}`;
1975
+ gas?: bigint;
1976
+ gasPrice?: bigint;
1977
+ maxFeePerGas?: bigint;
1978
+ maxPriorityFeePerGas?: bigint;
1979
+ nonce?: number;
1980
+ value?: bigint;
1981
+ }): Promise<`0x${string}`>;
1982
+ permit(owner_: `0x${string}`, spender_: `0x${string}`, value_: bigint, deadline_: bigint, signature_: `0x${string}`, options?: {
1983
+ accessList?: import('viem').AccessList;
1984
+ authorizationList?: import('viem').AuthorizationList;
1985
+ chain?: import('viem').Chain | null;
1986
+ dataSuffix?: `0x${string}`;
1987
+ gas?: bigint;
1988
+ gasPrice?: bigint;
1989
+ maxFeePerGas?: bigint;
1990
+ maxPriorityFeePerGas?: bigint;
1991
+ nonce?: number;
1992
+ value?: bigint;
1993
+ }): Promise<`0x${string}`>;
1994
+ permit(owner_: `0x${string}`, spender_: `0x${string}`, value_: bigint, deadline_: bigint, v_: bigint, r_: `0x${string}`, s_: `0x${string}`, options?: {
1995
+ accessList?: import('viem').AccessList;
1996
+ authorizationList?: import('viem').AuthorizationList;
1997
+ chain?: import('viem').Chain | null;
1998
+ dataSuffix?: `0x${string}`;
1999
+ gas?: bigint;
2000
+ gasPrice?: bigint;
2001
+ maxFeePerGas?: bigint;
2002
+ maxPriorityFeePerGas?: bigint;
2003
+ nonce?: number;
2004
+ value?: bigint;
2005
+ }): Promise<`0x${string}`>;
2006
+ receiveWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, signature_: `0x${string}`, options?: {
2007
+ accessList?: import('viem').AccessList;
2008
+ authorizationList?: import('viem').AuthorizationList;
2009
+ chain?: import('viem').Chain | null;
2010
+ dataSuffix?: `0x${string}`;
2011
+ gas?: bigint;
2012
+ gasPrice?: bigint;
2013
+ maxFeePerGas?: bigint;
2014
+ maxPriorityFeePerGas?: bigint;
2015
+ nonce?: number;
2016
+ value?: bigint;
2017
+ }): Promise<`0x${string}`>;
2018
+ receiveWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, r_: `0x${string}`, vs_: `0x${string}`, options?: {
2019
+ accessList?: import('viem').AccessList;
2020
+ authorizationList?: import('viem').AuthorizationList;
2021
+ chain?: import('viem').Chain | null;
2022
+ dataSuffix?: `0x${string}`;
2023
+ gas?: bigint;
2024
+ gasPrice?: bigint;
2025
+ maxFeePerGas?: bigint;
2026
+ maxPriorityFeePerGas?: bigint;
2027
+ nonce?: number;
2028
+ value?: bigint;
2029
+ }): Promise<`0x${string}`>;
2030
+ receiveWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, v_: bigint, r_: `0x${string}`, s_: `0x${string}`, options?: {
2031
+ accessList?: import('viem').AccessList;
2032
+ authorizationList?: import('viem').AuthorizationList;
2033
+ chain?: import('viem').Chain | null;
2034
+ dataSuffix?: `0x${string}`;
2035
+ gas?: bigint;
2036
+ gasPrice?: bigint;
2037
+ maxFeePerGas?: bigint;
2038
+ maxPriorityFeePerGas?: bigint;
2039
+ nonce?: number;
2040
+ value?: bigint;
2041
+ }): Promise<`0x${string}`>;
2042
+ /**
2043
+ * renounceRole
2044
+ * nonpayable
2045
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2046
+ */
2047
+ renounceRole(role: `0x${string}`, callerConfirmation: `0x${string}`, options?: {
2048
+ accessList?: import('viem').AccessList;
2049
+ authorizationList?: import('viem').AuthorizationList;
2050
+ chain?: import('viem').Chain | null;
2051
+ dataSuffix?: `0x${string}`;
2052
+ gas?: bigint;
2053
+ gasPrice?: bigint;
2054
+ maxFeePerGas?: bigint;
2055
+ maxPriorityFeePerGas?: bigint;
2056
+ nonce?: number;
2057
+ value?: bigint;
2058
+ }): Promise<`0x${string}`>;
2059
+ /**
2060
+ * revokeRole
2061
+ * nonpayable
2062
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2063
+ */
2064
+ revokeRole(role: `0x${string}`, account: `0x${string}`, options?: {
2065
+ accessList?: import('viem').AccessList;
2066
+ authorizationList?: import('viem').AuthorizationList;
2067
+ chain?: import('viem').Chain | null;
2068
+ dataSuffix?: `0x${string}`;
2069
+ gas?: bigint;
2070
+ gasPrice?: bigint;
2071
+ maxFeePerGas?: bigint;
2072
+ maxPriorityFeePerGas?: bigint;
2073
+ nonce?: number;
2074
+ value?: bigint;
2075
+ }): Promise<`0x${string}`>;
2076
+ /**
2077
+ * setYieldRecipient
2078
+ * nonpayable
2079
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2080
+ */
2081
+ setYieldRecipient(account: `0x${string}`, options?: {
2082
+ accessList?: import('viem').AccessList;
2083
+ authorizationList?: import('viem').AuthorizationList;
2084
+ chain?: import('viem').Chain | null;
2085
+ dataSuffix?: `0x${string}`;
2086
+ gas?: bigint;
2087
+ gasPrice?: bigint;
2088
+ maxFeePerGas?: bigint;
2089
+ maxPriorityFeePerGas?: bigint;
2090
+ nonce?: number;
2091
+ value?: bigint;
2092
+ }): Promise<`0x${string}`>;
2093
+ /**
2094
+ * transfer
2095
+ * nonpayable
2096
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2097
+ */
2098
+ transfer(recipient_: `0x${string}`, amount_: bigint, options?: {
2099
+ accessList?: import('viem').AccessList;
2100
+ authorizationList?: import('viem').AuthorizationList;
2101
+ chain?: import('viem').Chain | null;
2102
+ dataSuffix?: `0x${string}`;
2103
+ gas?: bigint;
2104
+ gasPrice?: bigint;
2105
+ maxFeePerGas?: bigint;
2106
+ maxPriorityFeePerGas?: bigint;
2107
+ nonce?: number;
2108
+ value?: bigint;
2109
+ }): Promise<`0x${string}`>;
2110
+ /**
2111
+ * transferFrom
2112
+ * nonpayable
2113
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2114
+ */
2115
+ transferFrom(sender_: `0x${string}`, recipient_: `0x${string}`, amount_: bigint, options?: {
2116
+ accessList?: import('viem').AccessList;
2117
+ authorizationList?: import('viem').AuthorizationList;
2118
+ chain?: import('viem').Chain | null;
2119
+ dataSuffix?: `0x${string}`;
2120
+ gas?: bigint;
2121
+ gasPrice?: bigint;
2122
+ maxFeePerGas?: bigint;
2123
+ maxPriorityFeePerGas?: bigint;
2124
+ nonce?: number;
2125
+ value?: bigint;
2126
+ }): Promise<`0x${string}`>;
2127
+ transferWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, r_: `0x${string}`, vs_: `0x${string}`, options?: {
2128
+ accessList?: import('viem').AccessList;
2129
+ authorizationList?: import('viem').AuthorizationList;
2130
+ chain?: import('viem').Chain | null;
2131
+ dataSuffix?: `0x${string}`;
2132
+ gas?: bigint;
2133
+ gasPrice?: bigint;
2134
+ maxFeePerGas?: bigint;
2135
+ maxPriorityFeePerGas?: bigint;
2136
+ nonce?: number;
2137
+ value?: bigint;
2138
+ }): Promise<`0x${string}`>;
2139
+ transferWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, signature_: `0x${string}`, options?: {
2140
+ accessList?: import('viem').AccessList;
2141
+ authorizationList?: import('viem').AuthorizationList;
2142
+ chain?: import('viem').Chain | null;
2143
+ dataSuffix?: `0x${string}`;
2144
+ gas?: bigint;
2145
+ gasPrice?: bigint;
2146
+ maxFeePerGas?: bigint;
2147
+ maxPriorityFeePerGas?: bigint;
2148
+ nonce?: number;
2149
+ value?: bigint;
2150
+ }): Promise<`0x${string}`>;
2151
+ transferWithAuthorization(from_: `0x${string}`, to_: `0x${string}`, value_: bigint, validAfter_: bigint, validBefore_: bigint, nonce_: `0x${string}`, v_: bigint, r_: `0x${string}`, s_: `0x${string}`, options?: {
2152
+ accessList?: import('viem').AccessList;
2153
+ authorizationList?: import('viem').AuthorizationList;
2154
+ chain?: import('viem').Chain | null;
2155
+ dataSuffix?: `0x${string}`;
2156
+ gas?: bigint;
2157
+ gasPrice?: bigint;
2158
+ maxFeePerGas?: bigint;
2159
+ maxPriorityFeePerGas?: bigint;
2160
+ nonce?: number;
2161
+ value?: bigint;
2162
+ }): Promise<`0x${string}`>;
2163
+ /**
2164
+ * unfreeze
2165
+ * nonpayable
2166
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2167
+ */
2168
+ unfreeze(account: `0x${string}`, options?: {
2169
+ accessList?: import('viem').AccessList;
2170
+ authorizationList?: import('viem').AuthorizationList;
2171
+ chain?: import('viem').Chain | null;
2172
+ dataSuffix?: `0x${string}`;
2173
+ gas?: bigint;
2174
+ gasPrice?: bigint;
2175
+ maxFeePerGas?: bigint;
2176
+ maxPriorityFeePerGas?: bigint;
2177
+ nonce?: number;
2178
+ value?: bigint;
2179
+ }): Promise<`0x${string}`>;
2180
+ /**
2181
+ * unfreezeAccounts
2182
+ * nonpayable
2183
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2184
+ */
2185
+ unfreezeAccounts(accounts: `0x${string}`[], options?: {
2186
+ accessList?: import('viem').AccessList;
2187
+ authorizationList?: import('viem').AuthorizationList;
2188
+ chain?: import('viem').Chain | null;
2189
+ dataSuffix?: `0x${string}`;
2190
+ gas?: bigint;
2191
+ gasPrice?: bigint;
2192
+ maxFeePerGas?: bigint;
2193
+ maxPriorityFeePerGas?: bigint;
2194
+ nonce?: number;
2195
+ value?: bigint;
2196
+ }): Promise<`0x${string}`>;
2197
+ /**
2198
+ * unpause
2199
+ * nonpayable
2200
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2201
+ */
2202
+ unpause(options?: {
2203
+ accessList?: import('viem').AccessList;
2204
+ authorizationList?: import('viem').AuthorizationList;
2205
+ chain?: import('viem').Chain | null;
2206
+ dataSuffix?: `0x${string}`;
2207
+ gas?: bigint;
2208
+ gasPrice?: bigint;
2209
+ maxFeePerGas?: bigint;
2210
+ maxPriorityFeePerGas?: bigint;
2211
+ nonce?: number;
2212
+ value?: bigint;
2213
+ }): Promise<`0x${string}`>;
2214
+ /**
2215
+ * unwrap
2216
+ * nonpayable
2217
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2218
+ */
2219
+ unwrap(arg0: `0x${string}`, amount: bigint, options?: {
2220
+ accessList?: import('viem').AccessList;
2221
+ authorizationList?: import('viem').AuthorizationList;
2222
+ chain?: import('viem').Chain | null;
2223
+ dataSuffix?: `0x${string}`;
2224
+ gas?: bigint;
2225
+ gasPrice?: bigint;
2226
+ maxFeePerGas?: bigint;
2227
+ maxPriorityFeePerGas?: bigint;
2228
+ nonce?: number;
2229
+ value?: bigint;
2230
+ }): Promise<`0x${string}`>;
2231
+ /**
2232
+ * wrap
2233
+ * nonpayable
2234
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2235
+ */
2236
+ wrap(recipient: `0x${string}`, amount: bigint, options?: {
2237
+ accessList?: import('viem').AccessList;
2238
+ authorizationList?: import('viem').AuthorizationList;
2239
+ chain?: import('viem').Chain | null;
2240
+ dataSuffix?: `0x${string}`;
2241
+ gas?: bigint;
2242
+ gasPrice?: bigint;
2243
+ maxFeePerGas?: bigint;
2244
+ maxPriorityFeePerGas?: bigint;
2245
+ nonce?: number;
2246
+ value?: bigint;
2247
+ }): Promise<`0x${string}`>;
2248
+ /**
2249
+ * Simulate contract write operations (dry-run without sending transaction)
2250
+ *
2251
+ * @example
2252
+ * const result = await contract.simulate.transfer('0x...', 1000n);
2253
+ * console.log('Gas estimate:', result.request.gas);
2254
+ * console.log('Would succeed:', result.result);
2255
+ */
2256
+ get simulate(): {
2257
+ /**
2258
+ * Simulate approve
2259
+ * Returns gas estimate and result without sending transaction
2260
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2261
+ */
2262
+ approve(spender_: `0x${string}`, amount_: bigint, options?: {
2263
+ accessList?: import("viem").AccessList;
2264
+ authorizationList?: import("viem").AuthorizationList;
2265
+ chain?: import("viem").Chain | null;
2266
+ dataSuffix?: `0x${string}`;
2267
+ gas?: bigint;
2268
+ gasPrice?: bigint;
2269
+ maxFeePerGas?: bigint;
2270
+ maxPriorityFeePerGas?: bigint;
2271
+ nonce?: number;
2272
+ value?: bigint;
2273
+ }): Promise<boolean>;
2274
+ /**
2275
+ * Simulate cancelAuthorization
2276
+ * Returns gas estimate and result without sending transaction
2277
+ * Supports multiple overloads: (address, bytes32, bytes32, bytes32), (address, bytes32, uint8, bytes32, bytes32), (address, bytes32, bytes)
2278
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2279
+ */
2280
+ cancelAuthorization(...args: any[]): Promise<any>;
2281
+ /**
2282
+ * Simulate claimYield
2283
+ * Returns gas estimate and result without sending transaction
2284
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2285
+ */
2286
+ claimYield(options?: {
2287
+ accessList?: import("viem").AccessList;
2288
+ authorizationList?: import("viem").AuthorizationList;
2289
+ chain?: import("viem").Chain | null;
2290
+ dataSuffix?: `0x${string}`;
2291
+ gas?: bigint;
2292
+ gasPrice?: bigint;
2293
+ maxFeePerGas?: bigint;
2294
+ maxPriorityFeePerGas?: bigint;
2295
+ nonce?: number;
2296
+ value?: bigint;
2297
+ }): Promise<bigint>;
2298
+ /**
2299
+ * Simulate disableEarning
2300
+ * Returns gas estimate and result without sending transaction
2301
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2302
+ */
2303
+ disableEarning(options?: {
2304
+ accessList?: import("viem").AccessList;
2305
+ authorizationList?: import("viem").AuthorizationList;
2306
+ chain?: import("viem").Chain | null;
2307
+ dataSuffix?: `0x${string}`;
2308
+ gas?: bigint;
2309
+ gasPrice?: bigint;
2310
+ maxFeePerGas?: bigint;
2311
+ maxPriorityFeePerGas?: bigint;
2312
+ nonce?: number;
2313
+ value?: bigint;
2314
+ }): Promise<void>;
2315
+ /**
2316
+ * Simulate enableEarning
2317
+ * Returns gas estimate and result without sending transaction
2318
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2319
+ */
2320
+ enableEarning(options?: {
2321
+ accessList?: import("viem").AccessList;
2322
+ authorizationList?: import("viem").AuthorizationList;
2323
+ chain?: import("viem").Chain | null;
2324
+ dataSuffix?: `0x${string}`;
2325
+ gas?: bigint;
2326
+ gasPrice?: bigint;
2327
+ maxFeePerGas?: bigint;
2328
+ maxPriorityFeePerGas?: bigint;
2329
+ nonce?: number;
2330
+ value?: bigint;
2331
+ }): Promise<void>;
2332
+ /**
2333
+ * Simulate forceTransfer
2334
+ * Returns gas estimate and result without sending transaction
2335
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2336
+ */
2337
+ forceTransfer(frozenAccount: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
2338
+ accessList?: import("viem").AccessList;
2339
+ authorizationList?: import("viem").AuthorizationList;
2340
+ chain?: import("viem").Chain | null;
2341
+ dataSuffix?: `0x${string}`;
2342
+ gas?: bigint;
2343
+ gasPrice?: bigint;
2344
+ maxFeePerGas?: bigint;
2345
+ maxPriorityFeePerGas?: bigint;
2346
+ nonce?: number;
2347
+ value?: bigint;
2348
+ }): Promise<void>;
2349
+ /**
2350
+ * Simulate forceTransfers
2351
+ * Returns gas estimate and result without sending transaction
2352
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2353
+ */
2354
+ forceTransfers(frozenAccounts: `0x${string}`[], recipients: `0x${string}`[], amounts: bigint[], options?: {
2355
+ accessList?: import("viem").AccessList;
2356
+ authorizationList?: import("viem").AuthorizationList;
2357
+ chain?: import("viem").Chain | null;
2358
+ dataSuffix?: `0x${string}`;
2359
+ gas?: bigint;
2360
+ gasPrice?: bigint;
2361
+ maxFeePerGas?: bigint;
2362
+ maxPriorityFeePerGas?: bigint;
2363
+ nonce?: number;
2364
+ value?: bigint;
2365
+ }): Promise<void>;
2366
+ /**
2367
+ * Simulate freeze
2368
+ * Returns gas estimate and result without sending transaction
2369
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2370
+ */
2371
+ freeze(account: `0x${string}`, options?: {
2372
+ accessList?: import("viem").AccessList;
2373
+ authorizationList?: import("viem").AuthorizationList;
2374
+ chain?: import("viem").Chain | null;
2375
+ dataSuffix?: `0x${string}`;
2376
+ gas?: bigint;
2377
+ gasPrice?: bigint;
2378
+ maxFeePerGas?: bigint;
2379
+ maxPriorityFeePerGas?: bigint;
2380
+ nonce?: number;
2381
+ value?: bigint;
2382
+ }): Promise<void>;
2383
+ /**
2384
+ * Simulate freezeAccounts
2385
+ * Returns gas estimate and result without sending transaction
2386
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2387
+ */
2388
+ freezeAccounts(accounts: `0x${string}`[], options?: {
2389
+ accessList?: import("viem").AccessList;
2390
+ authorizationList?: import("viem").AuthorizationList;
2391
+ chain?: import("viem").Chain | null;
2392
+ dataSuffix?: `0x${string}`;
2393
+ gas?: bigint;
2394
+ gasPrice?: bigint;
2395
+ maxFeePerGas?: bigint;
2396
+ maxPriorityFeePerGas?: bigint;
2397
+ nonce?: number;
2398
+ value?: bigint;
2399
+ }): Promise<void>;
2400
+ /**
2401
+ * Simulate grantRole
2402
+ * Returns gas estimate and result without sending transaction
2403
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2404
+ */
2405
+ grantRole(role: `0x${string}`, account: `0x${string}`, options?: {
2406
+ accessList?: import("viem").AccessList;
2407
+ authorizationList?: import("viem").AuthorizationList;
2408
+ chain?: import("viem").Chain | null;
2409
+ dataSuffix?: `0x${string}`;
2410
+ gas?: bigint;
2411
+ gasPrice?: bigint;
2412
+ maxFeePerGas?: bigint;
2413
+ maxPriorityFeePerGas?: bigint;
2414
+ nonce?: number;
2415
+ value?: bigint;
2416
+ }): Promise<void>;
2417
+ /**
2418
+ * Simulate initialize
2419
+ * Returns gas estimate and result without sending transaction
2420
+ * Supports multiple overloads: (address, address, address, address, address, address), (string, string, address, address, address, address)
2421
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2422
+ */
2423
+ initialize(...args: any[]): Promise<any>;
2424
+ /**
2425
+ * Simulate pause
2426
+ * Returns gas estimate and result without sending transaction
2427
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2428
+ */
2429
+ pause(options?: {
2430
+ accessList?: import("viem").AccessList;
2431
+ authorizationList?: import("viem").AuthorizationList;
2432
+ chain?: import("viem").Chain | null;
2433
+ dataSuffix?: `0x${string}`;
2434
+ gas?: bigint;
2435
+ gasPrice?: bigint;
2436
+ maxFeePerGas?: bigint;
2437
+ maxPriorityFeePerGas?: bigint;
2438
+ nonce?: number;
2439
+ value?: bigint;
2440
+ }): Promise<void>;
2441
+ /**
2442
+ * Simulate permit
2443
+ * Returns gas estimate and result without sending transaction
2444
+ * Supports multiple overloads: (address, address, uint256, uint256, bytes), (address, address, uint256, uint256, uint8, bytes32, bytes32)
2445
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2446
+ */
2447
+ permit(...args: any[]): Promise<any>;
2448
+ /**
2449
+ * Simulate receiveWithAuthorization
2450
+ * Returns gas estimate and result without sending transaction
2451
+ * Supports multiple overloads: (address, address, uint256, uint256, uint256, bytes32, bytes), (address, address, uint256, uint256, uint256, bytes32, bytes32, bytes32), (address, address, uint256, uint256, uint256, bytes32, uint8, bytes32, bytes32)
2452
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2453
+ */
2454
+ receiveWithAuthorization(...args: any[]): Promise<any>;
2455
+ /**
2456
+ * Simulate renounceRole
2457
+ * Returns gas estimate and result without sending transaction
2458
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2459
+ */
2460
+ renounceRole(role: `0x${string}`, callerConfirmation: `0x${string}`, options?: {
2461
+ accessList?: import("viem").AccessList;
2462
+ authorizationList?: import("viem").AuthorizationList;
2463
+ chain?: import("viem").Chain | null;
2464
+ dataSuffix?: `0x${string}`;
2465
+ gas?: bigint;
2466
+ gasPrice?: bigint;
2467
+ maxFeePerGas?: bigint;
2468
+ maxPriorityFeePerGas?: bigint;
2469
+ nonce?: number;
2470
+ value?: bigint;
2471
+ }): Promise<void>;
2472
+ /**
2473
+ * Simulate revokeRole
2474
+ * Returns gas estimate and result without sending transaction
2475
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2476
+ */
2477
+ revokeRole(role: `0x${string}`, account: `0x${string}`, options?: {
2478
+ accessList?: import("viem").AccessList;
2479
+ authorizationList?: import("viem").AuthorizationList;
2480
+ chain?: import("viem").Chain | null;
2481
+ dataSuffix?: `0x${string}`;
2482
+ gas?: bigint;
2483
+ gasPrice?: bigint;
2484
+ maxFeePerGas?: bigint;
2485
+ maxPriorityFeePerGas?: bigint;
2486
+ nonce?: number;
2487
+ value?: bigint;
2488
+ }): Promise<void>;
2489
+ /**
2490
+ * Simulate setYieldRecipient
2491
+ * Returns gas estimate and result without sending transaction
2492
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2493
+ */
2494
+ setYieldRecipient(account: `0x${string}`, options?: {
2495
+ accessList?: import("viem").AccessList;
2496
+ authorizationList?: import("viem").AuthorizationList;
2497
+ chain?: import("viem").Chain | null;
2498
+ dataSuffix?: `0x${string}`;
2499
+ gas?: bigint;
2500
+ gasPrice?: bigint;
2501
+ maxFeePerGas?: bigint;
2502
+ maxPriorityFeePerGas?: bigint;
2503
+ nonce?: number;
2504
+ value?: bigint;
2505
+ }): Promise<void>;
2506
+ /**
2507
+ * Simulate transfer
2508
+ * Returns gas estimate and result without sending transaction
2509
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2510
+ */
2511
+ transfer(recipient_: `0x${string}`, amount_: bigint, options?: {
2512
+ accessList?: import("viem").AccessList;
2513
+ authorizationList?: import("viem").AuthorizationList;
2514
+ chain?: import("viem").Chain | null;
2515
+ dataSuffix?: `0x${string}`;
2516
+ gas?: bigint;
2517
+ gasPrice?: bigint;
2518
+ maxFeePerGas?: bigint;
2519
+ maxPriorityFeePerGas?: bigint;
2520
+ nonce?: number;
2521
+ value?: bigint;
2522
+ }): Promise<boolean>;
2523
+ /**
2524
+ * Simulate transferFrom
2525
+ * Returns gas estimate and result without sending transaction
2526
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2527
+ */
2528
+ transferFrom(sender_: `0x${string}`, recipient_: `0x${string}`, amount_: bigint, options?: {
2529
+ accessList?: import("viem").AccessList;
2530
+ authorizationList?: import("viem").AuthorizationList;
2531
+ chain?: import("viem").Chain | null;
2532
+ dataSuffix?: `0x${string}`;
2533
+ gas?: bigint;
2534
+ gasPrice?: bigint;
2535
+ maxFeePerGas?: bigint;
2536
+ maxPriorityFeePerGas?: bigint;
2537
+ nonce?: number;
2538
+ value?: bigint;
2539
+ }): Promise<boolean>;
2540
+ /**
2541
+ * Simulate transferWithAuthorization
2542
+ * Returns gas estimate and result without sending transaction
2543
+ * Supports multiple overloads: (address, address, uint256, uint256, uint256, bytes32, bytes32, bytes32), (address, address, uint256, uint256, uint256, bytes32, bytes), (address, address, uint256, uint256, uint256, bytes32, uint8, bytes32, bytes32)
2544
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2545
+ */
2546
+ transferWithAuthorization(...args: any[]): Promise<any>;
2547
+ /**
2548
+ * Simulate unfreeze
2549
+ * Returns gas estimate and result without sending transaction
2550
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2551
+ */
2552
+ unfreeze(account: `0x${string}`, options?: {
2553
+ accessList?: import("viem").AccessList;
2554
+ authorizationList?: import("viem").AuthorizationList;
2555
+ chain?: import("viem").Chain | null;
2556
+ dataSuffix?: `0x${string}`;
2557
+ gas?: bigint;
2558
+ gasPrice?: bigint;
2559
+ maxFeePerGas?: bigint;
2560
+ maxPriorityFeePerGas?: bigint;
2561
+ nonce?: number;
2562
+ value?: bigint;
2563
+ }): Promise<void>;
2564
+ /**
2565
+ * Simulate unfreezeAccounts
2566
+ * Returns gas estimate and result without sending transaction
2567
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2568
+ */
2569
+ unfreezeAccounts(accounts: `0x${string}`[], options?: {
2570
+ accessList?: import("viem").AccessList;
2571
+ authorizationList?: import("viem").AuthorizationList;
2572
+ chain?: import("viem").Chain | null;
2573
+ dataSuffix?: `0x${string}`;
2574
+ gas?: bigint;
2575
+ gasPrice?: bigint;
2576
+ maxFeePerGas?: bigint;
2577
+ maxPriorityFeePerGas?: bigint;
2578
+ nonce?: number;
2579
+ value?: bigint;
2580
+ }): Promise<void>;
2581
+ /**
2582
+ * Simulate unpause
2583
+ * Returns gas estimate and result without sending transaction
2584
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2585
+ */
2586
+ unpause(options?: {
2587
+ accessList?: import("viem").AccessList;
2588
+ authorizationList?: import("viem").AuthorizationList;
2589
+ chain?: import("viem").Chain | null;
2590
+ dataSuffix?: `0x${string}`;
2591
+ gas?: bigint;
2592
+ gasPrice?: bigint;
2593
+ maxFeePerGas?: bigint;
2594
+ maxPriorityFeePerGas?: bigint;
2595
+ nonce?: number;
2596
+ value?: bigint;
2597
+ }): Promise<void>;
2598
+ /**
2599
+ * Simulate unwrap
2600
+ * Returns gas estimate and result without sending transaction
2601
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2602
+ */
2603
+ unwrap(arg0: `0x${string}`, amount: bigint, options?: {
2604
+ accessList?: import("viem").AccessList;
2605
+ authorizationList?: import("viem").AuthorizationList;
2606
+ chain?: import("viem").Chain | null;
2607
+ dataSuffix?: `0x${string}`;
2608
+ gas?: bigint;
2609
+ gasPrice?: bigint;
2610
+ maxFeePerGas?: bigint;
2611
+ maxPriorityFeePerGas?: bigint;
2612
+ nonce?: number;
2613
+ value?: bigint;
2614
+ }): Promise<void>;
2615
+ /**
2616
+ * Simulate wrap
2617
+ * Returns gas estimate and result without sending transaction
2618
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2619
+ */
2620
+ wrap(recipient: `0x${string}`, amount: bigint, options?: {
2621
+ accessList?: import("viem").AccessList;
2622
+ authorizationList?: import("viem").AuthorizationList;
2623
+ chain?: import("viem").Chain | null;
2624
+ dataSuffix?: `0x${string}`;
2625
+ gas?: bigint;
2626
+ gasPrice?: bigint;
2627
+ maxFeePerGas?: bigint;
2628
+ maxPriorityFeePerGas?: bigint;
2629
+ nonce?: number;
2630
+ value?: bigint;
2631
+ }): Promise<void>;
2632
+ };
2633
+ /**
2634
+ * Watch contract events
2635
+ *
2636
+ * @example
2637
+ * // Watch all Transfer events
2638
+ * const unwatch = contract.watch.Transfer((event) => {
2639
+ * console.log('Transfer:', event);
2640
+ * });
2641
+ *
2642
+ * // Stop watching
2643
+ * unwatch();
2644
+ */
2645
+ get watch(): {
2646
+ /**
2647
+ * Watch Approval events
2648
+ * @param callback Function to call when event is emitted
2649
+ * @param filter Optional filter for indexed parameters
2650
+ * @returns Unwatch function to stop listening
2651
+ */
2652
+ Approval: (callback: (event: {
2653
+ account: `0x${string}`;
2654
+ spender: `0x${string}`;
2655
+ amount: bigint;
2656
+ }) => void, filter?: {
2657
+ account?: `0x${string}` | `0x${string}`[] | null;
2658
+ spender?: `0x${string}` | `0x${string}`[] | null;
2659
+ }) => () => void;
2660
+ /**
2661
+ * Watch AuthorizationCanceled events
2662
+ * @param callback Function to call when event is emitted
2663
+ * @param filter Optional filter for indexed parameters
2664
+ * @returns Unwatch function to stop listening
2665
+ */
2666
+ AuthorizationCanceled: (callback: (event: {
2667
+ authorizer: `0x${string}`;
2668
+ nonce: `0x${string}`;
2669
+ }) => void, filter?: {
2670
+ authorizer?: `0x${string}` | `0x${string}`[] | null;
2671
+ nonce?: `0x${string}` | `0x${string}`[] | null;
2672
+ }) => () => void;
2673
+ /**
2674
+ * Watch AuthorizationUsed events
2675
+ * @param callback Function to call when event is emitted
2676
+ * @param filter Optional filter for indexed parameters
2677
+ * @returns Unwatch function to stop listening
2678
+ */
2679
+ AuthorizationUsed: (callback: (event: {
2680
+ authorizer: `0x${string}`;
2681
+ nonce: `0x${string}`;
2682
+ }) => void, filter?: {
2683
+ authorizer?: `0x${string}` | `0x${string}`[] | null;
2684
+ nonce?: `0x${string}` | `0x${string}`[] | null;
2685
+ }) => () => void;
2686
+ /**
2687
+ * Watch EIP712DomainChanged events
2688
+ * @param callback Function to call when event is emitted
2689
+ * @param filter Optional filter for indexed parameters
2690
+ * @returns Unwatch function to stop listening
2691
+ */
2692
+ EIP712DomainChanged: (callback: (event: {}) => void) => () => void;
2693
+ /**
2694
+ * Watch EarningDisabled events
2695
+ * @param callback Function to call when event is emitted
2696
+ * @param filter Optional filter for indexed parameters
2697
+ * @returns Unwatch function to stop listening
2698
+ */
2699
+ EarningDisabled: (callback: (event: {
2700
+ index: bigint;
2701
+ }) => void) => () => void;
2702
+ /**
2703
+ * Watch EarningEnabled events
2704
+ * @param callback Function to call when event is emitted
2705
+ * @param filter Optional filter for indexed parameters
2706
+ * @returns Unwatch function to stop listening
2707
+ */
2708
+ EarningEnabled: (callback: (event: {
2709
+ index: bigint;
2710
+ }) => void) => () => void;
2711
+ /**
2712
+ * Watch ForcedTransfer events
2713
+ * @param callback Function to call when event is emitted
2714
+ * @param filter Optional filter for indexed parameters
2715
+ * @returns Unwatch function to stop listening
2716
+ */
2717
+ ForcedTransfer: (callback: (event: {
2718
+ frozenAccount: `0x${string}`;
2719
+ recipient: `0x${string}`;
2720
+ forcedTransferManager: `0x${string}`;
2721
+ amount: bigint;
2722
+ }) => void, filter?: {
2723
+ frozenAccount?: `0x${string}` | `0x${string}`[] | null;
2724
+ recipient?: `0x${string}` | `0x${string}`[] | null;
2725
+ forcedTransferManager?: `0x${string}` | `0x${string}`[] | null;
2726
+ }) => () => void;
2727
+ /**
2728
+ * Watch Frozen events
2729
+ * @param callback Function to call when event is emitted
2730
+ * @param filter Optional filter for indexed parameters
2731
+ * @returns Unwatch function to stop listening
2732
+ */
2733
+ Frozen: (callback: (event: {
2734
+ account: `0x${string}`;
2735
+ timestamp: bigint;
2736
+ }) => void, filter?: {
2737
+ account?: `0x${string}` | `0x${string}`[] | null;
2738
+ }) => () => void;
2739
+ /**
2740
+ * Watch Initialized events
2741
+ * @param callback Function to call when event is emitted
2742
+ * @param filter Optional filter for indexed parameters
2743
+ * @returns Unwatch function to stop listening
2744
+ */
2745
+ Initialized: (callback: (event: {
2746
+ version: bigint;
2747
+ }) => void) => () => void;
2748
+ /**
2749
+ * Watch Paused events
2750
+ * @param callback Function to call when event is emitted
2751
+ * @param filter Optional filter for indexed parameters
2752
+ * @returns Unwatch function to stop listening
2753
+ */
2754
+ Paused: (callback: (event: {
2755
+ account: `0x${string}`;
2756
+ }) => void) => () => void;
2757
+ /**
2758
+ * Watch RoleAdminChanged events
2759
+ * @param callback Function to call when event is emitted
2760
+ * @param filter Optional filter for indexed parameters
2761
+ * @returns Unwatch function to stop listening
2762
+ */
2763
+ RoleAdminChanged: (callback: (event: {
2764
+ role: `0x${string}`;
2765
+ previousAdminRole: `0x${string}`;
2766
+ newAdminRole: `0x${string}`;
2767
+ }) => void, filter?: {
2768
+ role?: `0x${string}` | `0x${string}`[] | null;
2769
+ previousAdminRole?: `0x${string}` | `0x${string}`[] | null;
2770
+ newAdminRole?: `0x${string}` | `0x${string}`[] | null;
2771
+ }) => () => void;
2772
+ /**
2773
+ * Watch RoleGranted events
2774
+ * @param callback Function to call when event is emitted
2775
+ * @param filter Optional filter for indexed parameters
2776
+ * @returns Unwatch function to stop listening
2777
+ */
2778
+ RoleGranted: (callback: (event: {
2779
+ role: `0x${string}`;
2780
+ account: `0x${string}`;
2781
+ sender: `0x${string}`;
2782
+ }) => void, filter?: {
2783
+ role?: `0x${string}` | `0x${string}`[] | null;
2784
+ account?: `0x${string}` | `0x${string}`[] | null;
2785
+ sender?: `0x${string}` | `0x${string}`[] | null;
2786
+ }) => () => void;
2787
+ /**
2788
+ * Watch RoleRevoked events
2789
+ * @param callback Function to call when event is emitted
2790
+ * @param filter Optional filter for indexed parameters
2791
+ * @returns Unwatch function to stop listening
2792
+ */
2793
+ RoleRevoked: (callback: (event: {
2794
+ role: `0x${string}`;
2795
+ account: `0x${string}`;
2796
+ sender: `0x${string}`;
2797
+ }) => void, filter?: {
2798
+ role?: `0x${string}` | `0x${string}`[] | null;
2799
+ account?: `0x${string}` | `0x${string}`[] | null;
2800
+ sender?: `0x${string}` | `0x${string}`[] | null;
2801
+ }) => () => void;
2802
+ /**
2803
+ * Watch Transfer events
2804
+ * @param callback Function to call when event is emitted
2805
+ * @param filter Optional filter for indexed parameters
2806
+ * @returns Unwatch function to stop listening
2807
+ */
2808
+ Transfer: (callback: (event: {
2809
+ sender: `0x${string}`;
2810
+ recipient: `0x${string}`;
2811
+ amount: bigint;
2812
+ }) => void, filter?: {
2813
+ sender?: `0x${string}` | `0x${string}`[] | null;
2814
+ recipient?: `0x${string}` | `0x${string}`[] | null;
2815
+ }) => () => void;
2816
+ /**
2817
+ * Watch Unfrozen events
2818
+ * @param callback Function to call when event is emitted
2819
+ * @param filter Optional filter for indexed parameters
2820
+ * @returns Unwatch function to stop listening
2821
+ */
2822
+ Unfrozen: (callback: (event: {
2823
+ account: `0x${string}`;
2824
+ timestamp: bigint;
2825
+ }) => void, filter?: {
2826
+ account?: `0x${string}` | `0x${string}`[] | null;
2827
+ }) => () => void;
2828
+ /**
2829
+ * Watch Unpaused events
2830
+ * @param callback Function to call when event is emitted
2831
+ * @param filter Optional filter for indexed parameters
2832
+ * @returns Unwatch function to stop listening
2833
+ */
2834
+ Unpaused: (callback: (event: {
2835
+ account: `0x${string}`;
2836
+ }) => void) => () => void;
2837
+ /**
2838
+ * Watch YieldClaimed events
2839
+ * @param callback Function to call when event is emitted
2840
+ * @param filter Optional filter for indexed parameters
2841
+ * @returns Unwatch function to stop listening
2842
+ */
2843
+ YieldClaimed: (callback: (event: {
2844
+ yield: bigint;
2845
+ }) => void) => () => void;
2846
+ /**
2847
+ * Watch YieldRecipientSet events
2848
+ * @param callback Function to call when event is emitted
2849
+ * @param filter Optional filter for indexed parameters
2850
+ * @returns Unwatch function to stop listening
2851
+ */
2852
+ YieldRecipientSet: (callback: (event: {
2853
+ yieldRecipient: `0x${string}`;
2854
+ }) => void, filter?: {
2855
+ yieldRecipient?: `0x${string}` | `0x${string}`[] | null;
2856
+ }) => () => void;
2857
+ };
2858
+ }