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