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