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