@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
+ };