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