@gitmyabi-stg/steakusdc 0.0.1

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,4067 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MetaMorpho = exports.MetaMorphoAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * MetaMorpho ABI
7
+ *
8
+ * This ABI is typed using viem's type system for full type safety.
9
+ */
10
+ exports.MetaMorphoAbi = [
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "address",
15
+ "name": "owner",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "morpho",
21
+ "type": "address"
22
+ },
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "initialTimelock",
26
+ "type": "uint256"
27
+ },
28
+ {
29
+ "internalType": "address",
30
+ "name": "_asset",
31
+ "type": "address"
32
+ },
33
+ {
34
+ "internalType": "string",
35
+ "name": "_name",
36
+ "type": "string"
37
+ },
38
+ {
39
+ "internalType": "string",
40
+ "name": "_symbol",
41
+ "type": "string"
42
+ }
43
+ ],
44
+ "stateMutability": "nonpayable",
45
+ "type": "constructor"
46
+ },
47
+ {
48
+ "inputs": [],
49
+ "name": "AboveMaxTimelock",
50
+ "type": "error"
51
+ },
52
+ {
53
+ "inputs": [
54
+ {
55
+ "internalType": "address",
56
+ "name": "target",
57
+ "type": "address"
58
+ }
59
+ ],
60
+ "name": "AddressEmptyCode",
61
+ "type": "error"
62
+ },
63
+ {
64
+ "inputs": [
65
+ {
66
+ "internalType": "address",
67
+ "name": "account",
68
+ "type": "address"
69
+ }
70
+ ],
71
+ "name": "AddressInsufficientBalance",
72
+ "type": "error"
73
+ },
74
+ {
75
+ "inputs": [],
76
+ "name": "AllCapsReached",
77
+ "type": "error"
78
+ },
79
+ {
80
+ "inputs": [],
81
+ "name": "AlreadyPending",
82
+ "type": "error"
83
+ },
84
+ {
85
+ "inputs": [],
86
+ "name": "AlreadySet",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [],
91
+ "name": "BelowMinTimelock",
92
+ "type": "error"
93
+ },
94
+ {
95
+ "inputs": [
96
+ {
97
+ "internalType": "Id",
98
+ "name": "id",
99
+ "type": "bytes32"
100
+ }
101
+ ],
102
+ "name": "DuplicateMarket",
103
+ "type": "error"
104
+ },
105
+ {
106
+ "inputs": [],
107
+ "name": "ECDSAInvalidSignature",
108
+ "type": "error"
109
+ },
110
+ {
111
+ "inputs": [
112
+ {
113
+ "internalType": "uint256",
114
+ "name": "length",
115
+ "type": "uint256"
116
+ }
117
+ ],
118
+ "name": "ECDSAInvalidSignatureLength",
119
+ "type": "error"
120
+ },
121
+ {
122
+ "inputs": [
123
+ {
124
+ "internalType": "bytes32",
125
+ "name": "s",
126
+ "type": "bytes32"
127
+ }
128
+ ],
129
+ "name": "ECDSAInvalidSignatureS",
130
+ "type": "error"
131
+ },
132
+ {
133
+ "inputs": [
134
+ {
135
+ "internalType": "address",
136
+ "name": "spender",
137
+ "type": "address"
138
+ },
139
+ {
140
+ "internalType": "uint256",
141
+ "name": "allowance",
142
+ "type": "uint256"
143
+ },
144
+ {
145
+ "internalType": "uint256",
146
+ "name": "needed",
147
+ "type": "uint256"
148
+ }
149
+ ],
150
+ "name": "ERC20InsufficientAllowance",
151
+ "type": "error"
152
+ },
153
+ {
154
+ "inputs": [
155
+ {
156
+ "internalType": "address",
157
+ "name": "sender",
158
+ "type": "address"
159
+ },
160
+ {
161
+ "internalType": "uint256",
162
+ "name": "balance",
163
+ "type": "uint256"
164
+ },
165
+ {
166
+ "internalType": "uint256",
167
+ "name": "needed",
168
+ "type": "uint256"
169
+ }
170
+ ],
171
+ "name": "ERC20InsufficientBalance",
172
+ "type": "error"
173
+ },
174
+ {
175
+ "inputs": [
176
+ {
177
+ "internalType": "address",
178
+ "name": "approver",
179
+ "type": "address"
180
+ }
181
+ ],
182
+ "name": "ERC20InvalidApprover",
183
+ "type": "error"
184
+ },
185
+ {
186
+ "inputs": [
187
+ {
188
+ "internalType": "address",
189
+ "name": "receiver",
190
+ "type": "address"
191
+ }
192
+ ],
193
+ "name": "ERC20InvalidReceiver",
194
+ "type": "error"
195
+ },
196
+ {
197
+ "inputs": [
198
+ {
199
+ "internalType": "address",
200
+ "name": "sender",
201
+ "type": "address"
202
+ }
203
+ ],
204
+ "name": "ERC20InvalidSender",
205
+ "type": "error"
206
+ },
207
+ {
208
+ "inputs": [
209
+ {
210
+ "internalType": "address",
211
+ "name": "spender",
212
+ "type": "address"
213
+ }
214
+ ],
215
+ "name": "ERC20InvalidSpender",
216
+ "type": "error"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "uint256",
222
+ "name": "deadline",
223
+ "type": "uint256"
224
+ }
225
+ ],
226
+ "name": "ERC2612ExpiredSignature",
227
+ "type": "error"
228
+ },
229
+ {
230
+ "inputs": [
231
+ {
232
+ "internalType": "address",
233
+ "name": "signer",
234
+ "type": "address"
235
+ },
236
+ {
237
+ "internalType": "address",
238
+ "name": "owner",
239
+ "type": "address"
240
+ }
241
+ ],
242
+ "name": "ERC2612InvalidSigner",
243
+ "type": "error"
244
+ },
245
+ {
246
+ "inputs": [
247
+ {
248
+ "internalType": "address",
249
+ "name": "receiver",
250
+ "type": "address"
251
+ },
252
+ {
253
+ "internalType": "uint256",
254
+ "name": "assets",
255
+ "type": "uint256"
256
+ },
257
+ {
258
+ "internalType": "uint256",
259
+ "name": "max",
260
+ "type": "uint256"
261
+ }
262
+ ],
263
+ "name": "ERC4626ExceededMaxDeposit",
264
+ "type": "error"
265
+ },
266
+ {
267
+ "inputs": [
268
+ {
269
+ "internalType": "address",
270
+ "name": "receiver",
271
+ "type": "address"
272
+ },
273
+ {
274
+ "internalType": "uint256",
275
+ "name": "shares",
276
+ "type": "uint256"
277
+ },
278
+ {
279
+ "internalType": "uint256",
280
+ "name": "max",
281
+ "type": "uint256"
282
+ }
283
+ ],
284
+ "name": "ERC4626ExceededMaxMint",
285
+ "type": "error"
286
+ },
287
+ {
288
+ "inputs": [
289
+ {
290
+ "internalType": "address",
291
+ "name": "owner",
292
+ "type": "address"
293
+ },
294
+ {
295
+ "internalType": "uint256",
296
+ "name": "shares",
297
+ "type": "uint256"
298
+ },
299
+ {
300
+ "internalType": "uint256",
301
+ "name": "max",
302
+ "type": "uint256"
303
+ }
304
+ ],
305
+ "name": "ERC4626ExceededMaxRedeem",
306
+ "type": "error"
307
+ },
308
+ {
309
+ "inputs": [
310
+ {
311
+ "internalType": "address",
312
+ "name": "owner",
313
+ "type": "address"
314
+ },
315
+ {
316
+ "internalType": "uint256",
317
+ "name": "assets",
318
+ "type": "uint256"
319
+ },
320
+ {
321
+ "internalType": "uint256",
322
+ "name": "max",
323
+ "type": "uint256"
324
+ }
325
+ ],
326
+ "name": "ERC4626ExceededMaxWithdraw",
327
+ "type": "error"
328
+ },
329
+ {
330
+ "inputs": [],
331
+ "name": "FailedInnerCall",
332
+ "type": "error"
333
+ },
334
+ {
335
+ "inputs": [
336
+ {
337
+ "internalType": "Id",
338
+ "name": "id",
339
+ "type": "bytes32"
340
+ }
341
+ ],
342
+ "name": "InconsistentAsset",
343
+ "type": "error"
344
+ },
345
+ {
346
+ "inputs": [],
347
+ "name": "InconsistentReallocation",
348
+ "type": "error"
349
+ },
350
+ {
351
+ "inputs": [
352
+ {
353
+ "internalType": "address",
354
+ "name": "account",
355
+ "type": "address"
356
+ },
357
+ {
358
+ "internalType": "uint256",
359
+ "name": "currentNonce",
360
+ "type": "uint256"
361
+ }
362
+ ],
363
+ "name": "InvalidAccountNonce",
364
+ "type": "error"
365
+ },
366
+ {
367
+ "inputs": [
368
+ {
369
+ "internalType": "Id",
370
+ "name": "id",
371
+ "type": "bytes32"
372
+ }
373
+ ],
374
+ "name": "InvalidMarketRemovalNonZeroCap",
375
+ "type": "error"
376
+ },
377
+ {
378
+ "inputs": [
379
+ {
380
+ "internalType": "Id",
381
+ "name": "id",
382
+ "type": "bytes32"
383
+ }
384
+ ],
385
+ "name": "InvalidMarketRemovalNonZeroSupply",
386
+ "type": "error"
387
+ },
388
+ {
389
+ "inputs": [
390
+ {
391
+ "internalType": "Id",
392
+ "name": "id",
393
+ "type": "bytes32"
394
+ }
395
+ ],
396
+ "name": "InvalidMarketRemovalTimelockNotElapsed",
397
+ "type": "error"
398
+ },
399
+ {
400
+ "inputs": [],
401
+ "name": "InvalidShortString",
402
+ "type": "error"
403
+ },
404
+ {
405
+ "inputs": [],
406
+ "name": "MarketNotCreated",
407
+ "type": "error"
408
+ },
409
+ {
410
+ "inputs": [
411
+ {
412
+ "internalType": "Id",
413
+ "name": "id",
414
+ "type": "bytes32"
415
+ }
416
+ ],
417
+ "name": "MarketNotEnabled",
418
+ "type": "error"
419
+ },
420
+ {
421
+ "inputs": [],
422
+ "name": "MathOverflowedMulDiv",
423
+ "type": "error"
424
+ },
425
+ {
426
+ "inputs": [],
427
+ "name": "MaxFeeExceeded",
428
+ "type": "error"
429
+ },
430
+ {
431
+ "inputs": [],
432
+ "name": "MaxQueueLengthExceeded",
433
+ "type": "error"
434
+ },
435
+ {
436
+ "inputs": [],
437
+ "name": "NoPendingValue",
438
+ "type": "error"
439
+ },
440
+ {
441
+ "inputs": [],
442
+ "name": "NonZeroCap",
443
+ "type": "error"
444
+ },
445
+ {
446
+ "inputs": [],
447
+ "name": "NotAllocatorRole",
448
+ "type": "error"
449
+ },
450
+ {
451
+ "inputs": [],
452
+ "name": "NotCuratorNorGuardianRole",
453
+ "type": "error"
454
+ },
455
+ {
456
+ "inputs": [],
457
+ "name": "NotCuratorRole",
458
+ "type": "error"
459
+ },
460
+ {
461
+ "inputs": [],
462
+ "name": "NotEnoughLiquidity",
463
+ "type": "error"
464
+ },
465
+ {
466
+ "inputs": [],
467
+ "name": "NotGuardianRole",
468
+ "type": "error"
469
+ },
470
+ {
471
+ "inputs": [
472
+ {
473
+ "internalType": "address",
474
+ "name": "owner",
475
+ "type": "address"
476
+ }
477
+ ],
478
+ "name": "OwnableInvalidOwner",
479
+ "type": "error"
480
+ },
481
+ {
482
+ "inputs": [
483
+ {
484
+ "internalType": "address",
485
+ "name": "account",
486
+ "type": "address"
487
+ }
488
+ ],
489
+ "name": "OwnableUnauthorizedAccount",
490
+ "type": "error"
491
+ },
492
+ {
493
+ "inputs": [
494
+ {
495
+ "internalType": "Id",
496
+ "name": "id",
497
+ "type": "bytes32"
498
+ }
499
+ ],
500
+ "name": "PendingCap",
501
+ "type": "error"
502
+ },
503
+ {
504
+ "inputs": [],
505
+ "name": "PendingRemoval",
506
+ "type": "error"
507
+ },
508
+ {
509
+ "inputs": [
510
+ {
511
+ "internalType": "uint8",
512
+ "name": "bits",
513
+ "type": "uint8"
514
+ },
515
+ {
516
+ "internalType": "uint256",
517
+ "name": "value",
518
+ "type": "uint256"
519
+ }
520
+ ],
521
+ "name": "SafeCastOverflowedUintDowncast",
522
+ "type": "error"
523
+ },
524
+ {
525
+ "inputs": [
526
+ {
527
+ "internalType": "address",
528
+ "name": "token",
529
+ "type": "address"
530
+ }
531
+ ],
532
+ "name": "SafeERC20FailedOperation",
533
+ "type": "error"
534
+ },
535
+ {
536
+ "inputs": [
537
+ {
538
+ "internalType": "string",
539
+ "name": "str",
540
+ "type": "string"
541
+ }
542
+ ],
543
+ "name": "StringTooLong",
544
+ "type": "error"
545
+ },
546
+ {
547
+ "inputs": [
548
+ {
549
+ "internalType": "Id",
550
+ "name": "id",
551
+ "type": "bytes32"
552
+ }
553
+ ],
554
+ "name": "SupplyCapExceeded",
555
+ "type": "error"
556
+ },
557
+ {
558
+ "inputs": [],
559
+ "name": "TimelockNotElapsed",
560
+ "type": "error"
561
+ },
562
+ {
563
+ "inputs": [
564
+ {
565
+ "internalType": "Id",
566
+ "name": "id",
567
+ "type": "bytes32"
568
+ }
569
+ ],
570
+ "name": "UnauthorizedMarket",
571
+ "type": "error"
572
+ },
573
+ {
574
+ "inputs": [],
575
+ "name": "ZeroAddress",
576
+ "type": "error"
577
+ },
578
+ {
579
+ "inputs": [],
580
+ "name": "ZeroFeeRecipient",
581
+ "type": "error"
582
+ },
583
+ {
584
+ "anonymous": false,
585
+ "inputs": [
586
+ {
587
+ "indexed": false,
588
+ "internalType": "uint256",
589
+ "name": "newTotalAssets",
590
+ "type": "uint256"
591
+ },
592
+ {
593
+ "indexed": false,
594
+ "internalType": "uint256",
595
+ "name": "feeShares",
596
+ "type": "uint256"
597
+ }
598
+ ],
599
+ "name": "AccrueInterest",
600
+ "type": "event"
601
+ },
602
+ {
603
+ "anonymous": false,
604
+ "inputs": [
605
+ {
606
+ "indexed": true,
607
+ "internalType": "address",
608
+ "name": "owner",
609
+ "type": "address"
610
+ },
611
+ {
612
+ "indexed": true,
613
+ "internalType": "address",
614
+ "name": "spender",
615
+ "type": "address"
616
+ },
617
+ {
618
+ "indexed": false,
619
+ "internalType": "uint256",
620
+ "name": "value",
621
+ "type": "uint256"
622
+ }
623
+ ],
624
+ "name": "Approval",
625
+ "type": "event"
626
+ },
627
+ {
628
+ "anonymous": false,
629
+ "inputs": [
630
+ {
631
+ "indexed": true,
632
+ "internalType": "address",
633
+ "name": "sender",
634
+ "type": "address"
635
+ },
636
+ {
637
+ "indexed": true,
638
+ "internalType": "address",
639
+ "name": "owner",
640
+ "type": "address"
641
+ },
642
+ {
643
+ "indexed": false,
644
+ "internalType": "uint256",
645
+ "name": "assets",
646
+ "type": "uint256"
647
+ },
648
+ {
649
+ "indexed": false,
650
+ "internalType": "uint256",
651
+ "name": "shares",
652
+ "type": "uint256"
653
+ }
654
+ ],
655
+ "name": "Deposit",
656
+ "type": "event"
657
+ },
658
+ {
659
+ "anonymous": false,
660
+ "inputs": [],
661
+ "name": "EIP712DomainChanged",
662
+ "type": "event"
663
+ },
664
+ {
665
+ "anonymous": false,
666
+ "inputs": [
667
+ {
668
+ "indexed": true,
669
+ "internalType": "address",
670
+ "name": "previousOwner",
671
+ "type": "address"
672
+ },
673
+ {
674
+ "indexed": true,
675
+ "internalType": "address",
676
+ "name": "newOwner",
677
+ "type": "address"
678
+ }
679
+ ],
680
+ "name": "OwnershipTransferStarted",
681
+ "type": "event"
682
+ },
683
+ {
684
+ "anonymous": false,
685
+ "inputs": [
686
+ {
687
+ "indexed": true,
688
+ "internalType": "address",
689
+ "name": "previousOwner",
690
+ "type": "address"
691
+ },
692
+ {
693
+ "indexed": true,
694
+ "internalType": "address",
695
+ "name": "newOwner",
696
+ "type": "address"
697
+ }
698
+ ],
699
+ "name": "OwnershipTransferred",
700
+ "type": "event"
701
+ },
702
+ {
703
+ "anonymous": false,
704
+ "inputs": [
705
+ {
706
+ "indexed": true,
707
+ "internalType": "address",
708
+ "name": "caller",
709
+ "type": "address"
710
+ },
711
+ {
712
+ "indexed": true,
713
+ "internalType": "Id",
714
+ "name": "id",
715
+ "type": "bytes32"
716
+ },
717
+ {
718
+ "indexed": false,
719
+ "internalType": "uint256",
720
+ "name": "suppliedAssets",
721
+ "type": "uint256"
722
+ },
723
+ {
724
+ "indexed": false,
725
+ "internalType": "uint256",
726
+ "name": "suppliedShares",
727
+ "type": "uint256"
728
+ }
729
+ ],
730
+ "name": "ReallocateSupply",
731
+ "type": "event"
732
+ },
733
+ {
734
+ "anonymous": false,
735
+ "inputs": [
736
+ {
737
+ "indexed": true,
738
+ "internalType": "address",
739
+ "name": "caller",
740
+ "type": "address"
741
+ },
742
+ {
743
+ "indexed": true,
744
+ "internalType": "Id",
745
+ "name": "id",
746
+ "type": "bytes32"
747
+ },
748
+ {
749
+ "indexed": false,
750
+ "internalType": "uint256",
751
+ "name": "withdrawnAssets",
752
+ "type": "uint256"
753
+ },
754
+ {
755
+ "indexed": false,
756
+ "internalType": "uint256",
757
+ "name": "withdrawnShares",
758
+ "type": "uint256"
759
+ }
760
+ ],
761
+ "name": "ReallocateWithdraw",
762
+ "type": "event"
763
+ },
764
+ {
765
+ "anonymous": false,
766
+ "inputs": [
767
+ {
768
+ "indexed": true,
769
+ "internalType": "address",
770
+ "name": "caller",
771
+ "type": "address"
772
+ },
773
+ {
774
+ "indexed": true,
775
+ "internalType": "Id",
776
+ "name": "id",
777
+ "type": "bytes32"
778
+ }
779
+ ],
780
+ "name": "RevokePendingCap",
781
+ "type": "event"
782
+ },
783
+ {
784
+ "anonymous": false,
785
+ "inputs": [
786
+ {
787
+ "indexed": true,
788
+ "internalType": "address",
789
+ "name": "caller",
790
+ "type": "address"
791
+ }
792
+ ],
793
+ "name": "RevokePendingGuardian",
794
+ "type": "event"
795
+ },
796
+ {
797
+ "anonymous": false,
798
+ "inputs": [
799
+ {
800
+ "indexed": true,
801
+ "internalType": "address",
802
+ "name": "caller",
803
+ "type": "address"
804
+ },
805
+ {
806
+ "indexed": true,
807
+ "internalType": "Id",
808
+ "name": "id",
809
+ "type": "bytes32"
810
+ }
811
+ ],
812
+ "name": "RevokePendingMarketRemoval",
813
+ "type": "event"
814
+ },
815
+ {
816
+ "anonymous": false,
817
+ "inputs": [
818
+ {
819
+ "indexed": true,
820
+ "internalType": "address",
821
+ "name": "caller",
822
+ "type": "address"
823
+ }
824
+ ],
825
+ "name": "RevokePendingTimelock",
826
+ "type": "event"
827
+ },
828
+ {
829
+ "anonymous": false,
830
+ "inputs": [
831
+ {
832
+ "indexed": true,
833
+ "internalType": "address",
834
+ "name": "caller",
835
+ "type": "address"
836
+ },
837
+ {
838
+ "indexed": true,
839
+ "internalType": "Id",
840
+ "name": "id",
841
+ "type": "bytes32"
842
+ },
843
+ {
844
+ "indexed": false,
845
+ "internalType": "uint256",
846
+ "name": "cap",
847
+ "type": "uint256"
848
+ }
849
+ ],
850
+ "name": "SetCap",
851
+ "type": "event"
852
+ },
853
+ {
854
+ "anonymous": false,
855
+ "inputs": [
856
+ {
857
+ "indexed": true,
858
+ "internalType": "address",
859
+ "name": "newCurator",
860
+ "type": "address"
861
+ }
862
+ ],
863
+ "name": "SetCurator",
864
+ "type": "event"
865
+ },
866
+ {
867
+ "anonymous": false,
868
+ "inputs": [
869
+ {
870
+ "indexed": true,
871
+ "internalType": "address",
872
+ "name": "caller",
873
+ "type": "address"
874
+ },
875
+ {
876
+ "indexed": false,
877
+ "internalType": "uint256",
878
+ "name": "newFee",
879
+ "type": "uint256"
880
+ }
881
+ ],
882
+ "name": "SetFee",
883
+ "type": "event"
884
+ },
885
+ {
886
+ "anonymous": false,
887
+ "inputs": [
888
+ {
889
+ "indexed": true,
890
+ "internalType": "address",
891
+ "name": "newFeeRecipient",
892
+ "type": "address"
893
+ }
894
+ ],
895
+ "name": "SetFeeRecipient",
896
+ "type": "event"
897
+ },
898
+ {
899
+ "anonymous": false,
900
+ "inputs": [
901
+ {
902
+ "indexed": true,
903
+ "internalType": "address",
904
+ "name": "caller",
905
+ "type": "address"
906
+ },
907
+ {
908
+ "indexed": true,
909
+ "internalType": "address",
910
+ "name": "guardian",
911
+ "type": "address"
912
+ }
913
+ ],
914
+ "name": "SetGuardian",
915
+ "type": "event"
916
+ },
917
+ {
918
+ "anonymous": false,
919
+ "inputs": [
920
+ {
921
+ "indexed": true,
922
+ "internalType": "address",
923
+ "name": "allocator",
924
+ "type": "address"
925
+ },
926
+ {
927
+ "indexed": false,
928
+ "internalType": "bool",
929
+ "name": "isAllocator",
930
+ "type": "bool"
931
+ }
932
+ ],
933
+ "name": "SetIsAllocator",
934
+ "type": "event"
935
+ },
936
+ {
937
+ "anonymous": false,
938
+ "inputs": [
939
+ {
940
+ "indexed": true,
941
+ "internalType": "address",
942
+ "name": "newSkimRecipient",
943
+ "type": "address"
944
+ }
945
+ ],
946
+ "name": "SetSkimRecipient",
947
+ "type": "event"
948
+ },
949
+ {
950
+ "anonymous": false,
951
+ "inputs": [
952
+ {
953
+ "indexed": true,
954
+ "internalType": "address",
955
+ "name": "caller",
956
+ "type": "address"
957
+ },
958
+ {
959
+ "indexed": false,
960
+ "internalType": "Id[]",
961
+ "name": "newSupplyQueue",
962
+ "type": "bytes32[]"
963
+ }
964
+ ],
965
+ "name": "SetSupplyQueue",
966
+ "type": "event"
967
+ },
968
+ {
969
+ "anonymous": false,
970
+ "inputs": [
971
+ {
972
+ "indexed": true,
973
+ "internalType": "address",
974
+ "name": "caller",
975
+ "type": "address"
976
+ },
977
+ {
978
+ "indexed": false,
979
+ "internalType": "uint256",
980
+ "name": "newTimelock",
981
+ "type": "uint256"
982
+ }
983
+ ],
984
+ "name": "SetTimelock",
985
+ "type": "event"
986
+ },
987
+ {
988
+ "anonymous": false,
989
+ "inputs": [
990
+ {
991
+ "indexed": true,
992
+ "internalType": "address",
993
+ "name": "caller",
994
+ "type": "address"
995
+ },
996
+ {
997
+ "indexed": false,
998
+ "internalType": "Id[]",
999
+ "name": "newWithdrawQueue",
1000
+ "type": "bytes32[]"
1001
+ }
1002
+ ],
1003
+ "name": "SetWithdrawQueue",
1004
+ "type": "event"
1005
+ },
1006
+ {
1007
+ "anonymous": false,
1008
+ "inputs": [
1009
+ {
1010
+ "indexed": true,
1011
+ "internalType": "address",
1012
+ "name": "caller",
1013
+ "type": "address"
1014
+ },
1015
+ {
1016
+ "indexed": true,
1017
+ "internalType": "address",
1018
+ "name": "token",
1019
+ "type": "address"
1020
+ },
1021
+ {
1022
+ "indexed": false,
1023
+ "internalType": "uint256",
1024
+ "name": "amount",
1025
+ "type": "uint256"
1026
+ }
1027
+ ],
1028
+ "name": "Skim",
1029
+ "type": "event"
1030
+ },
1031
+ {
1032
+ "anonymous": false,
1033
+ "inputs": [
1034
+ {
1035
+ "indexed": true,
1036
+ "internalType": "address",
1037
+ "name": "caller",
1038
+ "type": "address"
1039
+ },
1040
+ {
1041
+ "indexed": true,
1042
+ "internalType": "Id",
1043
+ "name": "id",
1044
+ "type": "bytes32"
1045
+ },
1046
+ {
1047
+ "indexed": false,
1048
+ "internalType": "uint256",
1049
+ "name": "cap",
1050
+ "type": "uint256"
1051
+ }
1052
+ ],
1053
+ "name": "SubmitCap",
1054
+ "type": "event"
1055
+ },
1056
+ {
1057
+ "anonymous": false,
1058
+ "inputs": [
1059
+ {
1060
+ "indexed": true,
1061
+ "internalType": "address",
1062
+ "name": "newGuardian",
1063
+ "type": "address"
1064
+ }
1065
+ ],
1066
+ "name": "SubmitGuardian",
1067
+ "type": "event"
1068
+ },
1069
+ {
1070
+ "anonymous": false,
1071
+ "inputs": [
1072
+ {
1073
+ "indexed": true,
1074
+ "internalType": "address",
1075
+ "name": "caller",
1076
+ "type": "address"
1077
+ },
1078
+ {
1079
+ "indexed": true,
1080
+ "internalType": "Id",
1081
+ "name": "id",
1082
+ "type": "bytes32"
1083
+ }
1084
+ ],
1085
+ "name": "SubmitMarketRemoval",
1086
+ "type": "event"
1087
+ },
1088
+ {
1089
+ "anonymous": false,
1090
+ "inputs": [
1091
+ {
1092
+ "indexed": false,
1093
+ "internalType": "uint256",
1094
+ "name": "newTimelock",
1095
+ "type": "uint256"
1096
+ }
1097
+ ],
1098
+ "name": "SubmitTimelock",
1099
+ "type": "event"
1100
+ },
1101
+ {
1102
+ "anonymous": false,
1103
+ "inputs": [
1104
+ {
1105
+ "indexed": true,
1106
+ "internalType": "address",
1107
+ "name": "from",
1108
+ "type": "address"
1109
+ },
1110
+ {
1111
+ "indexed": true,
1112
+ "internalType": "address",
1113
+ "name": "to",
1114
+ "type": "address"
1115
+ },
1116
+ {
1117
+ "indexed": false,
1118
+ "internalType": "uint256",
1119
+ "name": "value",
1120
+ "type": "uint256"
1121
+ }
1122
+ ],
1123
+ "name": "Transfer",
1124
+ "type": "event"
1125
+ },
1126
+ {
1127
+ "anonymous": false,
1128
+ "inputs": [
1129
+ {
1130
+ "indexed": false,
1131
+ "internalType": "uint256",
1132
+ "name": "updatedTotalAssets",
1133
+ "type": "uint256"
1134
+ }
1135
+ ],
1136
+ "name": "UpdateLastTotalAssets",
1137
+ "type": "event"
1138
+ },
1139
+ {
1140
+ "anonymous": false,
1141
+ "inputs": [
1142
+ {
1143
+ "indexed": true,
1144
+ "internalType": "address",
1145
+ "name": "sender",
1146
+ "type": "address"
1147
+ },
1148
+ {
1149
+ "indexed": true,
1150
+ "internalType": "address",
1151
+ "name": "receiver",
1152
+ "type": "address"
1153
+ },
1154
+ {
1155
+ "indexed": true,
1156
+ "internalType": "address",
1157
+ "name": "owner",
1158
+ "type": "address"
1159
+ },
1160
+ {
1161
+ "indexed": false,
1162
+ "internalType": "uint256",
1163
+ "name": "assets",
1164
+ "type": "uint256"
1165
+ },
1166
+ {
1167
+ "indexed": false,
1168
+ "internalType": "uint256",
1169
+ "name": "shares",
1170
+ "type": "uint256"
1171
+ }
1172
+ ],
1173
+ "name": "Withdraw",
1174
+ "type": "event"
1175
+ },
1176
+ {
1177
+ "inputs": [],
1178
+ "name": "DECIMALS_OFFSET",
1179
+ "outputs": [
1180
+ {
1181
+ "internalType": "uint8",
1182
+ "name": "",
1183
+ "type": "uint8"
1184
+ }
1185
+ ],
1186
+ "stateMutability": "view",
1187
+ "type": "function"
1188
+ },
1189
+ {
1190
+ "inputs": [],
1191
+ "name": "DOMAIN_SEPARATOR",
1192
+ "outputs": [
1193
+ {
1194
+ "internalType": "bytes32",
1195
+ "name": "",
1196
+ "type": "bytes32"
1197
+ }
1198
+ ],
1199
+ "stateMutability": "view",
1200
+ "type": "function"
1201
+ },
1202
+ {
1203
+ "inputs": [],
1204
+ "name": "MORPHO",
1205
+ "outputs": [
1206
+ {
1207
+ "internalType": "contract IMorpho",
1208
+ "name": "",
1209
+ "type": "address"
1210
+ }
1211
+ ],
1212
+ "stateMutability": "view",
1213
+ "type": "function"
1214
+ },
1215
+ {
1216
+ "inputs": [
1217
+ {
1218
+ "components": [
1219
+ {
1220
+ "internalType": "address",
1221
+ "name": "loanToken",
1222
+ "type": "address"
1223
+ },
1224
+ {
1225
+ "internalType": "address",
1226
+ "name": "collateralToken",
1227
+ "type": "address"
1228
+ },
1229
+ {
1230
+ "internalType": "address",
1231
+ "name": "oracle",
1232
+ "type": "address"
1233
+ },
1234
+ {
1235
+ "internalType": "address",
1236
+ "name": "irm",
1237
+ "type": "address"
1238
+ },
1239
+ {
1240
+ "internalType": "uint256",
1241
+ "name": "lltv",
1242
+ "type": "uint256"
1243
+ }
1244
+ ],
1245
+ "internalType": "struct MarketParams",
1246
+ "name": "marketParams",
1247
+ "type": "tuple"
1248
+ }
1249
+ ],
1250
+ "name": "acceptCap",
1251
+ "outputs": [],
1252
+ "stateMutability": "nonpayable",
1253
+ "type": "function"
1254
+ },
1255
+ {
1256
+ "inputs": [],
1257
+ "name": "acceptGuardian",
1258
+ "outputs": [],
1259
+ "stateMutability": "nonpayable",
1260
+ "type": "function"
1261
+ },
1262
+ {
1263
+ "inputs": [],
1264
+ "name": "acceptOwnership",
1265
+ "outputs": [],
1266
+ "stateMutability": "nonpayable",
1267
+ "type": "function"
1268
+ },
1269
+ {
1270
+ "inputs": [],
1271
+ "name": "acceptTimelock",
1272
+ "outputs": [],
1273
+ "stateMutability": "nonpayable",
1274
+ "type": "function"
1275
+ },
1276
+ {
1277
+ "inputs": [
1278
+ {
1279
+ "internalType": "address",
1280
+ "name": "owner",
1281
+ "type": "address"
1282
+ },
1283
+ {
1284
+ "internalType": "address",
1285
+ "name": "spender",
1286
+ "type": "address"
1287
+ }
1288
+ ],
1289
+ "name": "allowance",
1290
+ "outputs": [
1291
+ {
1292
+ "internalType": "uint256",
1293
+ "name": "",
1294
+ "type": "uint256"
1295
+ }
1296
+ ],
1297
+ "stateMutability": "view",
1298
+ "type": "function"
1299
+ },
1300
+ {
1301
+ "inputs": [
1302
+ {
1303
+ "internalType": "address",
1304
+ "name": "spender",
1305
+ "type": "address"
1306
+ },
1307
+ {
1308
+ "internalType": "uint256",
1309
+ "name": "value",
1310
+ "type": "uint256"
1311
+ }
1312
+ ],
1313
+ "name": "approve",
1314
+ "outputs": [
1315
+ {
1316
+ "internalType": "bool",
1317
+ "name": "",
1318
+ "type": "bool"
1319
+ }
1320
+ ],
1321
+ "stateMutability": "nonpayable",
1322
+ "type": "function"
1323
+ },
1324
+ {
1325
+ "inputs": [],
1326
+ "name": "asset",
1327
+ "outputs": [
1328
+ {
1329
+ "internalType": "address",
1330
+ "name": "",
1331
+ "type": "address"
1332
+ }
1333
+ ],
1334
+ "stateMutability": "view",
1335
+ "type": "function"
1336
+ },
1337
+ {
1338
+ "inputs": [
1339
+ {
1340
+ "internalType": "address",
1341
+ "name": "account",
1342
+ "type": "address"
1343
+ }
1344
+ ],
1345
+ "name": "balanceOf",
1346
+ "outputs": [
1347
+ {
1348
+ "internalType": "uint256",
1349
+ "name": "",
1350
+ "type": "uint256"
1351
+ }
1352
+ ],
1353
+ "stateMutability": "view",
1354
+ "type": "function"
1355
+ },
1356
+ {
1357
+ "inputs": [
1358
+ {
1359
+ "internalType": "Id",
1360
+ "name": "",
1361
+ "type": "bytes32"
1362
+ }
1363
+ ],
1364
+ "name": "config",
1365
+ "outputs": [
1366
+ {
1367
+ "internalType": "uint184",
1368
+ "name": "cap",
1369
+ "type": "uint184"
1370
+ },
1371
+ {
1372
+ "internalType": "bool",
1373
+ "name": "enabled",
1374
+ "type": "bool"
1375
+ },
1376
+ {
1377
+ "internalType": "uint64",
1378
+ "name": "removableAt",
1379
+ "type": "uint64"
1380
+ }
1381
+ ],
1382
+ "stateMutability": "view",
1383
+ "type": "function"
1384
+ },
1385
+ {
1386
+ "inputs": [
1387
+ {
1388
+ "internalType": "uint256",
1389
+ "name": "shares",
1390
+ "type": "uint256"
1391
+ }
1392
+ ],
1393
+ "name": "convertToAssets",
1394
+ "outputs": [
1395
+ {
1396
+ "internalType": "uint256",
1397
+ "name": "",
1398
+ "type": "uint256"
1399
+ }
1400
+ ],
1401
+ "stateMutability": "view",
1402
+ "type": "function"
1403
+ },
1404
+ {
1405
+ "inputs": [
1406
+ {
1407
+ "internalType": "uint256",
1408
+ "name": "assets",
1409
+ "type": "uint256"
1410
+ }
1411
+ ],
1412
+ "name": "convertToShares",
1413
+ "outputs": [
1414
+ {
1415
+ "internalType": "uint256",
1416
+ "name": "",
1417
+ "type": "uint256"
1418
+ }
1419
+ ],
1420
+ "stateMutability": "view",
1421
+ "type": "function"
1422
+ },
1423
+ {
1424
+ "inputs": [],
1425
+ "name": "curator",
1426
+ "outputs": [
1427
+ {
1428
+ "internalType": "address",
1429
+ "name": "",
1430
+ "type": "address"
1431
+ }
1432
+ ],
1433
+ "stateMutability": "view",
1434
+ "type": "function"
1435
+ },
1436
+ {
1437
+ "inputs": [],
1438
+ "name": "decimals",
1439
+ "outputs": [
1440
+ {
1441
+ "internalType": "uint8",
1442
+ "name": "",
1443
+ "type": "uint8"
1444
+ }
1445
+ ],
1446
+ "stateMutability": "view",
1447
+ "type": "function"
1448
+ },
1449
+ {
1450
+ "inputs": [
1451
+ {
1452
+ "internalType": "uint256",
1453
+ "name": "assets",
1454
+ "type": "uint256"
1455
+ },
1456
+ {
1457
+ "internalType": "address",
1458
+ "name": "receiver",
1459
+ "type": "address"
1460
+ }
1461
+ ],
1462
+ "name": "deposit",
1463
+ "outputs": [
1464
+ {
1465
+ "internalType": "uint256",
1466
+ "name": "shares",
1467
+ "type": "uint256"
1468
+ }
1469
+ ],
1470
+ "stateMutability": "nonpayable",
1471
+ "type": "function"
1472
+ },
1473
+ {
1474
+ "inputs": [],
1475
+ "name": "eip712Domain",
1476
+ "outputs": [
1477
+ {
1478
+ "internalType": "bytes1",
1479
+ "name": "fields",
1480
+ "type": "bytes1"
1481
+ },
1482
+ {
1483
+ "internalType": "string",
1484
+ "name": "name",
1485
+ "type": "string"
1486
+ },
1487
+ {
1488
+ "internalType": "string",
1489
+ "name": "version",
1490
+ "type": "string"
1491
+ },
1492
+ {
1493
+ "internalType": "uint256",
1494
+ "name": "chainId",
1495
+ "type": "uint256"
1496
+ },
1497
+ {
1498
+ "internalType": "address",
1499
+ "name": "verifyingContract",
1500
+ "type": "address"
1501
+ },
1502
+ {
1503
+ "internalType": "bytes32",
1504
+ "name": "salt",
1505
+ "type": "bytes32"
1506
+ },
1507
+ {
1508
+ "internalType": "uint256[]",
1509
+ "name": "extensions",
1510
+ "type": "uint256[]"
1511
+ }
1512
+ ],
1513
+ "stateMutability": "view",
1514
+ "type": "function"
1515
+ },
1516
+ {
1517
+ "inputs": [],
1518
+ "name": "fee",
1519
+ "outputs": [
1520
+ {
1521
+ "internalType": "uint96",
1522
+ "name": "",
1523
+ "type": "uint96"
1524
+ }
1525
+ ],
1526
+ "stateMutability": "view",
1527
+ "type": "function"
1528
+ },
1529
+ {
1530
+ "inputs": [],
1531
+ "name": "feeRecipient",
1532
+ "outputs": [
1533
+ {
1534
+ "internalType": "address",
1535
+ "name": "",
1536
+ "type": "address"
1537
+ }
1538
+ ],
1539
+ "stateMutability": "view",
1540
+ "type": "function"
1541
+ },
1542
+ {
1543
+ "inputs": [],
1544
+ "name": "guardian",
1545
+ "outputs": [
1546
+ {
1547
+ "internalType": "address",
1548
+ "name": "",
1549
+ "type": "address"
1550
+ }
1551
+ ],
1552
+ "stateMutability": "view",
1553
+ "type": "function"
1554
+ },
1555
+ {
1556
+ "inputs": [
1557
+ {
1558
+ "internalType": "address",
1559
+ "name": "",
1560
+ "type": "address"
1561
+ }
1562
+ ],
1563
+ "name": "isAllocator",
1564
+ "outputs": [
1565
+ {
1566
+ "internalType": "bool",
1567
+ "name": "",
1568
+ "type": "bool"
1569
+ }
1570
+ ],
1571
+ "stateMutability": "view",
1572
+ "type": "function"
1573
+ },
1574
+ {
1575
+ "inputs": [],
1576
+ "name": "lastTotalAssets",
1577
+ "outputs": [
1578
+ {
1579
+ "internalType": "uint256",
1580
+ "name": "",
1581
+ "type": "uint256"
1582
+ }
1583
+ ],
1584
+ "stateMutability": "view",
1585
+ "type": "function"
1586
+ },
1587
+ {
1588
+ "inputs": [
1589
+ {
1590
+ "internalType": "address",
1591
+ "name": "",
1592
+ "type": "address"
1593
+ }
1594
+ ],
1595
+ "name": "maxDeposit",
1596
+ "outputs": [
1597
+ {
1598
+ "internalType": "uint256",
1599
+ "name": "",
1600
+ "type": "uint256"
1601
+ }
1602
+ ],
1603
+ "stateMutability": "view",
1604
+ "type": "function"
1605
+ },
1606
+ {
1607
+ "inputs": [
1608
+ {
1609
+ "internalType": "address",
1610
+ "name": "",
1611
+ "type": "address"
1612
+ }
1613
+ ],
1614
+ "name": "maxMint",
1615
+ "outputs": [
1616
+ {
1617
+ "internalType": "uint256",
1618
+ "name": "",
1619
+ "type": "uint256"
1620
+ }
1621
+ ],
1622
+ "stateMutability": "view",
1623
+ "type": "function"
1624
+ },
1625
+ {
1626
+ "inputs": [
1627
+ {
1628
+ "internalType": "address",
1629
+ "name": "owner",
1630
+ "type": "address"
1631
+ }
1632
+ ],
1633
+ "name": "maxRedeem",
1634
+ "outputs": [
1635
+ {
1636
+ "internalType": "uint256",
1637
+ "name": "",
1638
+ "type": "uint256"
1639
+ }
1640
+ ],
1641
+ "stateMutability": "view",
1642
+ "type": "function"
1643
+ },
1644
+ {
1645
+ "inputs": [
1646
+ {
1647
+ "internalType": "address",
1648
+ "name": "owner",
1649
+ "type": "address"
1650
+ }
1651
+ ],
1652
+ "name": "maxWithdraw",
1653
+ "outputs": [
1654
+ {
1655
+ "internalType": "uint256",
1656
+ "name": "assets",
1657
+ "type": "uint256"
1658
+ }
1659
+ ],
1660
+ "stateMutability": "view",
1661
+ "type": "function"
1662
+ },
1663
+ {
1664
+ "inputs": [
1665
+ {
1666
+ "internalType": "uint256",
1667
+ "name": "shares",
1668
+ "type": "uint256"
1669
+ },
1670
+ {
1671
+ "internalType": "address",
1672
+ "name": "receiver",
1673
+ "type": "address"
1674
+ }
1675
+ ],
1676
+ "name": "mint",
1677
+ "outputs": [
1678
+ {
1679
+ "internalType": "uint256",
1680
+ "name": "assets",
1681
+ "type": "uint256"
1682
+ }
1683
+ ],
1684
+ "stateMutability": "nonpayable",
1685
+ "type": "function"
1686
+ },
1687
+ {
1688
+ "inputs": [
1689
+ {
1690
+ "internalType": "bytes[]",
1691
+ "name": "data",
1692
+ "type": "bytes[]"
1693
+ }
1694
+ ],
1695
+ "name": "multicall",
1696
+ "outputs": [
1697
+ {
1698
+ "internalType": "bytes[]",
1699
+ "name": "results",
1700
+ "type": "bytes[]"
1701
+ }
1702
+ ],
1703
+ "stateMutability": "nonpayable",
1704
+ "type": "function"
1705
+ },
1706
+ {
1707
+ "inputs": [],
1708
+ "name": "name",
1709
+ "outputs": [
1710
+ {
1711
+ "internalType": "string",
1712
+ "name": "",
1713
+ "type": "string"
1714
+ }
1715
+ ],
1716
+ "stateMutability": "view",
1717
+ "type": "function"
1718
+ },
1719
+ {
1720
+ "inputs": [
1721
+ {
1722
+ "internalType": "address",
1723
+ "name": "owner",
1724
+ "type": "address"
1725
+ }
1726
+ ],
1727
+ "name": "nonces",
1728
+ "outputs": [
1729
+ {
1730
+ "internalType": "uint256",
1731
+ "name": "",
1732
+ "type": "uint256"
1733
+ }
1734
+ ],
1735
+ "stateMutability": "view",
1736
+ "type": "function"
1737
+ },
1738
+ {
1739
+ "inputs": [],
1740
+ "name": "owner",
1741
+ "outputs": [
1742
+ {
1743
+ "internalType": "address",
1744
+ "name": "",
1745
+ "type": "address"
1746
+ }
1747
+ ],
1748
+ "stateMutability": "view",
1749
+ "type": "function"
1750
+ },
1751
+ {
1752
+ "inputs": [
1753
+ {
1754
+ "internalType": "Id",
1755
+ "name": "",
1756
+ "type": "bytes32"
1757
+ }
1758
+ ],
1759
+ "name": "pendingCap",
1760
+ "outputs": [
1761
+ {
1762
+ "internalType": "uint192",
1763
+ "name": "value",
1764
+ "type": "uint192"
1765
+ },
1766
+ {
1767
+ "internalType": "uint64",
1768
+ "name": "validAt",
1769
+ "type": "uint64"
1770
+ }
1771
+ ],
1772
+ "stateMutability": "view",
1773
+ "type": "function"
1774
+ },
1775
+ {
1776
+ "inputs": [],
1777
+ "name": "pendingGuardian",
1778
+ "outputs": [
1779
+ {
1780
+ "internalType": "address",
1781
+ "name": "value",
1782
+ "type": "address"
1783
+ },
1784
+ {
1785
+ "internalType": "uint64",
1786
+ "name": "validAt",
1787
+ "type": "uint64"
1788
+ }
1789
+ ],
1790
+ "stateMutability": "view",
1791
+ "type": "function"
1792
+ },
1793
+ {
1794
+ "inputs": [],
1795
+ "name": "pendingOwner",
1796
+ "outputs": [
1797
+ {
1798
+ "internalType": "address",
1799
+ "name": "",
1800
+ "type": "address"
1801
+ }
1802
+ ],
1803
+ "stateMutability": "view",
1804
+ "type": "function"
1805
+ },
1806
+ {
1807
+ "inputs": [],
1808
+ "name": "pendingTimelock",
1809
+ "outputs": [
1810
+ {
1811
+ "internalType": "uint192",
1812
+ "name": "value",
1813
+ "type": "uint192"
1814
+ },
1815
+ {
1816
+ "internalType": "uint64",
1817
+ "name": "validAt",
1818
+ "type": "uint64"
1819
+ }
1820
+ ],
1821
+ "stateMutability": "view",
1822
+ "type": "function"
1823
+ },
1824
+ {
1825
+ "inputs": [
1826
+ {
1827
+ "internalType": "address",
1828
+ "name": "owner",
1829
+ "type": "address"
1830
+ },
1831
+ {
1832
+ "internalType": "address",
1833
+ "name": "spender",
1834
+ "type": "address"
1835
+ },
1836
+ {
1837
+ "internalType": "uint256",
1838
+ "name": "value",
1839
+ "type": "uint256"
1840
+ },
1841
+ {
1842
+ "internalType": "uint256",
1843
+ "name": "deadline",
1844
+ "type": "uint256"
1845
+ },
1846
+ {
1847
+ "internalType": "uint8",
1848
+ "name": "v",
1849
+ "type": "uint8"
1850
+ },
1851
+ {
1852
+ "internalType": "bytes32",
1853
+ "name": "r",
1854
+ "type": "bytes32"
1855
+ },
1856
+ {
1857
+ "internalType": "bytes32",
1858
+ "name": "s",
1859
+ "type": "bytes32"
1860
+ }
1861
+ ],
1862
+ "name": "permit",
1863
+ "outputs": [],
1864
+ "stateMutability": "nonpayable",
1865
+ "type": "function"
1866
+ },
1867
+ {
1868
+ "inputs": [
1869
+ {
1870
+ "internalType": "uint256",
1871
+ "name": "assets",
1872
+ "type": "uint256"
1873
+ }
1874
+ ],
1875
+ "name": "previewDeposit",
1876
+ "outputs": [
1877
+ {
1878
+ "internalType": "uint256",
1879
+ "name": "",
1880
+ "type": "uint256"
1881
+ }
1882
+ ],
1883
+ "stateMutability": "view",
1884
+ "type": "function"
1885
+ },
1886
+ {
1887
+ "inputs": [
1888
+ {
1889
+ "internalType": "uint256",
1890
+ "name": "shares",
1891
+ "type": "uint256"
1892
+ }
1893
+ ],
1894
+ "name": "previewMint",
1895
+ "outputs": [
1896
+ {
1897
+ "internalType": "uint256",
1898
+ "name": "",
1899
+ "type": "uint256"
1900
+ }
1901
+ ],
1902
+ "stateMutability": "view",
1903
+ "type": "function"
1904
+ },
1905
+ {
1906
+ "inputs": [
1907
+ {
1908
+ "internalType": "uint256",
1909
+ "name": "shares",
1910
+ "type": "uint256"
1911
+ }
1912
+ ],
1913
+ "name": "previewRedeem",
1914
+ "outputs": [
1915
+ {
1916
+ "internalType": "uint256",
1917
+ "name": "",
1918
+ "type": "uint256"
1919
+ }
1920
+ ],
1921
+ "stateMutability": "view",
1922
+ "type": "function"
1923
+ },
1924
+ {
1925
+ "inputs": [
1926
+ {
1927
+ "internalType": "uint256",
1928
+ "name": "assets",
1929
+ "type": "uint256"
1930
+ }
1931
+ ],
1932
+ "name": "previewWithdraw",
1933
+ "outputs": [
1934
+ {
1935
+ "internalType": "uint256",
1936
+ "name": "",
1937
+ "type": "uint256"
1938
+ }
1939
+ ],
1940
+ "stateMutability": "view",
1941
+ "type": "function"
1942
+ },
1943
+ {
1944
+ "inputs": [
1945
+ {
1946
+ "components": [
1947
+ {
1948
+ "components": [
1949
+ {
1950
+ "internalType": "address",
1951
+ "name": "loanToken",
1952
+ "type": "address"
1953
+ },
1954
+ {
1955
+ "internalType": "address",
1956
+ "name": "collateralToken",
1957
+ "type": "address"
1958
+ },
1959
+ {
1960
+ "internalType": "address",
1961
+ "name": "oracle",
1962
+ "type": "address"
1963
+ },
1964
+ {
1965
+ "internalType": "address",
1966
+ "name": "irm",
1967
+ "type": "address"
1968
+ },
1969
+ {
1970
+ "internalType": "uint256",
1971
+ "name": "lltv",
1972
+ "type": "uint256"
1973
+ }
1974
+ ],
1975
+ "internalType": "struct MarketParams",
1976
+ "name": "marketParams",
1977
+ "type": "tuple"
1978
+ },
1979
+ {
1980
+ "internalType": "uint256",
1981
+ "name": "assets",
1982
+ "type": "uint256"
1983
+ }
1984
+ ],
1985
+ "internalType": "struct MarketAllocation[]",
1986
+ "name": "allocations",
1987
+ "type": "tuple[]"
1988
+ }
1989
+ ],
1990
+ "name": "reallocate",
1991
+ "outputs": [],
1992
+ "stateMutability": "nonpayable",
1993
+ "type": "function"
1994
+ },
1995
+ {
1996
+ "inputs": [
1997
+ {
1998
+ "internalType": "uint256",
1999
+ "name": "shares",
2000
+ "type": "uint256"
2001
+ },
2002
+ {
2003
+ "internalType": "address",
2004
+ "name": "receiver",
2005
+ "type": "address"
2006
+ },
2007
+ {
2008
+ "internalType": "address",
2009
+ "name": "owner",
2010
+ "type": "address"
2011
+ }
2012
+ ],
2013
+ "name": "redeem",
2014
+ "outputs": [
2015
+ {
2016
+ "internalType": "uint256",
2017
+ "name": "assets",
2018
+ "type": "uint256"
2019
+ }
2020
+ ],
2021
+ "stateMutability": "nonpayable",
2022
+ "type": "function"
2023
+ },
2024
+ {
2025
+ "inputs": [],
2026
+ "name": "renounceOwnership",
2027
+ "outputs": [],
2028
+ "stateMutability": "nonpayable",
2029
+ "type": "function"
2030
+ },
2031
+ {
2032
+ "inputs": [
2033
+ {
2034
+ "internalType": "Id",
2035
+ "name": "id",
2036
+ "type": "bytes32"
2037
+ }
2038
+ ],
2039
+ "name": "revokePendingCap",
2040
+ "outputs": [],
2041
+ "stateMutability": "nonpayable",
2042
+ "type": "function"
2043
+ },
2044
+ {
2045
+ "inputs": [],
2046
+ "name": "revokePendingGuardian",
2047
+ "outputs": [],
2048
+ "stateMutability": "nonpayable",
2049
+ "type": "function"
2050
+ },
2051
+ {
2052
+ "inputs": [
2053
+ {
2054
+ "internalType": "Id",
2055
+ "name": "id",
2056
+ "type": "bytes32"
2057
+ }
2058
+ ],
2059
+ "name": "revokePendingMarketRemoval",
2060
+ "outputs": [],
2061
+ "stateMutability": "nonpayable",
2062
+ "type": "function"
2063
+ },
2064
+ {
2065
+ "inputs": [],
2066
+ "name": "revokePendingTimelock",
2067
+ "outputs": [],
2068
+ "stateMutability": "nonpayable",
2069
+ "type": "function"
2070
+ },
2071
+ {
2072
+ "inputs": [
2073
+ {
2074
+ "internalType": "address",
2075
+ "name": "newCurator",
2076
+ "type": "address"
2077
+ }
2078
+ ],
2079
+ "name": "setCurator",
2080
+ "outputs": [],
2081
+ "stateMutability": "nonpayable",
2082
+ "type": "function"
2083
+ },
2084
+ {
2085
+ "inputs": [
2086
+ {
2087
+ "internalType": "uint256",
2088
+ "name": "newFee",
2089
+ "type": "uint256"
2090
+ }
2091
+ ],
2092
+ "name": "setFee",
2093
+ "outputs": [],
2094
+ "stateMutability": "nonpayable",
2095
+ "type": "function"
2096
+ },
2097
+ {
2098
+ "inputs": [
2099
+ {
2100
+ "internalType": "address",
2101
+ "name": "newFeeRecipient",
2102
+ "type": "address"
2103
+ }
2104
+ ],
2105
+ "name": "setFeeRecipient",
2106
+ "outputs": [],
2107
+ "stateMutability": "nonpayable",
2108
+ "type": "function"
2109
+ },
2110
+ {
2111
+ "inputs": [
2112
+ {
2113
+ "internalType": "address",
2114
+ "name": "newAllocator",
2115
+ "type": "address"
2116
+ },
2117
+ {
2118
+ "internalType": "bool",
2119
+ "name": "newIsAllocator",
2120
+ "type": "bool"
2121
+ }
2122
+ ],
2123
+ "name": "setIsAllocator",
2124
+ "outputs": [],
2125
+ "stateMutability": "nonpayable",
2126
+ "type": "function"
2127
+ },
2128
+ {
2129
+ "inputs": [
2130
+ {
2131
+ "internalType": "address",
2132
+ "name": "newSkimRecipient",
2133
+ "type": "address"
2134
+ }
2135
+ ],
2136
+ "name": "setSkimRecipient",
2137
+ "outputs": [],
2138
+ "stateMutability": "nonpayable",
2139
+ "type": "function"
2140
+ },
2141
+ {
2142
+ "inputs": [
2143
+ {
2144
+ "internalType": "Id[]",
2145
+ "name": "newSupplyQueue",
2146
+ "type": "bytes32[]"
2147
+ }
2148
+ ],
2149
+ "name": "setSupplyQueue",
2150
+ "outputs": [],
2151
+ "stateMutability": "nonpayable",
2152
+ "type": "function"
2153
+ },
2154
+ {
2155
+ "inputs": [
2156
+ {
2157
+ "internalType": "address",
2158
+ "name": "token",
2159
+ "type": "address"
2160
+ }
2161
+ ],
2162
+ "name": "skim",
2163
+ "outputs": [],
2164
+ "stateMutability": "nonpayable",
2165
+ "type": "function"
2166
+ },
2167
+ {
2168
+ "inputs": [],
2169
+ "name": "skimRecipient",
2170
+ "outputs": [
2171
+ {
2172
+ "internalType": "address",
2173
+ "name": "",
2174
+ "type": "address"
2175
+ }
2176
+ ],
2177
+ "stateMutability": "view",
2178
+ "type": "function"
2179
+ },
2180
+ {
2181
+ "inputs": [
2182
+ {
2183
+ "components": [
2184
+ {
2185
+ "internalType": "address",
2186
+ "name": "loanToken",
2187
+ "type": "address"
2188
+ },
2189
+ {
2190
+ "internalType": "address",
2191
+ "name": "collateralToken",
2192
+ "type": "address"
2193
+ },
2194
+ {
2195
+ "internalType": "address",
2196
+ "name": "oracle",
2197
+ "type": "address"
2198
+ },
2199
+ {
2200
+ "internalType": "address",
2201
+ "name": "irm",
2202
+ "type": "address"
2203
+ },
2204
+ {
2205
+ "internalType": "uint256",
2206
+ "name": "lltv",
2207
+ "type": "uint256"
2208
+ }
2209
+ ],
2210
+ "internalType": "struct MarketParams",
2211
+ "name": "marketParams",
2212
+ "type": "tuple"
2213
+ },
2214
+ {
2215
+ "internalType": "uint256",
2216
+ "name": "newSupplyCap",
2217
+ "type": "uint256"
2218
+ }
2219
+ ],
2220
+ "name": "submitCap",
2221
+ "outputs": [],
2222
+ "stateMutability": "nonpayable",
2223
+ "type": "function"
2224
+ },
2225
+ {
2226
+ "inputs": [
2227
+ {
2228
+ "internalType": "address",
2229
+ "name": "newGuardian",
2230
+ "type": "address"
2231
+ }
2232
+ ],
2233
+ "name": "submitGuardian",
2234
+ "outputs": [],
2235
+ "stateMutability": "nonpayable",
2236
+ "type": "function"
2237
+ },
2238
+ {
2239
+ "inputs": [
2240
+ {
2241
+ "components": [
2242
+ {
2243
+ "internalType": "address",
2244
+ "name": "loanToken",
2245
+ "type": "address"
2246
+ },
2247
+ {
2248
+ "internalType": "address",
2249
+ "name": "collateralToken",
2250
+ "type": "address"
2251
+ },
2252
+ {
2253
+ "internalType": "address",
2254
+ "name": "oracle",
2255
+ "type": "address"
2256
+ },
2257
+ {
2258
+ "internalType": "address",
2259
+ "name": "irm",
2260
+ "type": "address"
2261
+ },
2262
+ {
2263
+ "internalType": "uint256",
2264
+ "name": "lltv",
2265
+ "type": "uint256"
2266
+ }
2267
+ ],
2268
+ "internalType": "struct MarketParams",
2269
+ "name": "marketParams",
2270
+ "type": "tuple"
2271
+ }
2272
+ ],
2273
+ "name": "submitMarketRemoval",
2274
+ "outputs": [],
2275
+ "stateMutability": "nonpayable",
2276
+ "type": "function"
2277
+ },
2278
+ {
2279
+ "inputs": [
2280
+ {
2281
+ "internalType": "uint256",
2282
+ "name": "newTimelock",
2283
+ "type": "uint256"
2284
+ }
2285
+ ],
2286
+ "name": "submitTimelock",
2287
+ "outputs": [],
2288
+ "stateMutability": "nonpayable",
2289
+ "type": "function"
2290
+ },
2291
+ {
2292
+ "inputs": [
2293
+ {
2294
+ "internalType": "uint256",
2295
+ "name": "",
2296
+ "type": "uint256"
2297
+ }
2298
+ ],
2299
+ "name": "supplyQueue",
2300
+ "outputs": [
2301
+ {
2302
+ "internalType": "Id",
2303
+ "name": "",
2304
+ "type": "bytes32"
2305
+ }
2306
+ ],
2307
+ "stateMutability": "view",
2308
+ "type": "function"
2309
+ },
2310
+ {
2311
+ "inputs": [],
2312
+ "name": "supplyQueueLength",
2313
+ "outputs": [
2314
+ {
2315
+ "internalType": "uint256",
2316
+ "name": "",
2317
+ "type": "uint256"
2318
+ }
2319
+ ],
2320
+ "stateMutability": "view",
2321
+ "type": "function"
2322
+ },
2323
+ {
2324
+ "inputs": [],
2325
+ "name": "symbol",
2326
+ "outputs": [
2327
+ {
2328
+ "internalType": "string",
2329
+ "name": "",
2330
+ "type": "string"
2331
+ }
2332
+ ],
2333
+ "stateMutability": "view",
2334
+ "type": "function"
2335
+ },
2336
+ {
2337
+ "inputs": [],
2338
+ "name": "timelock",
2339
+ "outputs": [
2340
+ {
2341
+ "internalType": "uint256",
2342
+ "name": "",
2343
+ "type": "uint256"
2344
+ }
2345
+ ],
2346
+ "stateMutability": "view",
2347
+ "type": "function"
2348
+ },
2349
+ {
2350
+ "inputs": [],
2351
+ "name": "totalAssets",
2352
+ "outputs": [
2353
+ {
2354
+ "internalType": "uint256",
2355
+ "name": "assets",
2356
+ "type": "uint256"
2357
+ }
2358
+ ],
2359
+ "stateMutability": "view",
2360
+ "type": "function"
2361
+ },
2362
+ {
2363
+ "inputs": [],
2364
+ "name": "totalSupply",
2365
+ "outputs": [
2366
+ {
2367
+ "internalType": "uint256",
2368
+ "name": "",
2369
+ "type": "uint256"
2370
+ }
2371
+ ],
2372
+ "stateMutability": "view",
2373
+ "type": "function"
2374
+ },
2375
+ {
2376
+ "inputs": [
2377
+ {
2378
+ "internalType": "address",
2379
+ "name": "to",
2380
+ "type": "address"
2381
+ },
2382
+ {
2383
+ "internalType": "uint256",
2384
+ "name": "value",
2385
+ "type": "uint256"
2386
+ }
2387
+ ],
2388
+ "name": "transfer",
2389
+ "outputs": [
2390
+ {
2391
+ "internalType": "bool",
2392
+ "name": "",
2393
+ "type": "bool"
2394
+ }
2395
+ ],
2396
+ "stateMutability": "nonpayable",
2397
+ "type": "function"
2398
+ },
2399
+ {
2400
+ "inputs": [
2401
+ {
2402
+ "internalType": "address",
2403
+ "name": "from",
2404
+ "type": "address"
2405
+ },
2406
+ {
2407
+ "internalType": "address",
2408
+ "name": "to",
2409
+ "type": "address"
2410
+ },
2411
+ {
2412
+ "internalType": "uint256",
2413
+ "name": "value",
2414
+ "type": "uint256"
2415
+ }
2416
+ ],
2417
+ "name": "transferFrom",
2418
+ "outputs": [
2419
+ {
2420
+ "internalType": "bool",
2421
+ "name": "",
2422
+ "type": "bool"
2423
+ }
2424
+ ],
2425
+ "stateMutability": "nonpayable",
2426
+ "type": "function"
2427
+ },
2428
+ {
2429
+ "inputs": [
2430
+ {
2431
+ "internalType": "address",
2432
+ "name": "newOwner",
2433
+ "type": "address"
2434
+ }
2435
+ ],
2436
+ "name": "transferOwnership",
2437
+ "outputs": [],
2438
+ "stateMutability": "nonpayable",
2439
+ "type": "function"
2440
+ },
2441
+ {
2442
+ "inputs": [
2443
+ {
2444
+ "internalType": "uint256[]",
2445
+ "name": "indexes",
2446
+ "type": "uint256[]"
2447
+ }
2448
+ ],
2449
+ "name": "updateWithdrawQueue",
2450
+ "outputs": [],
2451
+ "stateMutability": "nonpayable",
2452
+ "type": "function"
2453
+ },
2454
+ {
2455
+ "inputs": [
2456
+ {
2457
+ "internalType": "uint256",
2458
+ "name": "assets",
2459
+ "type": "uint256"
2460
+ },
2461
+ {
2462
+ "internalType": "address",
2463
+ "name": "receiver",
2464
+ "type": "address"
2465
+ },
2466
+ {
2467
+ "internalType": "address",
2468
+ "name": "owner",
2469
+ "type": "address"
2470
+ }
2471
+ ],
2472
+ "name": "withdraw",
2473
+ "outputs": [
2474
+ {
2475
+ "internalType": "uint256",
2476
+ "name": "shares",
2477
+ "type": "uint256"
2478
+ }
2479
+ ],
2480
+ "stateMutability": "nonpayable",
2481
+ "type": "function"
2482
+ },
2483
+ {
2484
+ "inputs": [
2485
+ {
2486
+ "internalType": "uint256",
2487
+ "name": "",
2488
+ "type": "uint256"
2489
+ }
2490
+ ],
2491
+ "name": "withdrawQueue",
2492
+ "outputs": [
2493
+ {
2494
+ "internalType": "Id",
2495
+ "name": "",
2496
+ "type": "bytes32"
2497
+ }
2498
+ ],
2499
+ "stateMutability": "view",
2500
+ "type": "function"
2501
+ },
2502
+ {
2503
+ "inputs": [],
2504
+ "name": "withdrawQueueLength",
2505
+ "outputs": [
2506
+ {
2507
+ "internalType": "uint256",
2508
+ "name": "",
2509
+ "type": "uint256"
2510
+ }
2511
+ ],
2512
+ "stateMutability": "view",
2513
+ "type": "function"
2514
+ }
2515
+ ];
2516
+ /**
2517
+ * MetaMorpho Contract Class
2518
+ *
2519
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
2520
+ *
2521
+ * @example
2522
+ * ```typescript
2523
+ * import { createPublicClient, createWalletClient, http } from 'viem';
2524
+ * import { mainnet } from 'viem/chains';
2525
+ * import { MetaMorpho } from 'MetaMorpho';
2526
+ *
2527
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
2528
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
2529
+ *
2530
+ * const contract = new MetaMorpho('0x...', { publicClient, walletClient });
2531
+ *
2532
+ * // Read functions
2533
+ * const result = await contract.balanceOf('0x...');
2534
+ *
2535
+ * // Write functions
2536
+ * const hash = await contract.transfer('0x...', 1000n);
2537
+ *
2538
+ * // Simulate transactions (dry-run)
2539
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
2540
+ * console.log('Gas estimate:', simulation.request.gas);
2541
+ *
2542
+ * // Watch events
2543
+ * const unwatch = contract.watch.Transfer((event) => {
2544
+ * console.log('Transfer event:', event);
2545
+ * });
2546
+ * ```
2547
+ */
2548
+ class MetaMorpho {
2549
+ constructor(address, clients) {
2550
+ this.contractAddress = address;
2551
+ this.publicClient = clients.publicClient;
2552
+ this.contract = (0, viem_1.getContract)({
2553
+ address,
2554
+ abi: exports.MetaMorphoAbi,
2555
+ client: {
2556
+ public: clients.publicClient,
2557
+ wallet: clients.walletClient,
2558
+ },
2559
+ });
2560
+ }
2561
+ /**
2562
+ * Get the contract address
2563
+ */
2564
+ get address() {
2565
+ return this.contractAddress;
2566
+ }
2567
+ /**
2568
+ * Get the underlying viem contract instance.
2569
+ */
2570
+ getContract() {
2571
+ return this.contract;
2572
+ }
2573
+ /**
2574
+ * DECIMALS_OFFSET
2575
+ * view
2576
+ */
2577
+ async DECIMALS_OFFSET() {
2578
+ return this.contract.read.DECIMALS_OFFSET();
2579
+ }
2580
+ /**
2581
+ * DOMAIN_SEPARATOR
2582
+ * view
2583
+ */
2584
+ async DOMAIN_SEPARATOR() {
2585
+ return this.contract.read.DOMAIN_SEPARATOR();
2586
+ }
2587
+ /**
2588
+ * MORPHO
2589
+ * view
2590
+ */
2591
+ async MORPHO() {
2592
+ return this.contract.read.MORPHO();
2593
+ }
2594
+ /**
2595
+ * allowance
2596
+ * view
2597
+ */
2598
+ async allowance(owner, spender) {
2599
+ return this.contract.read.allowance([owner, spender]);
2600
+ }
2601
+ /**
2602
+ * asset
2603
+ * view
2604
+ */
2605
+ async asset() {
2606
+ return this.contract.read.asset();
2607
+ }
2608
+ /**
2609
+ * balanceOf
2610
+ * view
2611
+ */
2612
+ async balanceOf(account) {
2613
+ return this.contract.read.balanceOf([account]);
2614
+ }
2615
+ /**
2616
+ * config
2617
+ * view
2618
+ */
2619
+ async config(arg0) {
2620
+ return this.contract.read.config([arg0]);
2621
+ }
2622
+ /**
2623
+ * convertToAssets
2624
+ * view
2625
+ */
2626
+ async convertToAssets(shares) {
2627
+ return this.contract.read.convertToAssets([shares]);
2628
+ }
2629
+ /**
2630
+ * convertToShares
2631
+ * view
2632
+ */
2633
+ async convertToShares(assets) {
2634
+ return this.contract.read.convertToShares([assets]);
2635
+ }
2636
+ /**
2637
+ * curator
2638
+ * view
2639
+ */
2640
+ async curator() {
2641
+ return this.contract.read.curator();
2642
+ }
2643
+ /**
2644
+ * decimals
2645
+ * view
2646
+ */
2647
+ async decimals() {
2648
+ return this.contract.read.decimals();
2649
+ }
2650
+ /**
2651
+ * eip712Domain
2652
+ * view
2653
+ */
2654
+ async eip712Domain() {
2655
+ return this.contract.read.eip712Domain();
2656
+ }
2657
+ /**
2658
+ * fee
2659
+ * view
2660
+ */
2661
+ async fee() {
2662
+ return this.contract.read.fee();
2663
+ }
2664
+ /**
2665
+ * feeRecipient
2666
+ * view
2667
+ */
2668
+ async feeRecipient() {
2669
+ return this.contract.read.feeRecipient();
2670
+ }
2671
+ /**
2672
+ * guardian
2673
+ * view
2674
+ */
2675
+ async guardian() {
2676
+ return this.contract.read.guardian();
2677
+ }
2678
+ /**
2679
+ * isAllocator
2680
+ * view
2681
+ */
2682
+ async isAllocator(arg0) {
2683
+ return this.contract.read.isAllocator([arg0]);
2684
+ }
2685
+ /**
2686
+ * lastTotalAssets
2687
+ * view
2688
+ */
2689
+ async lastTotalAssets() {
2690
+ return this.contract.read.lastTotalAssets();
2691
+ }
2692
+ /**
2693
+ * maxDeposit
2694
+ * view
2695
+ */
2696
+ async maxDeposit(arg0) {
2697
+ return this.contract.read.maxDeposit([arg0]);
2698
+ }
2699
+ /**
2700
+ * maxMint
2701
+ * view
2702
+ */
2703
+ async maxMint(arg0) {
2704
+ return this.contract.read.maxMint([arg0]);
2705
+ }
2706
+ /**
2707
+ * maxRedeem
2708
+ * view
2709
+ */
2710
+ async maxRedeem(owner) {
2711
+ return this.contract.read.maxRedeem([owner]);
2712
+ }
2713
+ /**
2714
+ * maxWithdraw
2715
+ * view
2716
+ */
2717
+ async maxWithdraw(owner) {
2718
+ return this.contract.read.maxWithdraw([owner]);
2719
+ }
2720
+ /**
2721
+ * name
2722
+ * view
2723
+ */
2724
+ async name() {
2725
+ return this.contract.read.name();
2726
+ }
2727
+ /**
2728
+ * nonces
2729
+ * view
2730
+ */
2731
+ async nonces(owner) {
2732
+ return this.contract.read.nonces([owner]);
2733
+ }
2734
+ /**
2735
+ * owner
2736
+ * view
2737
+ */
2738
+ async owner() {
2739
+ return this.contract.read.owner();
2740
+ }
2741
+ /**
2742
+ * pendingCap
2743
+ * view
2744
+ */
2745
+ async pendingCap(arg0) {
2746
+ return this.contract.read.pendingCap([arg0]);
2747
+ }
2748
+ /**
2749
+ * pendingGuardian
2750
+ * view
2751
+ */
2752
+ async pendingGuardian() {
2753
+ return this.contract.read.pendingGuardian();
2754
+ }
2755
+ /**
2756
+ * pendingOwner
2757
+ * view
2758
+ */
2759
+ async pendingOwner() {
2760
+ return this.contract.read.pendingOwner();
2761
+ }
2762
+ /**
2763
+ * pendingTimelock
2764
+ * view
2765
+ */
2766
+ async pendingTimelock() {
2767
+ return this.contract.read.pendingTimelock();
2768
+ }
2769
+ /**
2770
+ * previewDeposit
2771
+ * view
2772
+ */
2773
+ async previewDeposit(assets) {
2774
+ return this.contract.read.previewDeposit([assets]);
2775
+ }
2776
+ /**
2777
+ * previewMint
2778
+ * view
2779
+ */
2780
+ async previewMint(shares) {
2781
+ return this.contract.read.previewMint([shares]);
2782
+ }
2783
+ /**
2784
+ * previewRedeem
2785
+ * view
2786
+ */
2787
+ async previewRedeem(shares) {
2788
+ return this.contract.read.previewRedeem([shares]);
2789
+ }
2790
+ /**
2791
+ * previewWithdraw
2792
+ * view
2793
+ */
2794
+ async previewWithdraw(assets) {
2795
+ return this.contract.read.previewWithdraw([assets]);
2796
+ }
2797
+ /**
2798
+ * skimRecipient
2799
+ * view
2800
+ */
2801
+ async skimRecipient() {
2802
+ return this.contract.read.skimRecipient();
2803
+ }
2804
+ /**
2805
+ * supplyQueue
2806
+ * view
2807
+ */
2808
+ async supplyQueue(arg0) {
2809
+ return this.contract.read.supplyQueue([arg0]);
2810
+ }
2811
+ /**
2812
+ * supplyQueueLength
2813
+ * view
2814
+ */
2815
+ async supplyQueueLength() {
2816
+ return this.contract.read.supplyQueueLength();
2817
+ }
2818
+ /**
2819
+ * symbol
2820
+ * view
2821
+ */
2822
+ async symbol() {
2823
+ return this.contract.read.symbol();
2824
+ }
2825
+ /**
2826
+ * timelock
2827
+ * view
2828
+ */
2829
+ async timelock() {
2830
+ return this.contract.read.timelock();
2831
+ }
2832
+ /**
2833
+ * totalAssets
2834
+ * view
2835
+ */
2836
+ async totalAssets() {
2837
+ return this.contract.read.totalAssets();
2838
+ }
2839
+ /**
2840
+ * totalSupply
2841
+ * view
2842
+ */
2843
+ async totalSupply() {
2844
+ return this.contract.read.totalSupply();
2845
+ }
2846
+ /**
2847
+ * withdrawQueue
2848
+ * view
2849
+ */
2850
+ async withdrawQueue(arg0) {
2851
+ return this.contract.read.withdrawQueue([arg0]);
2852
+ }
2853
+ /**
2854
+ * withdrawQueueLength
2855
+ * view
2856
+ */
2857
+ async withdrawQueueLength() {
2858
+ return this.contract.read.withdrawQueueLength();
2859
+ }
2860
+ /**
2861
+ * acceptCap
2862
+ * nonpayable
2863
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2864
+ */
2865
+ async acceptCap(marketParams, options) {
2866
+ if (!this.contract.write) {
2867
+ throw new Error('Wallet client is required for write operations');
2868
+ }
2869
+ return this.contract.write.acceptCap([marketParams], options);
2870
+ }
2871
+ /**
2872
+ * acceptGuardian
2873
+ * nonpayable
2874
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2875
+ */
2876
+ async acceptGuardian(options) {
2877
+ if (!this.contract.write) {
2878
+ throw new Error('Wallet client is required for write operations');
2879
+ }
2880
+ return this.contract.write.acceptGuardian(options);
2881
+ }
2882
+ /**
2883
+ * acceptOwnership
2884
+ * nonpayable
2885
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2886
+ */
2887
+ async acceptOwnership(options) {
2888
+ if (!this.contract.write) {
2889
+ throw new Error('Wallet client is required for write operations');
2890
+ }
2891
+ return this.contract.write.acceptOwnership(options);
2892
+ }
2893
+ /**
2894
+ * acceptTimelock
2895
+ * nonpayable
2896
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2897
+ */
2898
+ async acceptTimelock(options) {
2899
+ if (!this.contract.write) {
2900
+ throw new Error('Wallet client is required for write operations');
2901
+ }
2902
+ return this.contract.write.acceptTimelock(options);
2903
+ }
2904
+ /**
2905
+ * approve
2906
+ * nonpayable
2907
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2908
+ */
2909
+ async approve(spender, value, options) {
2910
+ if (!this.contract.write) {
2911
+ throw new Error('Wallet client is required for write operations');
2912
+ }
2913
+ return this.contract.write.approve([spender, value], options);
2914
+ }
2915
+ /**
2916
+ * deposit
2917
+ * nonpayable
2918
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2919
+ */
2920
+ async deposit(assets, receiver, options) {
2921
+ if (!this.contract.write) {
2922
+ throw new Error('Wallet client is required for write operations');
2923
+ }
2924
+ return this.contract.write.deposit([assets, receiver], options);
2925
+ }
2926
+ /**
2927
+ * mint
2928
+ * nonpayable
2929
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2930
+ */
2931
+ async mint(shares, receiver, options) {
2932
+ if (!this.contract.write) {
2933
+ throw new Error('Wallet client is required for write operations');
2934
+ }
2935
+ return this.contract.write.mint([shares, receiver], options);
2936
+ }
2937
+ /**
2938
+ * multicall
2939
+ * nonpayable
2940
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2941
+ */
2942
+ async multicall(data, options) {
2943
+ if (!this.contract.write) {
2944
+ throw new Error('Wallet client is required for write operations');
2945
+ }
2946
+ return this.contract.write.multicall([data], options);
2947
+ }
2948
+ /**
2949
+ * permit
2950
+ * nonpayable
2951
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2952
+ */
2953
+ async permit(owner, spender, value, deadline, v, r, s, options) {
2954
+ if (!this.contract.write) {
2955
+ throw new Error('Wallet client is required for write operations');
2956
+ }
2957
+ return this.contract.write.permit([owner, spender, value, deadline, v, r, s], options);
2958
+ }
2959
+ /**
2960
+ * reallocate
2961
+ * nonpayable
2962
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2963
+ */
2964
+ async reallocate(allocations, options) {
2965
+ if (!this.contract.write) {
2966
+ throw new Error('Wallet client is required for write operations');
2967
+ }
2968
+ return this.contract.write.reallocate([allocations], options);
2969
+ }
2970
+ /**
2971
+ * redeem
2972
+ * nonpayable
2973
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2974
+ */
2975
+ async redeem(shares, receiver, owner, options) {
2976
+ if (!this.contract.write) {
2977
+ throw new Error('Wallet client is required for write operations');
2978
+ }
2979
+ return this.contract.write.redeem([shares, receiver, owner], options);
2980
+ }
2981
+ /**
2982
+ * renounceOwnership
2983
+ * nonpayable
2984
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2985
+ */
2986
+ async renounceOwnership(options) {
2987
+ if (!this.contract.write) {
2988
+ throw new Error('Wallet client is required for write operations');
2989
+ }
2990
+ return this.contract.write.renounceOwnership(options);
2991
+ }
2992
+ /**
2993
+ * revokePendingCap
2994
+ * nonpayable
2995
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2996
+ */
2997
+ async revokePendingCap(id, options) {
2998
+ if (!this.contract.write) {
2999
+ throw new Error('Wallet client is required for write operations');
3000
+ }
3001
+ return this.contract.write.revokePendingCap([id], options);
3002
+ }
3003
+ /**
3004
+ * revokePendingGuardian
3005
+ * nonpayable
3006
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3007
+ */
3008
+ async revokePendingGuardian(options) {
3009
+ if (!this.contract.write) {
3010
+ throw new Error('Wallet client is required for write operations');
3011
+ }
3012
+ return this.contract.write.revokePendingGuardian(options);
3013
+ }
3014
+ /**
3015
+ * revokePendingMarketRemoval
3016
+ * nonpayable
3017
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3018
+ */
3019
+ async revokePendingMarketRemoval(id, options) {
3020
+ if (!this.contract.write) {
3021
+ throw new Error('Wallet client is required for write operations');
3022
+ }
3023
+ return this.contract.write.revokePendingMarketRemoval([id], options);
3024
+ }
3025
+ /**
3026
+ * revokePendingTimelock
3027
+ * nonpayable
3028
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3029
+ */
3030
+ async revokePendingTimelock(options) {
3031
+ if (!this.contract.write) {
3032
+ throw new Error('Wallet client is required for write operations');
3033
+ }
3034
+ return this.contract.write.revokePendingTimelock(options);
3035
+ }
3036
+ /**
3037
+ * setCurator
3038
+ * nonpayable
3039
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3040
+ */
3041
+ async setCurator(newCurator, options) {
3042
+ if (!this.contract.write) {
3043
+ throw new Error('Wallet client is required for write operations');
3044
+ }
3045
+ return this.contract.write.setCurator([newCurator], options);
3046
+ }
3047
+ /**
3048
+ * setFee
3049
+ * nonpayable
3050
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3051
+ */
3052
+ async setFee(newFee, options) {
3053
+ if (!this.contract.write) {
3054
+ throw new Error('Wallet client is required for write operations');
3055
+ }
3056
+ return this.contract.write.setFee([newFee], options);
3057
+ }
3058
+ /**
3059
+ * setFeeRecipient
3060
+ * nonpayable
3061
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3062
+ */
3063
+ async setFeeRecipient(newFeeRecipient, options) {
3064
+ if (!this.contract.write) {
3065
+ throw new Error('Wallet client is required for write operations');
3066
+ }
3067
+ return this.contract.write.setFeeRecipient([newFeeRecipient], options);
3068
+ }
3069
+ /**
3070
+ * setIsAllocator
3071
+ * nonpayable
3072
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3073
+ */
3074
+ async setIsAllocator(newAllocator, newIsAllocator, options) {
3075
+ if (!this.contract.write) {
3076
+ throw new Error('Wallet client is required for write operations');
3077
+ }
3078
+ return this.contract.write.setIsAllocator([newAllocator, newIsAllocator], options);
3079
+ }
3080
+ /**
3081
+ * setSkimRecipient
3082
+ * nonpayable
3083
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3084
+ */
3085
+ async setSkimRecipient(newSkimRecipient, options) {
3086
+ if (!this.contract.write) {
3087
+ throw new Error('Wallet client is required for write operations');
3088
+ }
3089
+ return this.contract.write.setSkimRecipient([newSkimRecipient], options);
3090
+ }
3091
+ /**
3092
+ * setSupplyQueue
3093
+ * nonpayable
3094
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3095
+ */
3096
+ async setSupplyQueue(newSupplyQueue, options) {
3097
+ if (!this.contract.write) {
3098
+ throw new Error('Wallet client is required for write operations');
3099
+ }
3100
+ return this.contract.write.setSupplyQueue([newSupplyQueue], options);
3101
+ }
3102
+ /**
3103
+ * skim
3104
+ * nonpayable
3105
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3106
+ */
3107
+ async skim(token, options) {
3108
+ if (!this.contract.write) {
3109
+ throw new Error('Wallet client is required for write operations');
3110
+ }
3111
+ return this.contract.write.skim([token], options);
3112
+ }
3113
+ /**
3114
+ * submitCap
3115
+ * nonpayable
3116
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3117
+ */
3118
+ async submitCap(marketParams, newSupplyCap, options) {
3119
+ if (!this.contract.write) {
3120
+ throw new Error('Wallet client is required for write operations');
3121
+ }
3122
+ return this.contract.write.submitCap([marketParams, newSupplyCap], options);
3123
+ }
3124
+ /**
3125
+ * submitGuardian
3126
+ * nonpayable
3127
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3128
+ */
3129
+ async submitGuardian(newGuardian, options) {
3130
+ if (!this.contract.write) {
3131
+ throw new Error('Wallet client is required for write operations');
3132
+ }
3133
+ return this.contract.write.submitGuardian([newGuardian], options);
3134
+ }
3135
+ /**
3136
+ * submitMarketRemoval
3137
+ * nonpayable
3138
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3139
+ */
3140
+ async submitMarketRemoval(marketParams, options) {
3141
+ if (!this.contract.write) {
3142
+ throw new Error('Wallet client is required for write operations');
3143
+ }
3144
+ return this.contract.write.submitMarketRemoval([marketParams], options);
3145
+ }
3146
+ /**
3147
+ * submitTimelock
3148
+ * nonpayable
3149
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3150
+ */
3151
+ async submitTimelock(newTimelock, options) {
3152
+ if (!this.contract.write) {
3153
+ throw new Error('Wallet client is required for write operations');
3154
+ }
3155
+ return this.contract.write.submitTimelock([newTimelock], options);
3156
+ }
3157
+ /**
3158
+ * transfer
3159
+ * nonpayable
3160
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3161
+ */
3162
+ async transfer(to, value, options) {
3163
+ if (!this.contract.write) {
3164
+ throw new Error('Wallet client is required for write operations');
3165
+ }
3166
+ return this.contract.write.transfer([to, value], options);
3167
+ }
3168
+ /**
3169
+ * transferFrom
3170
+ * nonpayable
3171
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3172
+ */
3173
+ async transferFrom(from, to, value, options) {
3174
+ if (!this.contract.write) {
3175
+ throw new Error('Wallet client is required for write operations');
3176
+ }
3177
+ return this.contract.write.transferFrom([from, to, value], options);
3178
+ }
3179
+ /**
3180
+ * transferOwnership
3181
+ * nonpayable
3182
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3183
+ */
3184
+ async transferOwnership(newOwner, options) {
3185
+ if (!this.contract.write) {
3186
+ throw new Error('Wallet client is required for write operations');
3187
+ }
3188
+ return this.contract.write.transferOwnership([newOwner], options);
3189
+ }
3190
+ /**
3191
+ * updateWithdrawQueue
3192
+ * nonpayable
3193
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3194
+ */
3195
+ async updateWithdrawQueue(indexes, options) {
3196
+ if (!this.contract.write) {
3197
+ throw new Error('Wallet client is required for write operations');
3198
+ }
3199
+ return this.contract.write.updateWithdrawQueue([indexes], options);
3200
+ }
3201
+ /**
3202
+ * withdraw
3203
+ * nonpayable
3204
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3205
+ */
3206
+ async withdraw(assets, receiver, owner, options) {
3207
+ if (!this.contract.write) {
3208
+ throw new Error('Wallet client is required for write operations');
3209
+ }
3210
+ return this.contract.write.withdraw([assets, receiver, owner], options);
3211
+ }
3212
+ /**
3213
+ * Simulate contract write operations (dry-run without sending transaction)
3214
+ *
3215
+ * @example
3216
+ * const result = await contract.simulate.transfer('0x...', 1000n);
3217
+ * console.log('Gas estimate:', result.request.gas);
3218
+ * console.log('Would succeed:', result.result);
3219
+ */
3220
+ get simulate() {
3221
+ const contract = this.contract;
3222
+ if (!contract.simulate) {
3223
+ throw new Error('Public client is required for simulation');
3224
+ }
3225
+ return {
3226
+ /**
3227
+ * Simulate acceptCap
3228
+ * Returns gas estimate and result without sending transaction
3229
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3230
+ */
3231
+ async acceptCap(marketParams, options) {
3232
+ return contract.simulate.acceptCap([marketParams], options);
3233
+ },
3234
+ /**
3235
+ * Simulate acceptGuardian
3236
+ * Returns gas estimate and result without sending transaction
3237
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3238
+ */
3239
+ async acceptGuardian(options) {
3240
+ return contract.simulate.acceptGuardian(options);
3241
+ },
3242
+ /**
3243
+ * Simulate acceptOwnership
3244
+ * Returns gas estimate and result without sending transaction
3245
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3246
+ */
3247
+ async acceptOwnership(options) {
3248
+ return contract.simulate.acceptOwnership(options);
3249
+ },
3250
+ /**
3251
+ * Simulate acceptTimelock
3252
+ * Returns gas estimate and result without sending transaction
3253
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3254
+ */
3255
+ async acceptTimelock(options) {
3256
+ return contract.simulate.acceptTimelock(options);
3257
+ },
3258
+ /**
3259
+ * Simulate approve
3260
+ * Returns gas estimate and result without sending transaction
3261
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3262
+ */
3263
+ async approve(spender, value, options) {
3264
+ return contract.simulate.approve([spender, value], options);
3265
+ },
3266
+ /**
3267
+ * Simulate deposit
3268
+ * Returns gas estimate and result without sending transaction
3269
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3270
+ */
3271
+ async deposit(assets, receiver, options) {
3272
+ return contract.simulate.deposit([assets, receiver], options);
3273
+ },
3274
+ /**
3275
+ * Simulate mint
3276
+ * Returns gas estimate and result without sending transaction
3277
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3278
+ */
3279
+ async mint(shares, receiver, options) {
3280
+ return contract.simulate.mint([shares, receiver], options);
3281
+ },
3282
+ /**
3283
+ * Simulate multicall
3284
+ * Returns gas estimate and result without sending transaction
3285
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3286
+ */
3287
+ async multicall(data, options) {
3288
+ return contract.simulate.multicall([data], options);
3289
+ },
3290
+ /**
3291
+ * Simulate permit
3292
+ * Returns gas estimate and result without sending transaction
3293
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3294
+ */
3295
+ async permit(owner, spender, value, deadline, v, r, s, options) {
3296
+ return contract.simulate.permit([owner, spender, value, deadline, v, r, s], options);
3297
+ },
3298
+ /**
3299
+ * Simulate reallocate
3300
+ * Returns gas estimate and result without sending transaction
3301
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3302
+ */
3303
+ async reallocate(allocations, options) {
3304
+ return contract.simulate.reallocate([allocations], options);
3305
+ },
3306
+ /**
3307
+ * Simulate redeem
3308
+ * Returns gas estimate and result without sending transaction
3309
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3310
+ */
3311
+ async redeem(shares, receiver, owner, options) {
3312
+ return contract.simulate.redeem([shares, receiver, owner], options);
3313
+ },
3314
+ /**
3315
+ * Simulate renounceOwnership
3316
+ * Returns gas estimate and result without sending transaction
3317
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3318
+ */
3319
+ async renounceOwnership(options) {
3320
+ return contract.simulate.renounceOwnership(options);
3321
+ },
3322
+ /**
3323
+ * Simulate revokePendingCap
3324
+ * Returns gas estimate and result without sending transaction
3325
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3326
+ */
3327
+ async revokePendingCap(id, options) {
3328
+ return contract.simulate.revokePendingCap([id], options);
3329
+ },
3330
+ /**
3331
+ * Simulate revokePendingGuardian
3332
+ * Returns gas estimate and result without sending transaction
3333
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3334
+ */
3335
+ async revokePendingGuardian(options) {
3336
+ return contract.simulate.revokePendingGuardian(options);
3337
+ },
3338
+ /**
3339
+ * Simulate revokePendingMarketRemoval
3340
+ * Returns gas estimate and result without sending transaction
3341
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3342
+ */
3343
+ async revokePendingMarketRemoval(id, options) {
3344
+ return contract.simulate.revokePendingMarketRemoval([id], options);
3345
+ },
3346
+ /**
3347
+ * Simulate revokePendingTimelock
3348
+ * Returns gas estimate and result without sending transaction
3349
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3350
+ */
3351
+ async revokePendingTimelock(options) {
3352
+ return contract.simulate.revokePendingTimelock(options);
3353
+ },
3354
+ /**
3355
+ * Simulate setCurator
3356
+ * Returns gas estimate and result without sending transaction
3357
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3358
+ */
3359
+ async setCurator(newCurator, options) {
3360
+ return contract.simulate.setCurator([newCurator], options);
3361
+ },
3362
+ /**
3363
+ * Simulate setFee
3364
+ * Returns gas estimate and result without sending transaction
3365
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3366
+ */
3367
+ async setFee(newFee, options) {
3368
+ return contract.simulate.setFee([newFee], options);
3369
+ },
3370
+ /**
3371
+ * Simulate setFeeRecipient
3372
+ * Returns gas estimate and result without sending transaction
3373
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3374
+ */
3375
+ async setFeeRecipient(newFeeRecipient, options) {
3376
+ return contract.simulate.setFeeRecipient([newFeeRecipient], options);
3377
+ },
3378
+ /**
3379
+ * Simulate setIsAllocator
3380
+ * Returns gas estimate and result without sending transaction
3381
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3382
+ */
3383
+ async setIsAllocator(newAllocator, newIsAllocator, options) {
3384
+ return contract.simulate.setIsAllocator([newAllocator, newIsAllocator], options);
3385
+ },
3386
+ /**
3387
+ * Simulate setSkimRecipient
3388
+ * Returns gas estimate and result without sending transaction
3389
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3390
+ */
3391
+ async setSkimRecipient(newSkimRecipient, options) {
3392
+ return contract.simulate.setSkimRecipient([newSkimRecipient], options);
3393
+ },
3394
+ /**
3395
+ * Simulate setSupplyQueue
3396
+ * Returns gas estimate and result without sending transaction
3397
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3398
+ */
3399
+ async setSupplyQueue(newSupplyQueue, options) {
3400
+ return contract.simulate.setSupplyQueue([newSupplyQueue], options);
3401
+ },
3402
+ /**
3403
+ * Simulate skim
3404
+ * Returns gas estimate and result without sending transaction
3405
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3406
+ */
3407
+ async skim(token, options) {
3408
+ return contract.simulate.skim([token], options);
3409
+ },
3410
+ /**
3411
+ * Simulate submitCap
3412
+ * Returns gas estimate and result without sending transaction
3413
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3414
+ */
3415
+ async submitCap(marketParams, newSupplyCap, options) {
3416
+ return contract.simulate.submitCap([marketParams, newSupplyCap], options);
3417
+ },
3418
+ /**
3419
+ * Simulate submitGuardian
3420
+ * Returns gas estimate and result without sending transaction
3421
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3422
+ */
3423
+ async submitGuardian(newGuardian, options) {
3424
+ return contract.simulate.submitGuardian([newGuardian], options);
3425
+ },
3426
+ /**
3427
+ * Simulate submitMarketRemoval
3428
+ * Returns gas estimate and result without sending transaction
3429
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3430
+ */
3431
+ async submitMarketRemoval(marketParams, options) {
3432
+ return contract.simulate.submitMarketRemoval([marketParams], options);
3433
+ },
3434
+ /**
3435
+ * Simulate submitTimelock
3436
+ * Returns gas estimate and result without sending transaction
3437
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3438
+ */
3439
+ async submitTimelock(newTimelock, options) {
3440
+ return contract.simulate.submitTimelock([newTimelock], options);
3441
+ },
3442
+ /**
3443
+ * Simulate transfer
3444
+ * Returns gas estimate and result without sending transaction
3445
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3446
+ */
3447
+ async transfer(to, value, options) {
3448
+ return contract.simulate.transfer([to, value], options);
3449
+ },
3450
+ /**
3451
+ * Simulate transferFrom
3452
+ * Returns gas estimate and result without sending transaction
3453
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3454
+ */
3455
+ async transferFrom(from, to, value, options) {
3456
+ return contract.simulate.transferFrom([from, to, value], options);
3457
+ },
3458
+ /**
3459
+ * Simulate transferOwnership
3460
+ * Returns gas estimate and result without sending transaction
3461
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3462
+ */
3463
+ async transferOwnership(newOwner, options) {
3464
+ return contract.simulate.transferOwnership([newOwner], options);
3465
+ },
3466
+ /**
3467
+ * Simulate updateWithdrawQueue
3468
+ * Returns gas estimate and result without sending transaction
3469
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3470
+ */
3471
+ async updateWithdrawQueue(indexes, options) {
3472
+ return contract.simulate.updateWithdrawQueue([indexes], options);
3473
+ },
3474
+ /**
3475
+ * Simulate withdraw
3476
+ * Returns gas estimate and result without sending transaction
3477
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
3478
+ */
3479
+ async withdraw(assets, receiver, owner, options) {
3480
+ return contract.simulate.withdraw([assets, receiver, owner], options);
3481
+ }
3482
+ };
3483
+ }
3484
+ /**
3485
+ * Watch contract events
3486
+ *
3487
+ * @example
3488
+ * // Watch all Transfer events
3489
+ * const unwatch = contract.watch.Transfer((event) => {
3490
+ * console.log('Transfer:', event);
3491
+ * });
3492
+ *
3493
+ * // Stop watching
3494
+ * unwatch();
3495
+ */
3496
+ get watch() {
3497
+ return {
3498
+ /**
3499
+ * Watch AccrueInterest events
3500
+ * @param callback Function to call when event is emitted
3501
+ * @param filter Optional filter for indexed parameters
3502
+ * @returns Unwatch function to stop listening
3503
+ */
3504
+ AccrueInterest: (callback) => {
3505
+ return this.publicClient.watchContractEvent({
3506
+ address: this.contractAddress,
3507
+ abi: exports.MetaMorphoAbi,
3508
+ eventName: 'AccrueInterest',
3509
+ onLogs: (logs) => {
3510
+ logs.forEach((log) => {
3511
+ callback(log.args);
3512
+ });
3513
+ },
3514
+ });
3515
+ },
3516
+ /**
3517
+ * Watch Approval events
3518
+ * @param callback Function to call when event is emitted
3519
+ * @param filter Optional filter for indexed parameters
3520
+ * @returns Unwatch function to stop listening
3521
+ */
3522
+ Approval: (callback, filter) => {
3523
+ return this.publicClient.watchContractEvent({
3524
+ address: this.contractAddress,
3525
+ abi: exports.MetaMorphoAbi,
3526
+ eventName: 'Approval',
3527
+ args: filter,
3528
+ onLogs: (logs) => {
3529
+ logs.forEach((log) => {
3530
+ callback(log.args);
3531
+ });
3532
+ },
3533
+ });
3534
+ },
3535
+ /**
3536
+ * Watch Deposit events
3537
+ * @param callback Function to call when event is emitted
3538
+ * @param filter Optional filter for indexed parameters
3539
+ * @returns Unwatch function to stop listening
3540
+ */
3541
+ Deposit: (callback, filter) => {
3542
+ return this.publicClient.watchContractEvent({
3543
+ address: this.contractAddress,
3544
+ abi: exports.MetaMorphoAbi,
3545
+ eventName: 'Deposit',
3546
+ args: filter,
3547
+ onLogs: (logs) => {
3548
+ logs.forEach((log) => {
3549
+ callback(log.args);
3550
+ });
3551
+ },
3552
+ });
3553
+ },
3554
+ /**
3555
+ * Watch EIP712DomainChanged events
3556
+ * @param callback Function to call when event is emitted
3557
+ * @param filter Optional filter for indexed parameters
3558
+ * @returns Unwatch function to stop listening
3559
+ */
3560
+ EIP712DomainChanged: (callback) => {
3561
+ return this.publicClient.watchContractEvent({
3562
+ address: this.contractAddress,
3563
+ abi: exports.MetaMorphoAbi,
3564
+ eventName: 'EIP712DomainChanged',
3565
+ onLogs: (logs) => {
3566
+ logs.forEach((log) => {
3567
+ callback(log.args);
3568
+ });
3569
+ },
3570
+ });
3571
+ },
3572
+ /**
3573
+ * Watch OwnershipTransferStarted events
3574
+ * @param callback Function to call when event is emitted
3575
+ * @param filter Optional filter for indexed parameters
3576
+ * @returns Unwatch function to stop listening
3577
+ */
3578
+ OwnershipTransferStarted: (callback, filter) => {
3579
+ return this.publicClient.watchContractEvent({
3580
+ address: this.contractAddress,
3581
+ abi: exports.MetaMorphoAbi,
3582
+ eventName: 'OwnershipTransferStarted',
3583
+ args: filter,
3584
+ onLogs: (logs) => {
3585
+ logs.forEach((log) => {
3586
+ callback(log.args);
3587
+ });
3588
+ },
3589
+ });
3590
+ },
3591
+ /**
3592
+ * Watch OwnershipTransferred events
3593
+ * @param callback Function to call when event is emitted
3594
+ * @param filter Optional filter for indexed parameters
3595
+ * @returns Unwatch function to stop listening
3596
+ */
3597
+ OwnershipTransferred: (callback, filter) => {
3598
+ return this.publicClient.watchContractEvent({
3599
+ address: this.contractAddress,
3600
+ abi: exports.MetaMorphoAbi,
3601
+ eventName: 'OwnershipTransferred',
3602
+ args: filter,
3603
+ onLogs: (logs) => {
3604
+ logs.forEach((log) => {
3605
+ callback(log.args);
3606
+ });
3607
+ },
3608
+ });
3609
+ },
3610
+ /**
3611
+ * Watch ReallocateSupply events
3612
+ * @param callback Function to call when event is emitted
3613
+ * @param filter Optional filter for indexed parameters
3614
+ * @returns Unwatch function to stop listening
3615
+ */
3616
+ ReallocateSupply: (callback, filter) => {
3617
+ return this.publicClient.watchContractEvent({
3618
+ address: this.contractAddress,
3619
+ abi: exports.MetaMorphoAbi,
3620
+ eventName: 'ReallocateSupply',
3621
+ args: filter,
3622
+ onLogs: (logs) => {
3623
+ logs.forEach((log) => {
3624
+ callback(log.args);
3625
+ });
3626
+ },
3627
+ });
3628
+ },
3629
+ /**
3630
+ * Watch ReallocateWithdraw events
3631
+ * @param callback Function to call when event is emitted
3632
+ * @param filter Optional filter for indexed parameters
3633
+ * @returns Unwatch function to stop listening
3634
+ */
3635
+ ReallocateWithdraw: (callback, filter) => {
3636
+ return this.publicClient.watchContractEvent({
3637
+ address: this.contractAddress,
3638
+ abi: exports.MetaMorphoAbi,
3639
+ eventName: 'ReallocateWithdraw',
3640
+ args: filter,
3641
+ onLogs: (logs) => {
3642
+ logs.forEach((log) => {
3643
+ callback(log.args);
3644
+ });
3645
+ },
3646
+ });
3647
+ },
3648
+ /**
3649
+ * Watch RevokePendingCap events
3650
+ * @param callback Function to call when event is emitted
3651
+ * @param filter Optional filter for indexed parameters
3652
+ * @returns Unwatch function to stop listening
3653
+ */
3654
+ RevokePendingCap: (callback, filter) => {
3655
+ return this.publicClient.watchContractEvent({
3656
+ address: this.contractAddress,
3657
+ abi: exports.MetaMorphoAbi,
3658
+ eventName: 'RevokePendingCap',
3659
+ args: filter,
3660
+ onLogs: (logs) => {
3661
+ logs.forEach((log) => {
3662
+ callback(log.args);
3663
+ });
3664
+ },
3665
+ });
3666
+ },
3667
+ /**
3668
+ * Watch RevokePendingGuardian events
3669
+ * @param callback Function to call when event is emitted
3670
+ * @param filter Optional filter for indexed parameters
3671
+ * @returns Unwatch function to stop listening
3672
+ */
3673
+ RevokePendingGuardian: (callback, filter) => {
3674
+ return this.publicClient.watchContractEvent({
3675
+ address: this.contractAddress,
3676
+ abi: exports.MetaMorphoAbi,
3677
+ eventName: 'RevokePendingGuardian',
3678
+ args: filter,
3679
+ onLogs: (logs) => {
3680
+ logs.forEach((log) => {
3681
+ callback(log.args);
3682
+ });
3683
+ },
3684
+ });
3685
+ },
3686
+ /**
3687
+ * Watch RevokePendingMarketRemoval events
3688
+ * @param callback Function to call when event is emitted
3689
+ * @param filter Optional filter for indexed parameters
3690
+ * @returns Unwatch function to stop listening
3691
+ */
3692
+ RevokePendingMarketRemoval: (callback, filter) => {
3693
+ return this.publicClient.watchContractEvent({
3694
+ address: this.contractAddress,
3695
+ abi: exports.MetaMorphoAbi,
3696
+ eventName: 'RevokePendingMarketRemoval',
3697
+ args: filter,
3698
+ onLogs: (logs) => {
3699
+ logs.forEach((log) => {
3700
+ callback(log.args);
3701
+ });
3702
+ },
3703
+ });
3704
+ },
3705
+ /**
3706
+ * Watch RevokePendingTimelock events
3707
+ * @param callback Function to call when event is emitted
3708
+ * @param filter Optional filter for indexed parameters
3709
+ * @returns Unwatch function to stop listening
3710
+ */
3711
+ RevokePendingTimelock: (callback, filter) => {
3712
+ return this.publicClient.watchContractEvent({
3713
+ address: this.contractAddress,
3714
+ abi: exports.MetaMorphoAbi,
3715
+ eventName: 'RevokePendingTimelock',
3716
+ args: filter,
3717
+ onLogs: (logs) => {
3718
+ logs.forEach((log) => {
3719
+ callback(log.args);
3720
+ });
3721
+ },
3722
+ });
3723
+ },
3724
+ /**
3725
+ * Watch SetCap events
3726
+ * @param callback Function to call when event is emitted
3727
+ * @param filter Optional filter for indexed parameters
3728
+ * @returns Unwatch function to stop listening
3729
+ */
3730
+ SetCap: (callback, filter) => {
3731
+ return this.publicClient.watchContractEvent({
3732
+ address: this.contractAddress,
3733
+ abi: exports.MetaMorphoAbi,
3734
+ eventName: 'SetCap',
3735
+ args: filter,
3736
+ onLogs: (logs) => {
3737
+ logs.forEach((log) => {
3738
+ callback(log.args);
3739
+ });
3740
+ },
3741
+ });
3742
+ },
3743
+ /**
3744
+ * Watch SetCurator events
3745
+ * @param callback Function to call when event is emitted
3746
+ * @param filter Optional filter for indexed parameters
3747
+ * @returns Unwatch function to stop listening
3748
+ */
3749
+ SetCurator: (callback, filter) => {
3750
+ return this.publicClient.watchContractEvent({
3751
+ address: this.contractAddress,
3752
+ abi: exports.MetaMorphoAbi,
3753
+ eventName: 'SetCurator',
3754
+ args: filter,
3755
+ onLogs: (logs) => {
3756
+ logs.forEach((log) => {
3757
+ callback(log.args);
3758
+ });
3759
+ },
3760
+ });
3761
+ },
3762
+ /**
3763
+ * Watch SetFee events
3764
+ * @param callback Function to call when event is emitted
3765
+ * @param filter Optional filter for indexed parameters
3766
+ * @returns Unwatch function to stop listening
3767
+ */
3768
+ SetFee: (callback, filter) => {
3769
+ return this.publicClient.watchContractEvent({
3770
+ address: this.contractAddress,
3771
+ abi: exports.MetaMorphoAbi,
3772
+ eventName: 'SetFee',
3773
+ args: filter,
3774
+ onLogs: (logs) => {
3775
+ logs.forEach((log) => {
3776
+ callback(log.args);
3777
+ });
3778
+ },
3779
+ });
3780
+ },
3781
+ /**
3782
+ * Watch SetFeeRecipient events
3783
+ * @param callback Function to call when event is emitted
3784
+ * @param filter Optional filter for indexed parameters
3785
+ * @returns Unwatch function to stop listening
3786
+ */
3787
+ SetFeeRecipient: (callback, filter) => {
3788
+ return this.publicClient.watchContractEvent({
3789
+ address: this.contractAddress,
3790
+ abi: exports.MetaMorphoAbi,
3791
+ eventName: 'SetFeeRecipient',
3792
+ args: filter,
3793
+ onLogs: (logs) => {
3794
+ logs.forEach((log) => {
3795
+ callback(log.args);
3796
+ });
3797
+ },
3798
+ });
3799
+ },
3800
+ /**
3801
+ * Watch SetGuardian events
3802
+ * @param callback Function to call when event is emitted
3803
+ * @param filter Optional filter for indexed parameters
3804
+ * @returns Unwatch function to stop listening
3805
+ */
3806
+ SetGuardian: (callback, filter) => {
3807
+ return this.publicClient.watchContractEvent({
3808
+ address: this.contractAddress,
3809
+ abi: exports.MetaMorphoAbi,
3810
+ eventName: 'SetGuardian',
3811
+ args: filter,
3812
+ onLogs: (logs) => {
3813
+ logs.forEach((log) => {
3814
+ callback(log.args);
3815
+ });
3816
+ },
3817
+ });
3818
+ },
3819
+ /**
3820
+ * Watch SetIsAllocator events
3821
+ * @param callback Function to call when event is emitted
3822
+ * @param filter Optional filter for indexed parameters
3823
+ * @returns Unwatch function to stop listening
3824
+ */
3825
+ SetIsAllocator: (callback, filter) => {
3826
+ return this.publicClient.watchContractEvent({
3827
+ address: this.contractAddress,
3828
+ abi: exports.MetaMorphoAbi,
3829
+ eventName: 'SetIsAllocator',
3830
+ args: filter,
3831
+ onLogs: (logs) => {
3832
+ logs.forEach((log) => {
3833
+ callback(log.args);
3834
+ });
3835
+ },
3836
+ });
3837
+ },
3838
+ /**
3839
+ * Watch SetSkimRecipient events
3840
+ * @param callback Function to call when event is emitted
3841
+ * @param filter Optional filter for indexed parameters
3842
+ * @returns Unwatch function to stop listening
3843
+ */
3844
+ SetSkimRecipient: (callback, filter) => {
3845
+ return this.publicClient.watchContractEvent({
3846
+ address: this.contractAddress,
3847
+ abi: exports.MetaMorphoAbi,
3848
+ eventName: 'SetSkimRecipient',
3849
+ args: filter,
3850
+ onLogs: (logs) => {
3851
+ logs.forEach((log) => {
3852
+ callback(log.args);
3853
+ });
3854
+ },
3855
+ });
3856
+ },
3857
+ /**
3858
+ * Watch SetSupplyQueue events
3859
+ * @param callback Function to call when event is emitted
3860
+ * @param filter Optional filter for indexed parameters
3861
+ * @returns Unwatch function to stop listening
3862
+ */
3863
+ SetSupplyQueue: (callback, filter) => {
3864
+ return this.publicClient.watchContractEvent({
3865
+ address: this.contractAddress,
3866
+ abi: exports.MetaMorphoAbi,
3867
+ eventName: 'SetSupplyQueue',
3868
+ args: filter,
3869
+ onLogs: (logs) => {
3870
+ logs.forEach((log) => {
3871
+ callback(log.args);
3872
+ });
3873
+ },
3874
+ });
3875
+ },
3876
+ /**
3877
+ * Watch SetTimelock events
3878
+ * @param callback Function to call when event is emitted
3879
+ * @param filter Optional filter for indexed parameters
3880
+ * @returns Unwatch function to stop listening
3881
+ */
3882
+ SetTimelock: (callback, filter) => {
3883
+ return this.publicClient.watchContractEvent({
3884
+ address: this.contractAddress,
3885
+ abi: exports.MetaMorphoAbi,
3886
+ eventName: 'SetTimelock',
3887
+ args: filter,
3888
+ onLogs: (logs) => {
3889
+ logs.forEach((log) => {
3890
+ callback(log.args);
3891
+ });
3892
+ },
3893
+ });
3894
+ },
3895
+ /**
3896
+ * Watch SetWithdrawQueue events
3897
+ * @param callback Function to call when event is emitted
3898
+ * @param filter Optional filter for indexed parameters
3899
+ * @returns Unwatch function to stop listening
3900
+ */
3901
+ SetWithdrawQueue: (callback, filter) => {
3902
+ return this.publicClient.watchContractEvent({
3903
+ address: this.contractAddress,
3904
+ abi: exports.MetaMorphoAbi,
3905
+ eventName: 'SetWithdrawQueue',
3906
+ args: filter,
3907
+ onLogs: (logs) => {
3908
+ logs.forEach((log) => {
3909
+ callback(log.args);
3910
+ });
3911
+ },
3912
+ });
3913
+ },
3914
+ /**
3915
+ * Watch Skim events
3916
+ * @param callback Function to call when event is emitted
3917
+ * @param filter Optional filter for indexed parameters
3918
+ * @returns Unwatch function to stop listening
3919
+ */
3920
+ Skim: (callback, filter) => {
3921
+ return this.publicClient.watchContractEvent({
3922
+ address: this.contractAddress,
3923
+ abi: exports.MetaMorphoAbi,
3924
+ eventName: 'Skim',
3925
+ args: filter,
3926
+ onLogs: (logs) => {
3927
+ logs.forEach((log) => {
3928
+ callback(log.args);
3929
+ });
3930
+ },
3931
+ });
3932
+ },
3933
+ /**
3934
+ * Watch SubmitCap events
3935
+ * @param callback Function to call when event is emitted
3936
+ * @param filter Optional filter for indexed parameters
3937
+ * @returns Unwatch function to stop listening
3938
+ */
3939
+ SubmitCap: (callback, filter) => {
3940
+ return this.publicClient.watchContractEvent({
3941
+ address: this.contractAddress,
3942
+ abi: exports.MetaMorphoAbi,
3943
+ eventName: 'SubmitCap',
3944
+ args: filter,
3945
+ onLogs: (logs) => {
3946
+ logs.forEach((log) => {
3947
+ callback(log.args);
3948
+ });
3949
+ },
3950
+ });
3951
+ },
3952
+ /**
3953
+ * Watch SubmitGuardian events
3954
+ * @param callback Function to call when event is emitted
3955
+ * @param filter Optional filter for indexed parameters
3956
+ * @returns Unwatch function to stop listening
3957
+ */
3958
+ SubmitGuardian: (callback, filter) => {
3959
+ return this.publicClient.watchContractEvent({
3960
+ address: this.contractAddress,
3961
+ abi: exports.MetaMorphoAbi,
3962
+ eventName: 'SubmitGuardian',
3963
+ args: filter,
3964
+ onLogs: (logs) => {
3965
+ logs.forEach((log) => {
3966
+ callback(log.args);
3967
+ });
3968
+ },
3969
+ });
3970
+ },
3971
+ /**
3972
+ * Watch SubmitMarketRemoval events
3973
+ * @param callback Function to call when event is emitted
3974
+ * @param filter Optional filter for indexed parameters
3975
+ * @returns Unwatch function to stop listening
3976
+ */
3977
+ SubmitMarketRemoval: (callback, filter) => {
3978
+ return this.publicClient.watchContractEvent({
3979
+ address: this.contractAddress,
3980
+ abi: exports.MetaMorphoAbi,
3981
+ eventName: 'SubmitMarketRemoval',
3982
+ args: filter,
3983
+ onLogs: (logs) => {
3984
+ logs.forEach((log) => {
3985
+ callback(log.args);
3986
+ });
3987
+ },
3988
+ });
3989
+ },
3990
+ /**
3991
+ * Watch SubmitTimelock events
3992
+ * @param callback Function to call when event is emitted
3993
+ * @param filter Optional filter for indexed parameters
3994
+ * @returns Unwatch function to stop listening
3995
+ */
3996
+ SubmitTimelock: (callback) => {
3997
+ return this.publicClient.watchContractEvent({
3998
+ address: this.contractAddress,
3999
+ abi: exports.MetaMorphoAbi,
4000
+ eventName: 'SubmitTimelock',
4001
+ onLogs: (logs) => {
4002
+ logs.forEach((log) => {
4003
+ callback(log.args);
4004
+ });
4005
+ },
4006
+ });
4007
+ },
4008
+ /**
4009
+ * Watch Transfer events
4010
+ * @param callback Function to call when event is emitted
4011
+ * @param filter Optional filter for indexed parameters
4012
+ * @returns Unwatch function to stop listening
4013
+ */
4014
+ Transfer: (callback, filter) => {
4015
+ return this.publicClient.watchContractEvent({
4016
+ address: this.contractAddress,
4017
+ abi: exports.MetaMorphoAbi,
4018
+ eventName: 'Transfer',
4019
+ args: filter,
4020
+ onLogs: (logs) => {
4021
+ logs.forEach((log) => {
4022
+ callback(log.args);
4023
+ });
4024
+ },
4025
+ });
4026
+ },
4027
+ /**
4028
+ * Watch UpdateLastTotalAssets events
4029
+ * @param callback Function to call when event is emitted
4030
+ * @param filter Optional filter for indexed parameters
4031
+ * @returns Unwatch function to stop listening
4032
+ */
4033
+ UpdateLastTotalAssets: (callback) => {
4034
+ return this.publicClient.watchContractEvent({
4035
+ address: this.contractAddress,
4036
+ abi: exports.MetaMorphoAbi,
4037
+ eventName: 'UpdateLastTotalAssets',
4038
+ onLogs: (logs) => {
4039
+ logs.forEach((log) => {
4040
+ callback(log.args);
4041
+ });
4042
+ },
4043
+ });
4044
+ },
4045
+ /**
4046
+ * Watch Withdraw events
4047
+ * @param callback Function to call when event is emitted
4048
+ * @param filter Optional filter for indexed parameters
4049
+ * @returns Unwatch function to stop listening
4050
+ */
4051
+ Withdraw: (callback, filter) => {
4052
+ return this.publicClient.watchContractEvent({
4053
+ address: this.contractAddress,
4054
+ abi: exports.MetaMorphoAbi,
4055
+ eventName: 'Withdraw',
4056
+ args: filter,
4057
+ onLogs: (logs) => {
4058
+ logs.forEach((log) => {
4059
+ callback(log.args);
4060
+ });
4061
+ },
4062
+ });
4063
+ }
4064
+ };
4065
+ }
4066
+ }
4067
+ exports.MetaMorpho = MetaMorpho;