@gitmyabi/eusd 1.0.1 → 1.0.3

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