@gitmyabi/usdc 1.0.0 → 1.0.2

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