@exponent-labs/exponent-tranching-idl 0.9.13

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,2391 @@
1
+ /**
2
+ * Program IDL in camelCase format in order to be used in JS/TS.
3
+ *
4
+ * Note that this is only a type helper and is not the actual IDL. The original
5
+ * IDL can be found at `target/idl/exponent_tranching.json`.
6
+ */
7
+ export type ExponentTranching = {
8
+ "address": "5vD9m4eGgbeccFRUYR36GTJpR7cpreq17riqFAtg7nDL";
9
+ "metadata": {
10
+ "name": "exponentTranching";
11
+ "version": "0.1.0";
12
+ "spec": "0.1.0";
13
+ "description": "Created with Anchor";
14
+ };
15
+ "instructions": [
16
+ {
17
+ "name": "deposit";
18
+ "discriminator": [
19
+ 242,
20
+ 35,
21
+ 198,
22
+ 137,
23
+ 82,
24
+ 225,
25
+ 242,
26
+ 182
27
+ ];
28
+ "accounts": [
29
+ {
30
+ "name": "user";
31
+ "writable": true;
32
+ "signer": true;
33
+ },
34
+ {
35
+ "name": "market";
36
+ "writable": true;
37
+ },
38
+ {
39
+ "name": "returnModelStorage";
40
+ "writable": true;
41
+ },
42
+ {
43
+ "name": "addressLookupTable";
44
+ },
45
+ {
46
+ "name": "syProgram";
47
+ },
48
+ {
49
+ "name": "syMint";
50
+ },
51
+ {
52
+ "name": "tokenSrc";
53
+ "writable": true;
54
+ },
55
+ {
56
+ "name": "tokenSyEscrow";
57
+ "writable": true;
58
+ },
59
+ {
60
+ "name": "tokenLpDst";
61
+ "writable": true;
62
+ },
63
+ {
64
+ "name": "mintLp";
65
+ "writable": true;
66
+ },
67
+ {
68
+ "name": "tokenProgram";
69
+ },
70
+ {
71
+ "name": "eventAuthority";
72
+ },
73
+ {
74
+ "name": "program";
75
+ }
76
+ ];
77
+ "args": [
78
+ {
79
+ "name": "params";
80
+ "type": {
81
+ "defined": {
82
+ "name": "depositParams";
83
+ };
84
+ };
85
+ }
86
+ ];
87
+ "returns": {
88
+ "defined": {
89
+ "name": "depositEvent";
90
+ };
91
+ };
92
+ },
93
+ {
94
+ "name": "initializeTranchingMarket";
95
+ "discriminator": [
96
+ 68,
97
+ 121,
98
+ 71,
99
+ 233,
100
+ 137,
101
+ 147,
102
+ 126,
103
+ 45
104
+ ];
105
+ "accounts": [
106
+ {
107
+ "name": "payer";
108
+ "writable": true;
109
+ "signer": true;
110
+ },
111
+ {
112
+ "name": "market";
113
+ "writable": true;
114
+ },
115
+ {
116
+ "name": "returnModelStorage";
117
+ "writable": true;
118
+ },
119
+ {
120
+ "name": "addressLookupTable";
121
+ },
122
+ {
123
+ "name": "syProgram";
124
+ },
125
+ {
126
+ "name": "syMint";
127
+ },
128
+ {
129
+ "name": "tokenSyEscrow";
130
+ "writable": true;
131
+ },
132
+ {
133
+ "name": "mintLpSenior";
134
+ "writable": true;
135
+ },
136
+ {
137
+ "name": "mintLpJunior";
138
+ "writable": true;
139
+ },
140
+ {
141
+ "name": "tokenProgram";
142
+ "docs": [
143
+ "Use the old Token program as the implementation for SY and LP tokens"
144
+ ];
145
+ },
146
+ {
147
+ "name": "systemProgram";
148
+ }
149
+ ];
150
+ "args": [
151
+ {
152
+ "name": "roles";
153
+ "type": {
154
+ "defined": {
155
+ "name": "tranchingMarketRoles";
156
+ };
157
+ };
158
+ },
159
+ {
160
+ "name": "riskConfig";
161
+ "type": {
162
+ "defined": {
163
+ "name": "tranchingRiskConfig";
164
+ };
165
+ };
166
+ },
167
+ {
168
+ "name": "protocolFeeConfig";
169
+ "type": {
170
+ "defined": {
171
+ "name": "tranchingProtocolFeeConfig";
172
+ };
173
+ };
174
+ },
175
+ {
176
+ "name": "returnModel";
177
+ "type": {
178
+ "defined": {
179
+ "name": "trancheReturnModelUpdate";
180
+ };
181
+ };
182
+ },
183
+ {
184
+ "name": "syCpiAccounts";
185
+ "type": {
186
+ "defined": {
187
+ "name": "cpiAccounts";
188
+ };
189
+ };
190
+ },
191
+ {
192
+ "name": "maxSeniorLpSupply";
193
+ "type": "u64";
194
+ },
195
+ {
196
+ "name": "maxJuniorLpSupply";
197
+ "type": "u64";
198
+ },
199
+ {
200
+ "name": "seedId";
201
+ "type": {
202
+ "array": [
203
+ "u8",
204
+ 8
205
+ ];
206
+ };
207
+ }
208
+ ];
209
+ },
210
+ {
211
+ "name": "mintProtocolFeeShares";
212
+ "discriminator": [
213
+ 133,
214
+ 34,
215
+ 97,
216
+ 80,
217
+ 246,
218
+ 183,
219
+ 24,
220
+ 168
221
+ ];
222
+ "accounts": [
223
+ {
224
+ "name": "authority";
225
+ "signer": true;
226
+ },
227
+ {
228
+ "name": "market";
229
+ "writable": true;
230
+ },
231
+ {
232
+ "name": "protocolFeeRecipient";
233
+ },
234
+ {
235
+ "name": "mintLpSenior";
236
+ "writable": true;
237
+ },
238
+ {
239
+ "name": "mintLpJunior";
240
+ "writable": true;
241
+ },
242
+ {
243
+ "name": "tokenLpSeniorDst";
244
+ "writable": true;
245
+ },
246
+ {
247
+ "name": "tokenLpJuniorDst";
248
+ "writable": true;
249
+ },
250
+ {
251
+ "name": "tokenProgram";
252
+ }
253
+ ];
254
+ "args": [];
255
+ },
256
+ {
257
+ "name": "modifyMarket";
258
+ "discriminator": [
259
+ 195,
260
+ 49,
261
+ 4,
262
+ 91,
263
+ 235,
264
+ 161,
265
+ 139,
266
+ 178
267
+ ];
268
+ "accounts": [
269
+ {
270
+ "name": "authority";
271
+ "writable": true;
272
+ "signer": true;
273
+ },
274
+ {
275
+ "name": "market";
276
+ "writable": true;
277
+ },
278
+ {
279
+ "name": "returnModelStorage";
280
+ "writable": true;
281
+ },
282
+ {
283
+ "name": "addressLookupTable";
284
+ },
285
+ {
286
+ "name": "syProgram";
287
+ },
288
+ {
289
+ "name": "systemProgram";
290
+ }
291
+ ];
292
+ "args": [
293
+ {
294
+ "name": "params";
295
+ "type": {
296
+ "defined": {
297
+ "name": "modifyMarketParams";
298
+ };
299
+ };
300
+ }
301
+ ];
302
+ },
303
+ {
304
+ "name": "setMarketPaused";
305
+ "discriminator": [
306
+ 233,
307
+ 31,
308
+ 161,
309
+ 248,
310
+ 178,
311
+ 111,
312
+ 102,
313
+ 65
314
+ ];
315
+ "accounts": [
316
+ {
317
+ "name": "authority";
318
+ "signer": true;
319
+ },
320
+ {
321
+ "name": "market";
322
+ "writable": true;
323
+ }
324
+ ];
325
+ "args": [
326
+ {
327
+ "name": "paused";
328
+ "type": "bool";
329
+ }
330
+ ];
331
+ },
332
+ {
333
+ "name": "withdraw";
334
+ "discriminator": [
335
+ 183,
336
+ 18,
337
+ 70,
338
+ 156,
339
+ 148,
340
+ 109,
341
+ 161,
342
+ 34
343
+ ];
344
+ "accounts": [
345
+ {
346
+ "name": "user";
347
+ "writable": true;
348
+ "signer": true;
349
+ },
350
+ {
351
+ "name": "market";
352
+ "writable": true;
353
+ },
354
+ {
355
+ "name": "returnModelStorage";
356
+ "writable": true;
357
+ },
358
+ {
359
+ "name": "addressLookupTable";
360
+ },
361
+ {
362
+ "name": "syProgram";
363
+ },
364
+ {
365
+ "name": "syMint";
366
+ },
367
+ {
368
+ "name": "tokenLpSrc";
369
+ "writable": true;
370
+ },
371
+ {
372
+ "name": "tokenSyEscrow";
373
+ "writable": true;
374
+ },
375
+ {
376
+ "name": "tokenDst";
377
+ "writable": true;
378
+ },
379
+ {
380
+ "name": "mintLp";
381
+ "writable": true;
382
+ },
383
+ {
384
+ "name": "tokenProgram";
385
+ },
386
+ {
387
+ "name": "eventAuthority";
388
+ },
389
+ {
390
+ "name": "program";
391
+ }
392
+ ];
393
+ "args": [
394
+ {
395
+ "name": "params";
396
+ "type": {
397
+ "defined": {
398
+ "name": "withdrawParams";
399
+ };
400
+ };
401
+ }
402
+ ];
403
+ "returns": {
404
+ "defined": {
405
+ "name": "withdrawEvent";
406
+ };
407
+ };
408
+ },
409
+ {
410
+ "name": "wrapperDeposit";
411
+ "discriminator": [
412
+ 136,
413
+ 36,
414
+ 56,
415
+ 133,
416
+ 237,
417
+ 66,
418
+ 224,
419
+ 149
420
+ ];
421
+ "accounts": [
422
+ {
423
+ "name": "user";
424
+ "writable": true;
425
+ "signer": true;
426
+ },
427
+ {
428
+ "name": "market";
429
+ "writable": true;
430
+ },
431
+ {
432
+ "name": "returnModelStorage";
433
+ "writable": true;
434
+ },
435
+ {
436
+ "name": "addressLookupTable";
437
+ },
438
+ {
439
+ "name": "syProgram";
440
+ },
441
+ {
442
+ "name": "syMint";
443
+ },
444
+ {
445
+ "name": "tokenSrc";
446
+ "writable": true;
447
+ },
448
+ {
449
+ "name": "tokenSyEscrow";
450
+ "writable": true;
451
+ },
452
+ {
453
+ "name": "tokenLpDst";
454
+ "writable": true;
455
+ },
456
+ {
457
+ "name": "mintLp";
458
+ "writable": true;
459
+ },
460
+ {
461
+ "name": "tokenProgram";
462
+ },
463
+ {
464
+ "name": "eventAuthority";
465
+ },
466
+ {
467
+ "name": "program";
468
+ }
469
+ ];
470
+ "args": [
471
+ {
472
+ "name": "trancheSide";
473
+ "type": {
474
+ "defined": {
475
+ "name": "trancheSide";
476
+ };
477
+ };
478
+ },
479
+ {
480
+ "name": "amountBase";
481
+ "type": "u64";
482
+ },
483
+ {
484
+ "name": "minLpOut";
485
+ "type": "u64";
486
+ },
487
+ {
488
+ "name": "mintSyAccountsUntil";
489
+ "type": "u8";
490
+ }
491
+ ];
492
+ "returns": {
493
+ "defined": {
494
+ "name": "wrapperDepositEvent";
495
+ };
496
+ };
497
+ },
498
+ {
499
+ "name": "wrapperWithdraw";
500
+ "discriminator": [
501
+ 129,
502
+ 83,
503
+ 80,
504
+ 33,
505
+ 205,
506
+ 187,
507
+ 240,
508
+ 12
509
+ ];
510
+ "accounts": [
511
+ {
512
+ "name": "user";
513
+ "writable": true;
514
+ "signer": true;
515
+ },
516
+ {
517
+ "name": "market";
518
+ "writable": true;
519
+ },
520
+ {
521
+ "name": "returnModelStorage";
522
+ "writable": true;
523
+ },
524
+ {
525
+ "name": "addressLookupTable";
526
+ },
527
+ {
528
+ "name": "syProgram";
529
+ },
530
+ {
531
+ "name": "syMint";
532
+ },
533
+ {
534
+ "name": "tokenLpSrc";
535
+ "writable": true;
536
+ },
537
+ {
538
+ "name": "tokenSyEscrow";
539
+ "writable": true;
540
+ },
541
+ {
542
+ "name": "tokenDst";
543
+ "writable": true;
544
+ },
545
+ {
546
+ "name": "mintLp";
547
+ "writable": true;
548
+ },
549
+ {
550
+ "name": "tokenProgram";
551
+ },
552
+ {
553
+ "name": "eventAuthority";
554
+ },
555
+ {
556
+ "name": "program";
557
+ }
558
+ ];
559
+ "args": [
560
+ {
561
+ "name": "trancheSide";
562
+ "type": {
563
+ "defined": {
564
+ "name": "trancheSide";
565
+ };
566
+ };
567
+ },
568
+ {
569
+ "name": "lpAmountIn";
570
+ "type": "u64";
571
+ },
572
+ {
573
+ "name": "minBaseOut";
574
+ "type": "u64";
575
+ },
576
+ {
577
+ "name": "redeemSyAccountsUntil";
578
+ "type": "u8";
579
+ }
580
+ ];
581
+ "returns": {
582
+ "defined": {
583
+ "name": "wrapperWithdrawEvent";
584
+ };
585
+ };
586
+ }
587
+ ];
588
+ "accounts": [
589
+ {
590
+ "name": "exponentTranchingMarket";
591
+ "discriminator": [
592
+ 119,
593
+ 38,
594
+ 120,
595
+ 122,
596
+ 60,
597
+ 24,
598
+ 58,
599
+ 160
600
+ ];
601
+ },
602
+ {
603
+ "name": "exponentTranchingMarketReturnModel";
604
+ "discriminator": [
605
+ 156,
606
+ 251,
607
+ 98,
608
+ 150,
609
+ 78,
610
+ 127,
611
+ 196,
612
+ 77
613
+ ];
614
+ }
615
+ ];
616
+ "events": [
617
+ {
618
+ "name": "depositEvent";
619
+ "discriminator": [
620
+ 120,
621
+ 248,
622
+ 61,
623
+ 83,
624
+ 31,
625
+ 142,
626
+ 107,
627
+ 144
628
+ ];
629
+ },
630
+ {
631
+ "name": "marketPausedSetEvent";
632
+ "discriminator": [
633
+ 67,
634
+ 128,
635
+ 115,
636
+ 202,
637
+ 33,
638
+ 149,
639
+ 134,
640
+ 101
641
+ ];
642
+ },
643
+ {
644
+ "name": "mintProtocolFeeSharesEvent";
645
+ "discriminator": [
646
+ 26,
647
+ 46,
648
+ 47,
649
+ 252,
650
+ 3,
651
+ 204,
652
+ 112,
653
+ 243
654
+ ];
655
+ },
656
+ {
657
+ "name": "withdrawEvent";
658
+ "discriminator": [
659
+ 22,
660
+ 9,
661
+ 133,
662
+ 26,
663
+ 160,
664
+ 44,
665
+ 71,
666
+ 192
667
+ ];
668
+ },
669
+ {
670
+ "name": "wrapperDepositEvent";
671
+ "discriminator": [
672
+ 67,
673
+ 103,
674
+ 175,
675
+ 214,
676
+ 117,
677
+ 136,
678
+ 202,
679
+ 172
680
+ ];
681
+ },
682
+ {
683
+ "name": "wrapperWithdrawEvent";
684
+ "discriminator": [
685
+ 125,
686
+ 130,
687
+ 107,
688
+ 122,
689
+ 122,
690
+ 132,
691
+ 122,
692
+ 50
693
+ ];
694
+ }
695
+ ];
696
+ "errors": [
697
+ {
698
+ "code": 6000;
699
+ "name": "missingRequiredSignature";
700
+ "msg": "Missing required signature";
701
+ },
702
+ {
703
+ "code": 6001;
704
+ "name": "unauthorizedRole";
705
+ "msg": "Signer is not authorized for this role";
706
+ },
707
+ {
708
+ "code": 6002;
709
+ "name": "amountTooSmall";
710
+ "msg": "Amount is too small";
711
+ },
712
+ {
713
+ "code": 6003;
714
+ "name": "mathOverflow";
715
+ "msg": "Mathematical overflow";
716
+ },
717
+ {
718
+ "code": 6004;
719
+ "name": "marketNotEmpty";
720
+ "msg": "Market must be empty for this operation";
721
+ },
722
+ {
723
+ "code": 6005;
724
+ "name": "rewardsDisabled";
725
+ "msg": "Rewards are disabled for this market";
726
+ },
727
+ {
728
+ "code": 6006;
729
+ "name": "invalidReturnModelConfig";
730
+ "msg": "Invalid return allocation model configuration";
731
+ },
732
+ {
733
+ "code": 6007;
734
+ "name": "invalidProtocolFeeConfig";
735
+ "msg": "Invalid protocol fee configuration";
736
+ },
737
+ {
738
+ "code": 6008;
739
+ "name": "invalidRiskConfig";
740
+ "msg": "Invalid risk configuration";
741
+ },
742
+ {
743
+ "code": 6009;
744
+ "name": "marketPaused";
745
+ "msg": "Market is paused";
746
+ },
747
+ {
748
+ "code": 6010;
749
+ "name": "invalidLpMint";
750
+ "msg": "Invalid LP mint";
751
+ },
752
+ {
753
+ "code": 6011;
754
+ "name": "invalidPda";
755
+ "msg": "Invalid PDA";
756
+ },
757
+ {
758
+ "code": 6012;
759
+ "name": "unsupportedMint";
760
+ "msg": "Unsupported token mint";
761
+ },
762
+ {
763
+ "code": 6013;
764
+ "name": "invalidSyEscrow";
765
+ "msg": "Invalid SY escrow account";
766
+ },
767
+ {
768
+ "code": 6014;
769
+ "name": "invalidMarketAuthority";
770
+ "msg": "Invalid market authority";
771
+ },
772
+ {
773
+ "code": 6015;
774
+ "name": "minLpOutNotMet";
775
+ "msg": "Minimum LP output not met";
776
+ },
777
+ {
778
+ "code": 6016;
779
+ "name": "lpSupplyMaximumExceeded";
780
+ "msg": "LP supply maximum exceeded";
781
+ },
782
+ {
783
+ "code": 6017;
784
+ "name": "seniorDepositDisabledInLoss";
785
+ "msg": "Senior deposit is disabled while senior impermanent loss exists";
786
+ },
787
+ {
788
+ "code": 6018;
789
+ "name": "seniorDepositStateNotAllowed";
790
+ "msg": "Senior deposit is not allowed in the current market state";
791
+ },
792
+ {
793
+ "code": 6019;
794
+ "name": "juniorDepositStateNotAllowed";
795
+ "msg": "Junior deposit is not allowed in the current market state";
796
+ },
797
+ {
798
+ "code": 6020;
799
+ "name": "coverageExceeded";
800
+ "msg": "Post-deposit coverage requirement would be violated";
801
+ },
802
+ {
803
+ "code": 6021;
804
+ "name": "minAmountOutNotMet";
805
+ "msg": "Minimum withdrawal output not met";
806
+ },
807
+ {
808
+ "code": 6022;
809
+ "name": "insufficientTrancheLiquidity";
810
+ "msg": "Insufficient tranche SY liquidity";
811
+ },
812
+ {
813
+ "code": 6023;
814
+ "name": "insufficientSyEscrowLiquidity";
815
+ "msg": "Insufficient SY escrow liquidity";
816
+ },
817
+ {
818
+ "code": 6024;
819
+ "name": "seniorWithdrawStateNotAllowed";
820
+ "msg": "Senior withdrawal is not allowed in the current market state";
821
+ },
822
+ {
823
+ "code": 6025;
824
+ "name": "juniorWithdrawStateNotAllowed";
825
+ "msg": "Junior withdrawal is not allowed in the current market state";
826
+ },
827
+ {
828
+ "code": 6026;
829
+ "name": "invalidMarketAccountData";
830
+ "msg": "Market account has invalid data";
831
+ },
832
+ {
833
+ "code": 6027;
834
+ "name": "marketAlreadyInitialized";
835
+ "msg": "Market account has already been initialized";
836
+ }
837
+ ];
838
+ "types": [
839
+ {
840
+ "name": "cpiAccounts";
841
+ "docs": [
842
+ "Account lists for validating CPI calls to the SY program"
843
+ ];
844
+ "type": {
845
+ "kind": "struct";
846
+ "fields": [
847
+ {
848
+ "name": "getSyState";
849
+ "docs": [
850
+ "Fetch SY state"
851
+ ];
852
+ "type": {
853
+ "vec": {
854
+ "defined": {
855
+ "name": "cpiInterfaceContext";
856
+ };
857
+ };
858
+ };
859
+ },
860
+ {
861
+ "name": "depositSy";
862
+ "docs": [
863
+ "Deposit SY into personal account owned by market"
864
+ ];
865
+ "type": {
866
+ "vec": {
867
+ "defined": {
868
+ "name": "cpiInterfaceContext";
869
+ };
870
+ };
871
+ };
872
+ },
873
+ {
874
+ "name": "withdrawSy";
875
+ "docs": [
876
+ "Withdraw SY from personal account owned by market"
877
+ ];
878
+ "type": {
879
+ "vec": {
880
+ "defined": {
881
+ "name": "cpiInterfaceContext";
882
+ };
883
+ };
884
+ };
885
+ },
886
+ {
887
+ "name": "claimEmission";
888
+ "docs": [
889
+ "Settle rewards for market-owned accounts"
890
+ ];
891
+ "type": {
892
+ "vec": {
893
+ "vec": {
894
+ "defined": {
895
+ "name": "cpiInterfaceContext";
896
+ };
897
+ };
898
+ };
899
+ };
900
+ },
901
+ {
902
+ "name": "getPositionState";
903
+ "docs": [
904
+ "Get personal yield position"
905
+ ];
906
+ "type": {
907
+ "vec": {
908
+ "defined": {
909
+ "name": "cpiInterfaceContext";
910
+ };
911
+ };
912
+ };
913
+ }
914
+ ];
915
+ };
916
+ },
917
+ {
918
+ "name": "cpiInterfaceContext";
919
+ "type": {
920
+ "kind": "struct";
921
+ "fields": [
922
+ {
923
+ "name": "altIndex";
924
+ "docs": [
925
+ "Address-lookup-table index"
926
+ ];
927
+ "type": "u8";
928
+ },
929
+ {
930
+ "name": "isSigner";
931
+ "type": "bool";
932
+ },
933
+ {
934
+ "name": "isWritable";
935
+ "type": "bool";
936
+ }
937
+ ];
938
+ };
939
+ },
940
+ {
941
+ "name": "depositEvent";
942
+ "type": {
943
+ "kind": "struct";
944
+ "fields": [
945
+ {
946
+ "name": "user";
947
+ "type": "pubkey";
948
+ },
949
+ {
950
+ "name": "market";
951
+ "type": "pubkey";
952
+ },
953
+ {
954
+ "name": "trancheSide";
955
+ "type": {
956
+ "defined": {
957
+ "name": "trancheSide";
958
+ };
959
+ };
960
+ },
961
+ {
962
+ "name": "tokenSrc";
963
+ "type": "pubkey";
964
+ },
965
+ {
966
+ "name": "tokenSyEscrow";
967
+ "type": "pubkey";
968
+ },
969
+ {
970
+ "name": "tokenLpDst";
971
+ "type": "pubkey";
972
+ },
973
+ {
974
+ "name": "mintLp";
975
+ "type": "pubkey";
976
+ },
977
+ {
978
+ "name": "amountIn";
979
+ "type": "u64";
980
+ },
981
+ {
982
+ "name": "valueAllocated";
983
+ "type": {
984
+ "defined": {
985
+ "name": "number";
986
+ };
987
+ };
988
+ },
989
+ {
990
+ "name": "lpOut";
991
+ "type": "u64";
992
+ },
993
+ {
994
+ "name": "newTotalLpSupply";
995
+ "type": "u64";
996
+ },
997
+ {
998
+ "name": "syExchangeRate";
999
+ "type": {
1000
+ "defined": {
1001
+ "name": "number";
1002
+ };
1003
+ };
1004
+ },
1005
+ {
1006
+ "name": "seniorRawNav";
1007
+ "type": {
1008
+ "defined": {
1009
+ "name": "number";
1010
+ };
1011
+ };
1012
+ },
1013
+ {
1014
+ "name": "juniorRawNav";
1015
+ "type": {
1016
+ "defined": {
1017
+ "name": "number";
1018
+ };
1019
+ };
1020
+ },
1021
+ {
1022
+ "name": "seniorEffectiveNav";
1023
+ "type": {
1024
+ "defined": {
1025
+ "name": "number";
1026
+ };
1027
+ };
1028
+ },
1029
+ {
1030
+ "name": "juniorEffectiveNav";
1031
+ "type": {
1032
+ "defined": {
1033
+ "name": "number";
1034
+ };
1035
+ };
1036
+ },
1037
+ {
1038
+ "name": "seniorLoss";
1039
+ "type": {
1040
+ "defined": {
1041
+ "name": "number";
1042
+ };
1043
+ };
1044
+ },
1045
+ {
1046
+ "name": "juniorLoss";
1047
+ "type": {
1048
+ "defined": {
1049
+ "name": "number";
1050
+ };
1051
+ };
1052
+ },
1053
+ {
1054
+ "name": "seniorPremium";
1055
+ "type": {
1056
+ "defined": {
1057
+ "name": "number";
1058
+ };
1059
+ };
1060
+ },
1061
+ {
1062
+ "name": "juniorPremium";
1063
+ "type": {
1064
+ "defined": {
1065
+ "name": "number";
1066
+ };
1067
+ };
1068
+ },
1069
+ {
1070
+ "name": "utilization";
1071
+ "type": {
1072
+ "defined": {
1073
+ "name": "number";
1074
+ };
1075
+ };
1076
+ },
1077
+ {
1078
+ "name": "seniorLpPriceNetAsset";
1079
+ "type": {
1080
+ "defined": {
1081
+ "name": "number";
1082
+ };
1083
+ };
1084
+ },
1085
+ {
1086
+ "name": "juniorLpPriceNetAsset";
1087
+ "type": {
1088
+ "defined": {
1089
+ "name": "number";
1090
+ };
1091
+ };
1092
+ },
1093
+ {
1094
+ "name": "timestamp";
1095
+ "type": "i64";
1096
+ }
1097
+ ];
1098
+ };
1099
+ },
1100
+ {
1101
+ "name": "depositParams";
1102
+ "type": {
1103
+ "kind": "struct";
1104
+ "fields": [
1105
+ {
1106
+ "name": "trancheSide";
1107
+ "type": {
1108
+ "defined": {
1109
+ "name": "trancheSide";
1110
+ };
1111
+ };
1112
+ },
1113
+ {
1114
+ "name": "amountIn";
1115
+ "type": "u64";
1116
+ },
1117
+ {
1118
+ "name": "minLpOut";
1119
+ "type": "u64";
1120
+ }
1121
+ ];
1122
+ };
1123
+ },
1124
+ {
1125
+ "name": "exponentTranchingMarket";
1126
+ "type": {
1127
+ "kind": "struct";
1128
+ "fields": [
1129
+ {
1130
+ "name": "addressLookupTable";
1131
+ "docs": [
1132
+ "Address to ALT"
1133
+ ];
1134
+ "type": "pubkey";
1135
+ },
1136
+ {
1137
+ "name": "syMint";
1138
+ "docs": [
1139
+ "Standardized yield token mint"
1140
+ ];
1141
+ "type": "pubkey";
1142
+ },
1143
+ {
1144
+ "name": "syProgram";
1145
+ "docs": [
1146
+ "Linked SY program id"
1147
+ ];
1148
+ "type": "pubkey";
1149
+ },
1150
+ {
1151
+ "name": "tokenSyEscrow";
1152
+ "docs": [
1153
+ "Escrow token account that holds SY owned by the market"
1154
+ ];
1155
+ "type": "pubkey";
1156
+ },
1157
+ {
1158
+ "name": "mintLpSenior";
1159
+ "docs": [
1160
+ "Senior LP mint"
1161
+ ];
1162
+ "type": "pubkey";
1163
+ },
1164
+ {
1165
+ "name": "mintLpJunior";
1166
+ "docs": [
1167
+ "Junior LP mint"
1168
+ ];
1169
+ "type": "pubkey";
1170
+ },
1171
+ {
1172
+ "name": "selfAddress";
1173
+ "docs": [
1174
+ "Authority PDA for CPI calls owned by the market state"
1175
+ ];
1176
+ "type": "pubkey";
1177
+ },
1178
+ {
1179
+ "name": "returnModelStorage";
1180
+ "docs": [
1181
+ "PDA account that stores the active return allocation model."
1182
+ ];
1183
+ "type": "pubkey";
1184
+ },
1185
+ {
1186
+ "name": "signerBump";
1187
+ "docs": [
1188
+ "PDA signer bump"
1189
+ ];
1190
+ "type": {
1191
+ "array": [
1192
+ "u8",
1193
+ 1
1194
+ ];
1195
+ };
1196
+ },
1197
+ {
1198
+ "name": "returnModelStorageBump";
1199
+ "docs": [
1200
+ "Return model storage PDA bump"
1201
+ ];
1202
+ "type": {
1203
+ "array": [
1204
+ "u8",
1205
+ 1
1206
+ ];
1207
+ };
1208
+ },
1209
+ {
1210
+ "name": "seedId";
1211
+ "docs": [
1212
+ "Unique seed id for the market"
1213
+ ];
1214
+ "type": {
1215
+ "array": [
1216
+ "u8",
1217
+ 8
1218
+ ];
1219
+ };
1220
+ },
1221
+ {
1222
+ "name": "statusFlags";
1223
+ "docs": [
1224
+ "Global status flags"
1225
+ ];
1226
+ "type": "u8";
1227
+ },
1228
+ {
1229
+ "name": "marketState";
1230
+ "docs": [
1231
+ "Current market lifecycle state"
1232
+ ];
1233
+ "type": {
1234
+ "defined": {
1235
+ "name": "tranchingMarketState";
1236
+ };
1237
+ };
1238
+ },
1239
+ {
1240
+ "name": "financials";
1241
+ "docs": [
1242
+ "Core financial state"
1243
+ ];
1244
+ "type": {
1245
+ "defined": {
1246
+ "name": "tranchingMarketFinancials";
1247
+ };
1248
+ };
1249
+ },
1250
+ {
1251
+ "name": "trancheSupplyState";
1252
+ "docs": [
1253
+ "Tranche LP supply and escrow state"
1254
+ ];
1255
+ "type": {
1256
+ "defined": {
1257
+ "name": "trancheSupplyState";
1258
+ };
1259
+ };
1260
+ },
1261
+ {
1262
+ "name": "trancheAssetState";
1263
+ "docs": [
1264
+ "Tranche-owned SY balances"
1265
+ ];
1266
+ "type": {
1267
+ "defined": {
1268
+ "name": "trancheAssetState";
1269
+ };
1270
+ };
1271
+ },
1272
+ {
1273
+ "name": "riskConfig";
1274
+ "docs": [
1275
+ "Risk parameters"
1276
+ ];
1277
+ "type": {
1278
+ "defined": {
1279
+ "name": "tranchingRiskConfig";
1280
+ };
1281
+ };
1282
+ },
1283
+ {
1284
+ "name": "protocolFeeConfig";
1285
+ "docs": [
1286
+ "Protocol fee configuration"
1287
+ ];
1288
+ "type": {
1289
+ "defined": {
1290
+ "name": "tranchingProtocolFeeConfig";
1291
+ };
1292
+ };
1293
+ },
1294
+ {
1295
+ "name": "returnModel";
1296
+ "docs": [
1297
+ "Return allocation model configuration"
1298
+ ];
1299
+ "type": {
1300
+ "defined": {
1301
+ "name": "trancheReturnModel";
1302
+ };
1303
+ };
1304
+ },
1305
+ {
1306
+ "name": "roles";
1307
+ "docs": [
1308
+ "Role memberships for market control"
1309
+ ];
1310
+ "type": {
1311
+ "defined": {
1312
+ "name": "tranchingMarketRoles";
1313
+ };
1314
+ };
1315
+ },
1316
+ {
1317
+ "name": "syCpiAccounts";
1318
+ "docs": [
1319
+ "Record of CPI accounts for the linked SY program"
1320
+ ];
1321
+ "type": {
1322
+ "defined": {
1323
+ "name": "cpiAccounts";
1324
+ };
1325
+ };
1326
+ }
1327
+ ];
1328
+ };
1329
+ },
1330
+ {
1331
+ "name": "exponentTranchingMarketReturnModel";
1332
+ "type": {
1333
+ "kind": "struct";
1334
+ "fields": [
1335
+ {
1336
+ "name": "market";
1337
+ "type": "pubkey";
1338
+ },
1339
+ {
1340
+ "name": "returnModel";
1341
+ "type": {
1342
+ "defined": {
1343
+ "name": "trancheReturnModel";
1344
+ };
1345
+ };
1346
+ },
1347
+ {
1348
+ "name": "reserved";
1349
+ "type": {
1350
+ "array": [
1351
+ "u8",
1352
+ 128
1353
+ ];
1354
+ };
1355
+ }
1356
+ ];
1357
+ };
1358
+ },
1359
+ {
1360
+ "name": "marketPausedSetEvent";
1361
+ "type": {
1362
+ "kind": "struct";
1363
+ "fields": [
1364
+ {
1365
+ "name": "authority";
1366
+ "type": "pubkey";
1367
+ },
1368
+ {
1369
+ "name": "market";
1370
+ "type": "pubkey";
1371
+ },
1372
+ {
1373
+ "name": "paused";
1374
+ "type": "bool";
1375
+ },
1376
+ {
1377
+ "name": "statusFlags";
1378
+ "type": "u8";
1379
+ },
1380
+ {
1381
+ "name": "timestamp";
1382
+ "type": "i64";
1383
+ }
1384
+ ];
1385
+ };
1386
+ },
1387
+ {
1388
+ "name": "mintProtocolFeeSharesEvent";
1389
+ "type": {
1390
+ "kind": "struct";
1391
+ "fields": [
1392
+ {
1393
+ "name": "authority";
1394
+ "type": "pubkey";
1395
+ },
1396
+ {
1397
+ "name": "market";
1398
+ "type": "pubkey";
1399
+ },
1400
+ {
1401
+ "name": "protocolFeeRecipient";
1402
+ "type": "pubkey";
1403
+ },
1404
+ {
1405
+ "name": "tokenLpSeniorDst";
1406
+ "type": "pubkey";
1407
+ },
1408
+ {
1409
+ "name": "tokenLpJuniorDst";
1410
+ "type": "pubkey";
1411
+ },
1412
+ {
1413
+ "name": "seniorLpSharesMinted";
1414
+ "type": "u64";
1415
+ },
1416
+ {
1417
+ "name": "juniorLpSharesMinted";
1418
+ "type": "u64";
1419
+ },
1420
+ {
1421
+ "name": "timestamp";
1422
+ "type": "i64";
1423
+ }
1424
+ ];
1425
+ };
1426
+ },
1427
+ {
1428
+ "name": "modifyMarketParams";
1429
+ "type": {
1430
+ "kind": "struct";
1431
+ "fields": [
1432
+ {
1433
+ "name": "riskConfig";
1434
+ "type": {
1435
+ "option": {
1436
+ "defined": {
1437
+ "name": "tranchingRiskConfig";
1438
+ };
1439
+ };
1440
+ };
1441
+ },
1442
+ {
1443
+ "name": "protocolFeeConfig";
1444
+ "type": {
1445
+ "option": {
1446
+ "defined": {
1447
+ "name": "tranchingProtocolFeeConfig";
1448
+ };
1449
+ };
1450
+ };
1451
+ },
1452
+ {
1453
+ "name": "returnModel";
1454
+ "type": {
1455
+ "option": {
1456
+ "defined": {
1457
+ "name": "trancheReturnModelUpdate";
1458
+ };
1459
+ };
1460
+ };
1461
+ },
1462
+ {
1463
+ "name": "syCpiAccounts";
1464
+ "type": {
1465
+ "option": {
1466
+ "defined": {
1467
+ "name": "cpiAccounts";
1468
+ };
1469
+ };
1470
+ };
1471
+ },
1472
+ {
1473
+ "name": "addressLookupTable";
1474
+ "type": {
1475
+ "option": "pubkey";
1476
+ };
1477
+ },
1478
+ {
1479
+ "name": "roles";
1480
+ "type": {
1481
+ "option": {
1482
+ "defined": {
1483
+ "name": "tranchingMarketRoles";
1484
+ };
1485
+ };
1486
+ };
1487
+ },
1488
+ {
1489
+ "name": "maxSeniorLpSupply";
1490
+ "type": {
1491
+ "option": "u64";
1492
+ };
1493
+ },
1494
+ {
1495
+ "name": "maxJuniorLpSupply";
1496
+ "type": {
1497
+ "option": "u64";
1498
+ };
1499
+ }
1500
+ ];
1501
+ };
1502
+ },
1503
+ {
1504
+ "name": "number";
1505
+ "docs": [
1506
+ "High precision number, stored as 4 u64 words in little endian"
1507
+ ];
1508
+ "repr": {
1509
+ "kind": "c";
1510
+ };
1511
+ "type": {
1512
+ "kind": "struct";
1513
+ "fields": [
1514
+ {
1515
+ "array": [
1516
+ "u64",
1517
+ 4
1518
+ ];
1519
+ }
1520
+ ];
1521
+ };
1522
+ },
1523
+ {
1524
+ "name": "piecewiseLinearCurveParams";
1525
+ "type": {
1526
+ "kind": "struct";
1527
+ "fields": [
1528
+ {
1529
+ "name": "points";
1530
+ "type": {
1531
+ "vec": "u64";
1532
+ };
1533
+ }
1534
+ ];
1535
+ };
1536
+ },
1537
+ {
1538
+ "name": "piecewiseLinearCurvePoint";
1539
+ "type": {
1540
+ "kind": "struct";
1541
+ "fields": [
1542
+ {
1543
+ "name": "utilization";
1544
+ "type": {
1545
+ "defined": {
1546
+ "name": "number";
1547
+ };
1548
+ };
1549
+ },
1550
+ {
1551
+ "name": "y";
1552
+ "type": {
1553
+ "defined": {
1554
+ "name": "number";
1555
+ };
1556
+ };
1557
+ }
1558
+ ];
1559
+ };
1560
+ },
1561
+ {
1562
+ "name": "trancheAssetState";
1563
+ "type": {
1564
+ "kind": "struct";
1565
+ "fields": [
1566
+ {
1567
+ "name": "seniorSyAmount";
1568
+ "docs": [
1569
+ "SY balance owned by the senior tranche"
1570
+ ];
1571
+ "type": "u64";
1572
+ },
1573
+ {
1574
+ "name": "juniorSyAmount";
1575
+ "docs": [
1576
+ "SY balance owned by the junior tranche"
1577
+ ];
1578
+ "type": "u64";
1579
+ }
1580
+ ];
1581
+ };
1582
+ },
1583
+ {
1584
+ "name": "trancheReturnModel";
1585
+ "type": {
1586
+ "kind": "enum";
1587
+ "variants": [
1588
+ {
1589
+ "name": "utilizationGuidedCurve";
1590
+ "fields": [
1591
+ {
1592
+ "defined": {
1593
+ "name": "utilizationGuidedCurveParams";
1594
+ };
1595
+ }
1596
+ ];
1597
+ },
1598
+ {
1599
+ "name": "piecewiseLinearCurve";
1600
+ "fields": [
1601
+ {
1602
+ "defined": {
1603
+ "name": "piecewiseLinearCurveParams";
1604
+ };
1605
+ }
1606
+ ];
1607
+ }
1608
+ ];
1609
+ };
1610
+ },
1611
+ {
1612
+ "name": "trancheReturnModelUpdate";
1613
+ "type": {
1614
+ "kind": "enum";
1615
+ "variants": [
1616
+ {
1617
+ "name": "utilizationGuidedCurve";
1618
+ "fields": [
1619
+ {
1620
+ "defined": {
1621
+ "name": "utilizationGuidedCurveParams";
1622
+ };
1623
+ }
1624
+ ];
1625
+ },
1626
+ {
1627
+ "name": "piecewiseLinearCurve";
1628
+ "fields": [
1629
+ {
1630
+ "vec": {
1631
+ "defined": {
1632
+ "name": "piecewiseLinearCurvePoint";
1633
+ };
1634
+ };
1635
+ }
1636
+ ];
1637
+ }
1638
+ ];
1639
+ };
1640
+ },
1641
+ {
1642
+ "name": "trancheSide";
1643
+ "type": {
1644
+ "kind": "enum";
1645
+ "variants": [
1646
+ {
1647
+ "name": "senior";
1648
+ },
1649
+ {
1650
+ "name": "junior";
1651
+ }
1652
+ ];
1653
+ };
1654
+ },
1655
+ {
1656
+ "name": "trancheSupplyState";
1657
+ "type": {
1658
+ "kind": "struct";
1659
+ "fields": [
1660
+ {
1661
+ "name": "totalSeniorLpSupply";
1662
+ "docs": [
1663
+ "Total senior LP supply"
1664
+ ];
1665
+ "type": "u64";
1666
+ },
1667
+ {
1668
+ "name": "totalJuniorLpSupply";
1669
+ "docs": [
1670
+ "Total junior LP supply"
1671
+ ];
1672
+ "type": "u64";
1673
+ },
1674
+ {
1675
+ "name": "maxSeniorLpSupply";
1676
+ "docs": [
1677
+ "Optional max senior LP supply"
1678
+ ];
1679
+ "type": "u64";
1680
+ },
1681
+ {
1682
+ "name": "maxJuniorLpSupply";
1683
+ "docs": [
1684
+ "Optional max junior LP supply"
1685
+ ];
1686
+ "type": "u64";
1687
+ },
1688
+ {
1689
+ "name": "pendingSeniorProtocolFeeLpShares";
1690
+ "docs": [
1691
+ "Protocol fee senior LP shares accrued but not minted yet"
1692
+ ];
1693
+ "type": "u64";
1694
+ },
1695
+ {
1696
+ "name": "pendingJuniorProtocolFeeLpShares";
1697
+ "docs": [
1698
+ "Protocol fee junior LP shares accrued but not minted yet"
1699
+ ];
1700
+ "type": "u64";
1701
+ },
1702
+ {
1703
+ "name": "pendingSeniorDepositProtocolFeeLpShares";
1704
+ "docs": [
1705
+ "Senior deposit protocol fee LP shares accrued but not minted yet"
1706
+ ];
1707
+ "type": "u64";
1708
+ },
1709
+ {
1710
+ "name": "pendingJuniorDepositProtocolFeeLpShares";
1711
+ "docs": [
1712
+ "Junior deposit protocol fee LP shares accrued but not minted yet"
1713
+ ];
1714
+ "type": "u64";
1715
+ },
1716
+ {
1717
+ "name": "pendingSeniorWithdrawProtocolFeeLpShares";
1718
+ "docs": [
1719
+ "Senior withdrawal protocol fee LP shares accrued but not minted yet"
1720
+ ];
1721
+ "type": "u64";
1722
+ },
1723
+ {
1724
+ "name": "pendingJuniorWithdrawProtocolFeeLpShares";
1725
+ "docs": [
1726
+ "Junior withdrawal protocol fee LP shares accrued but not minted yet"
1727
+ ];
1728
+ "type": "u64";
1729
+ }
1730
+ ];
1731
+ };
1732
+ },
1733
+ {
1734
+ "name": "tranchingMarketFinancials";
1735
+ "type": {
1736
+ "kind": "struct";
1737
+ "fields": [
1738
+ {
1739
+ "name": "srRawNetAsset";
1740
+ "docs": [
1741
+ "Senior raw net asset value"
1742
+ ];
1743
+ "type": {
1744
+ "defined": {
1745
+ "name": "number";
1746
+ };
1747
+ };
1748
+ },
1749
+ {
1750
+ "name": "jrRawNetAsset";
1751
+ "docs": [
1752
+ "Junior raw net asset value"
1753
+ ];
1754
+ "type": {
1755
+ "defined": {
1756
+ "name": "number";
1757
+ };
1758
+ };
1759
+ },
1760
+ {
1761
+ "name": "srEffectiveNetAsset";
1762
+ "docs": [
1763
+ "Senior effective net asset value"
1764
+ ];
1765
+ "type": {
1766
+ "defined": {
1767
+ "name": "number";
1768
+ };
1769
+ };
1770
+ },
1771
+ {
1772
+ "name": "jrEffectiveNetAsset";
1773
+ "docs": [
1774
+ "Junior effective net asset value"
1775
+ ];
1776
+ "type": {
1777
+ "defined": {
1778
+ "name": "number";
1779
+ };
1780
+ };
1781
+ },
1782
+ {
1783
+ "name": "srImpermanentLoss";
1784
+ "docs": [
1785
+ "Senior impermanent loss balance"
1786
+ ];
1787
+ "type": {
1788
+ "defined": {
1789
+ "name": "number";
1790
+ };
1791
+ };
1792
+ },
1793
+ {
1794
+ "name": "jrImpermanentLoss";
1795
+ "docs": [
1796
+ "Junior impermanent loss balance"
1797
+ ];
1798
+ "type": {
1799
+ "defined": {
1800
+ "name": "number";
1801
+ };
1802
+ };
1803
+ },
1804
+ {
1805
+ "name": "utilization";
1806
+ "docs": [
1807
+ "Current utilization"
1808
+ ];
1809
+ "type": {
1810
+ "defined": {
1811
+ "name": "number";
1812
+ };
1813
+ };
1814
+ },
1815
+ {
1816
+ "name": "currentJuniorReturnShare";
1817
+ "docs": [
1818
+ "Last distributed junior return share"
1819
+ ];
1820
+ "type": {
1821
+ "defined": {
1822
+ "name": "number";
1823
+ };
1824
+ };
1825
+ },
1826
+ {
1827
+ "name": "twJuniorReturnShareAccrued";
1828
+ "docs": [
1829
+ "Accrued time-weighted junior return share"
1830
+ ];
1831
+ "type": {
1832
+ "defined": {
1833
+ "name": "number";
1834
+ };
1835
+ };
1836
+ },
1837
+ {
1838
+ "name": "lastSyncTs";
1839
+ "docs": [
1840
+ "Last market sync timestamp"
1841
+ ];
1842
+ "type": "i64";
1843
+ },
1844
+ {
1845
+ "name": "lastDistributionTs";
1846
+ "docs": [
1847
+ "Last yield distribution timestamp"
1848
+ ];
1849
+ "type": "i64";
1850
+ },
1851
+ {
1852
+ "name": "fixedTermEndTs";
1853
+ "docs": [
1854
+ "Fixed-term end timestamp, if active"
1855
+ ];
1856
+ "type": "i64";
1857
+ }
1858
+ ];
1859
+ };
1860
+ },
1861
+ {
1862
+ "name": "tranchingMarketRoles";
1863
+ "type": {
1864
+ "kind": "struct";
1865
+ "fields": [
1866
+ {
1867
+ "name": "admin";
1868
+ "type": {
1869
+ "vec": "pubkey";
1870
+ };
1871
+ },
1872
+ {
1873
+ "name": "sentinel";
1874
+ "type": {
1875
+ "vec": "pubkey";
1876
+ };
1877
+ }
1878
+ ];
1879
+ };
1880
+ },
1881
+ {
1882
+ "name": "tranchingMarketState";
1883
+ "type": {
1884
+ "kind": "enum";
1885
+ "variants": [
1886
+ {
1887
+ "name": "uninitialized";
1888
+ },
1889
+ {
1890
+ "name": "active";
1891
+ },
1892
+ {
1893
+ "name": "fixedTermRecovery";
1894
+ },
1895
+ {
1896
+ "name": "paused";
1897
+ }
1898
+ ];
1899
+ };
1900
+ },
1901
+ {
1902
+ "name": "tranchingProtocolFeeConfig";
1903
+ "type": {
1904
+ "kind": "struct";
1905
+ "fields": [
1906
+ {
1907
+ "name": "protocolFeeRecipient";
1908
+ "docs": [
1909
+ "Protocol fee recipient that receives minted LP fee shares"
1910
+ ];
1911
+ "type": "pubkey";
1912
+ },
1913
+ {
1914
+ "name": "srProtocolFee";
1915
+ "docs": [
1916
+ "Protocol fee charged on senior-side yield retained by senior"
1917
+ ];
1918
+ "type": {
1919
+ "defined": {
1920
+ "name": "number";
1921
+ };
1922
+ };
1923
+ },
1924
+ {
1925
+ "name": "jrProtocolFee";
1926
+ "docs": [
1927
+ "Protocol fee charged on junior-side raw appreciation retained by junior"
1928
+ ];
1929
+ "type": {
1930
+ "defined": {
1931
+ "name": "number";
1932
+ };
1933
+ };
1934
+ },
1935
+ {
1936
+ "name": "juniorReturnProtocolFee";
1937
+ "docs": [
1938
+ "Protocol fee charged on senior return allocated to junior"
1939
+ ];
1940
+ "type": {
1941
+ "defined": {
1942
+ "name": "number";
1943
+ };
1944
+ };
1945
+ },
1946
+ {
1947
+ "name": "seniorDepositProtocolFee";
1948
+ "docs": [
1949
+ "Protocol fee charged on senior tranche deposits"
1950
+ ];
1951
+ "type": {
1952
+ "defined": {
1953
+ "name": "number";
1954
+ };
1955
+ };
1956
+ },
1957
+ {
1958
+ "name": "juniorDepositProtocolFee";
1959
+ "docs": [
1960
+ "Protocol fee charged on junior tranche deposits"
1961
+ ];
1962
+ "type": {
1963
+ "defined": {
1964
+ "name": "number";
1965
+ };
1966
+ };
1967
+ },
1968
+ {
1969
+ "name": "seniorWithdrawProtocolFee";
1970
+ "docs": [
1971
+ "Protocol fee charged on senior tranche withdrawals"
1972
+ ];
1973
+ "type": {
1974
+ "defined": {
1975
+ "name": "number";
1976
+ };
1977
+ };
1978
+ },
1979
+ {
1980
+ "name": "juniorWithdrawProtocolFee";
1981
+ "docs": [
1982
+ "Protocol fee charged on junior tranche withdrawals"
1983
+ ];
1984
+ "type": {
1985
+ "defined": {
1986
+ "name": "number";
1987
+ };
1988
+ };
1989
+ }
1990
+ ];
1991
+ };
1992
+ },
1993
+ {
1994
+ "name": "tranchingRiskConfig";
1995
+ "type": {
1996
+ "kind": "struct";
1997
+ "fields": [
1998
+ {
1999
+ "name": "minCoverage";
2000
+ "docs": [
2001
+ "Minimum coverage requirement."
2002
+ ];
2003
+ "type": {
2004
+ "defined": {
2005
+ "name": "number";
2006
+ };
2007
+ };
2008
+ },
2009
+ {
2010
+ "name": "beta";
2011
+ "docs": [
2012
+ "Junior downside beta."
2013
+ ];
2014
+ "type": {
2015
+ "defined": {
2016
+ "name": "number";
2017
+ };
2018
+ };
2019
+ },
2020
+ {
2021
+ "name": "liquidationUtilization";
2022
+ "docs": [
2023
+ "Liquidation utilization threshold."
2024
+ ];
2025
+ "type": {
2026
+ "defined": {
2027
+ "name": "number";
2028
+ };
2029
+ };
2030
+ },
2031
+ {
2032
+ "name": "fixedTermDurationSec";
2033
+ "docs": [
2034
+ "Fixed-term observation period duration"
2035
+ ];
2036
+ "type": "u32";
2037
+ },
2038
+ {
2039
+ "name": "minDepositAmount";
2040
+ "docs": [
2041
+ "Min deposit amount in underlying units"
2042
+ ];
2043
+ "type": "u64";
2044
+ },
2045
+ {
2046
+ "name": "srSelfLiquidationBonus";
2047
+ "docs": [
2048
+ "Senior self-liquidation bonus."
2049
+ ];
2050
+ "type": {
2051
+ "defined": {
2052
+ "name": "number";
2053
+ };
2054
+ };
2055
+ },
2056
+ {
2057
+ "name": "srNetAssetDustTolerance";
2058
+ "docs": [
2059
+ "Senior NAV dust tolerance."
2060
+ ];
2061
+ "type": {
2062
+ "defined": {
2063
+ "name": "number";
2064
+ };
2065
+ };
2066
+ },
2067
+ {
2068
+ "name": "jrNetAssetDustTolerance";
2069
+ "docs": [
2070
+ "Junior NAV dust tolerance."
2071
+ ];
2072
+ "type": {
2073
+ "defined": {
2074
+ "name": "number";
2075
+ };
2076
+ };
2077
+ }
2078
+ ];
2079
+ };
2080
+ },
2081
+ {
2082
+ "name": "utilizationGuidedCurveParams";
2083
+ "type": {
2084
+ "kind": "struct";
2085
+ "fields": [
2086
+ {
2087
+ "name": "juniorShareAtTargetUtilization";
2088
+ "type": {
2089
+ "defined": {
2090
+ "name": "number";
2091
+ };
2092
+ };
2093
+ },
2094
+ {
2095
+ "name": "lastTargetShiftTs";
2096
+ "type": "i64";
2097
+ },
2098
+ {
2099
+ "name": "maxTargetShiftSpeed";
2100
+ "type": {
2101
+ "defined": {
2102
+ "name": "number";
2103
+ };
2104
+ };
2105
+ },
2106
+ {
2107
+ "name": "zeroUtilizationJuniorShareDiscount";
2108
+ "type": {
2109
+ "defined": {
2110
+ "name": "number";
2111
+ };
2112
+ };
2113
+ },
2114
+ {
2115
+ "name": "fullUtilizationJuniorSharePremium";
2116
+ "type": {
2117
+ "defined": {
2118
+ "name": "number";
2119
+ };
2120
+ };
2121
+ }
2122
+ ];
2123
+ };
2124
+ },
2125
+ {
2126
+ "name": "withdrawEvent";
2127
+ "type": {
2128
+ "kind": "struct";
2129
+ "fields": [
2130
+ {
2131
+ "name": "user";
2132
+ "type": "pubkey";
2133
+ },
2134
+ {
2135
+ "name": "market";
2136
+ "type": "pubkey";
2137
+ },
2138
+ {
2139
+ "name": "trancheSide";
2140
+ "type": {
2141
+ "defined": {
2142
+ "name": "trancheSide";
2143
+ };
2144
+ };
2145
+ },
2146
+ {
2147
+ "name": "tokenLpSrc";
2148
+ "type": "pubkey";
2149
+ },
2150
+ {
2151
+ "name": "tokenSyEscrow";
2152
+ "type": "pubkey";
2153
+ },
2154
+ {
2155
+ "name": "tokenDst";
2156
+ "type": "pubkey";
2157
+ },
2158
+ {
2159
+ "name": "mintLp";
2160
+ "type": "pubkey";
2161
+ },
2162
+ {
2163
+ "name": "lpAmountIn";
2164
+ "type": "u64";
2165
+ },
2166
+ {
2167
+ "name": "amountOut";
2168
+ "type": "u64";
2169
+ },
2170
+ {
2171
+ "name": "valueRedeemed";
2172
+ "type": {
2173
+ "defined": {
2174
+ "name": "number";
2175
+ };
2176
+ };
2177
+ },
2178
+ {
2179
+ "name": "newTotalLpSupply";
2180
+ "type": "u64";
2181
+ },
2182
+ {
2183
+ "name": "syExchangeRate";
2184
+ "type": {
2185
+ "defined": {
2186
+ "name": "number";
2187
+ };
2188
+ };
2189
+ },
2190
+ {
2191
+ "name": "seniorRawNav";
2192
+ "type": {
2193
+ "defined": {
2194
+ "name": "number";
2195
+ };
2196
+ };
2197
+ },
2198
+ {
2199
+ "name": "juniorRawNav";
2200
+ "type": {
2201
+ "defined": {
2202
+ "name": "number";
2203
+ };
2204
+ };
2205
+ },
2206
+ {
2207
+ "name": "seniorEffectiveNav";
2208
+ "type": {
2209
+ "defined": {
2210
+ "name": "number";
2211
+ };
2212
+ };
2213
+ },
2214
+ {
2215
+ "name": "juniorEffectiveNav";
2216
+ "type": {
2217
+ "defined": {
2218
+ "name": "number";
2219
+ };
2220
+ };
2221
+ },
2222
+ {
2223
+ "name": "seniorLoss";
2224
+ "type": {
2225
+ "defined": {
2226
+ "name": "number";
2227
+ };
2228
+ };
2229
+ },
2230
+ {
2231
+ "name": "juniorLoss";
2232
+ "type": {
2233
+ "defined": {
2234
+ "name": "number";
2235
+ };
2236
+ };
2237
+ },
2238
+ {
2239
+ "name": "seniorPremium";
2240
+ "type": {
2241
+ "defined": {
2242
+ "name": "number";
2243
+ };
2244
+ };
2245
+ },
2246
+ {
2247
+ "name": "juniorPremium";
2248
+ "type": {
2249
+ "defined": {
2250
+ "name": "number";
2251
+ };
2252
+ };
2253
+ },
2254
+ {
2255
+ "name": "utilization";
2256
+ "type": {
2257
+ "defined": {
2258
+ "name": "number";
2259
+ };
2260
+ };
2261
+ },
2262
+ {
2263
+ "name": "seniorLpPriceNetAsset";
2264
+ "type": {
2265
+ "defined": {
2266
+ "name": "number";
2267
+ };
2268
+ };
2269
+ },
2270
+ {
2271
+ "name": "juniorLpPriceNetAsset";
2272
+ "type": {
2273
+ "defined": {
2274
+ "name": "number";
2275
+ };
2276
+ };
2277
+ },
2278
+ {
2279
+ "name": "timestamp";
2280
+ "type": "i64";
2281
+ }
2282
+ ];
2283
+ };
2284
+ },
2285
+ {
2286
+ "name": "withdrawParams";
2287
+ "type": {
2288
+ "kind": "struct";
2289
+ "fields": [
2290
+ {
2291
+ "name": "trancheSide";
2292
+ "type": {
2293
+ "defined": {
2294
+ "name": "trancheSide";
2295
+ };
2296
+ };
2297
+ },
2298
+ {
2299
+ "name": "lpAmountIn";
2300
+ "type": "u64";
2301
+ },
2302
+ {
2303
+ "name": "minAmountOut";
2304
+ "type": "u64";
2305
+ }
2306
+ ];
2307
+ };
2308
+ },
2309
+ {
2310
+ "name": "wrapperDepositEvent";
2311
+ "type": {
2312
+ "kind": "struct";
2313
+ "fields": [
2314
+ {
2315
+ "name": "user";
2316
+ "type": "pubkey";
2317
+ },
2318
+ {
2319
+ "name": "market";
2320
+ "type": "pubkey";
2321
+ },
2322
+ {
2323
+ "name": "trancheSide";
2324
+ "type": {
2325
+ "defined": {
2326
+ "name": "trancheSide";
2327
+ };
2328
+ };
2329
+ },
2330
+ {
2331
+ "name": "amountBaseIn";
2332
+ "type": "u64";
2333
+ },
2334
+ {
2335
+ "name": "amountSyIn";
2336
+ "type": "u64";
2337
+ }
2338
+ ];
2339
+ };
2340
+ },
2341
+ {
2342
+ "name": "wrapperWithdrawEvent";
2343
+ "type": {
2344
+ "kind": "struct";
2345
+ "fields": [
2346
+ {
2347
+ "name": "user";
2348
+ "type": "pubkey";
2349
+ },
2350
+ {
2351
+ "name": "market";
2352
+ "type": "pubkey";
2353
+ },
2354
+ {
2355
+ "name": "trancheSide";
2356
+ "type": {
2357
+ "defined": {
2358
+ "name": "trancheSide";
2359
+ };
2360
+ };
2361
+ },
2362
+ {
2363
+ "name": "lpAmountIn";
2364
+ "type": "u64";
2365
+ },
2366
+ {
2367
+ "name": "amountBaseOut";
2368
+ "type": "u64";
2369
+ }
2370
+ ];
2371
+ };
2372
+ }
2373
+ ];
2374
+ "constants": [
2375
+ {
2376
+ "name": "marketReturnModelSeed";
2377
+ "type": "bytes";
2378
+ "value": "[109, 97, 114, 107, 101, 116, 95, 114, 101, 116, 117, 114, 110, 95, 109, 111, 100, 101, 108]";
2379
+ },
2380
+ {
2381
+ "name": "marketSeed";
2382
+ "type": "bytes";
2383
+ "value": "[109, 97, 114, 107, 101, 116]";
2384
+ },
2385
+ {
2386
+ "name": "tokenSyEscrowSeed";
2387
+ "type": "bytes";
2388
+ "value": "[116, 111, 107, 101, 110, 95, 115, 121, 95, 101, 115, 99, 114, 111, 119]";
2389
+ }
2390
+ ];
2391
+ };