@gitmyabi/wuyu 1.0.0

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