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