@exponent-labs/kamino-sy-idl 0.0.3

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,2887 @@
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/kamino_lend_standard.json`.
6
+ */
7
+ export type KaminoLendStandard = {
8
+ "address": "XPK1ndTK1xrgRg99ifvdPP1exrx8D1mRXTuxBkkroCx";
9
+ "metadata": {
10
+ "name": "kaminoLendStandard";
11
+ "version": "0.1.0";
12
+ "spec": "0.1.0";
13
+ "description": "Created with Anchor";
14
+ };
15
+ "instructions": [
16
+ {
17
+ "name": "addEmission";
18
+ "docs": [
19
+ "Admin action to add an emission"
20
+ ];
21
+ "discriminator": [
22
+ 4
23
+ ];
24
+ "accounts": [
25
+ {
26
+ "name": "signer";
27
+ "signer": true;
28
+ },
29
+ {
30
+ "name": "feePayer";
31
+ "writable": true;
32
+ "signer": true;
33
+ },
34
+ {
35
+ "name": "meta";
36
+ "writable": true;
37
+ },
38
+ {
39
+ "name": "emissionTokenAccount";
40
+ },
41
+ {
42
+ "name": "emissionMint";
43
+ },
44
+ {
45
+ "name": "systemProgram";
46
+ },
47
+ {
48
+ "name": "adminState";
49
+ }
50
+ ];
51
+ "args": [];
52
+ },
53
+ {
54
+ "name": "collectEmission";
55
+ "docs": [
56
+ "Collect emissions earned by a position"
57
+ ];
58
+ "discriminator": [
59
+ 8
60
+ ];
61
+ "accounts": [
62
+ {
63
+ "name": "owner";
64
+ "signer": true;
65
+ },
66
+ {
67
+ "name": "kaminoReserve";
68
+ },
69
+ {
70
+ "name": "meta";
71
+ "writable": true;
72
+ },
73
+ {
74
+ "name": "position";
75
+ "writable": true;
76
+ },
77
+ {
78
+ "name": "tokenEmissionEscrow";
79
+ "writable": true;
80
+ },
81
+ {
82
+ "name": "tokenEmissionSigner";
83
+ "docs": [
84
+ "Token account that receives emissions on behalf of the owner"
85
+ ];
86
+ "writable": true;
87
+ },
88
+ {
89
+ "name": "tokenProgram";
90
+ }
91
+ ];
92
+ "args": [
93
+ {
94
+ "name": "amount";
95
+ "type": {
96
+ "defined": {
97
+ "name": "amount";
98
+ };
99
+ };
100
+ }
101
+ ];
102
+ },
103
+ {
104
+ "name": "collectTreasuryEmission";
105
+ "docs": [
106
+ "Collect emissions that are in the treasury"
107
+ ];
108
+ "discriminator": [
109
+ 9
110
+ ];
111
+ "accounts": [
112
+ {
113
+ "name": "signer";
114
+ "writable": true;
115
+ "signer": true;
116
+ },
117
+ {
118
+ "name": "meta";
119
+ "writable": true;
120
+ },
121
+ {
122
+ "name": "emissionEscrowToken";
123
+ "writable": true;
124
+ },
125
+ {
126
+ "name": "emissionTokenAccount";
127
+ "docs": [
128
+ "Destination token account for the emission"
129
+ ];
130
+ "writable": true;
131
+ },
132
+ {
133
+ "name": "tokenProgram";
134
+ },
135
+ {
136
+ "name": "admin";
137
+ }
138
+ ];
139
+ "args": [
140
+ {
141
+ "name": "amount";
142
+ "type": {
143
+ "defined": {
144
+ "name": "amount";
145
+ };
146
+ };
147
+ }
148
+ ];
149
+ },
150
+ {
151
+ "name": "deposit";
152
+ "discriminator": [
153
+ 5
154
+ ];
155
+ "accounts": [
156
+ {
157
+ "name": "owner";
158
+ "writable": true;
159
+ "signer": true;
160
+ },
161
+ {
162
+ "name": "feePayer";
163
+ "writable": true;
164
+ "signer": true;
165
+ },
166
+ {
167
+ "name": "meta";
168
+ "writable": true;
169
+ },
170
+ {
171
+ "name": "kaminoReserve";
172
+ "writable": true;
173
+ },
174
+ {
175
+ "name": "position";
176
+ "writable": true;
177
+ },
178
+ {
179
+ "name": "mintSy";
180
+ "writable": true;
181
+ },
182
+ {
183
+ "name": "tokenSyEscrow";
184
+ "writable": true;
185
+ },
186
+ {
187
+ "name": "tokenSySigner";
188
+ "docs": [
189
+ "Token account owned by owner"
190
+ ];
191
+ "writable": true;
192
+ },
193
+ {
194
+ "name": "kaminoFarm";
195
+ "writable": true;
196
+ },
197
+ {
198
+ "name": "kaminoFarmVaultsAuthority";
199
+ },
200
+ {
201
+ "name": "kaminoGlobalConfig";
202
+ },
203
+ {
204
+ "name": "kaminoScopePrices";
205
+ },
206
+ {
207
+ "name": "userState";
208
+ "writable": true;
209
+ },
210
+ {
211
+ "name": "tokenProgram";
212
+ },
213
+ {
214
+ "name": "systemProgram";
215
+ },
216
+ {
217
+ "name": "kaminoFarmsProgram";
218
+ }
219
+ ];
220
+ "args": [
221
+ {
222
+ "name": "amount";
223
+ "type": "u64";
224
+ }
225
+ ];
226
+ "returns": {
227
+ "defined": {
228
+ "name": "syState";
229
+ };
230
+ };
231
+ },
232
+ {
233
+ "name": "getPosition";
234
+ "discriminator": [
235
+ 10
236
+ ];
237
+ "accounts": [
238
+ {
239
+ "name": "position";
240
+ "writable": true;
241
+ },
242
+ {
243
+ "name": "meta";
244
+ "writable": true;
245
+ },
246
+ {
247
+ "name": "mintSy";
248
+ },
249
+ {
250
+ "name": "tokenSyEscrow";
251
+ "writable": true;
252
+ },
253
+ {
254
+ "name": "kaminoReserve";
255
+ "writable": true;
256
+ },
257
+ {
258
+ "name": "kaminoFarm";
259
+ "writable": true;
260
+ },
261
+ {
262
+ "name": "kaminoFarmVaultsAuthority";
263
+ },
264
+ {
265
+ "name": "kaminoGlobalConfig";
266
+ },
267
+ {
268
+ "name": "kaminoScopePrices";
269
+ },
270
+ {
271
+ "name": "userState";
272
+ "writable": true;
273
+ },
274
+ {
275
+ "name": "kaminoFarmsProgram";
276
+ },
277
+ {
278
+ "name": "systemProgram";
279
+ }
280
+ ];
281
+ "args": [];
282
+ "returns": {
283
+ "defined": {
284
+ "name": "positionState";
285
+ };
286
+ };
287
+ },
288
+ {
289
+ "name": "getState";
290
+ "discriminator": [
291
+ 7
292
+ ];
293
+ "accounts": [
294
+ {
295
+ "name": "kaminoReserve";
296
+ "writable": true;
297
+ },
298
+ {
299
+ "name": "mintSy";
300
+ "writable": true;
301
+ },
302
+ {
303
+ "name": "tokenSyEscrow";
304
+ "writable": true;
305
+ },
306
+ {
307
+ "name": "kaminoFarm";
308
+ "writable": true;
309
+ },
310
+ {
311
+ "name": "kaminoFarmsProgram";
312
+ },
313
+ {
314
+ "name": "kaminoFarmVaultsAuthority";
315
+ },
316
+ {
317
+ "name": "kaminoGlobalConfig";
318
+ },
319
+ {
320
+ "name": "kaminoScopePrices";
321
+ },
322
+ {
323
+ "name": "userState";
324
+ "writable": true;
325
+ },
326
+ {
327
+ "name": "meta";
328
+ "writable": true;
329
+ }
330
+ ];
331
+ "args": [];
332
+ "returns": {
333
+ "defined": {
334
+ "name": "syState";
335
+ };
336
+ };
337
+ },
338
+ {
339
+ "name": "initSy";
340
+ "discriminator": [
341
+ 0
342
+ ];
343
+ "accounts": [
344
+ {
345
+ "name": "signer";
346
+ "signer": true;
347
+ },
348
+ {
349
+ "name": "feePayer";
350
+ "writable": true;
351
+ "signer": true;
352
+ },
353
+ {
354
+ "name": "userMetadata";
355
+ "writable": true;
356
+ },
357
+ {
358
+ "name": "userLookupTable";
359
+ },
360
+ {
361
+ "name": "rent";
362
+ },
363
+ {
364
+ "name": "systemProgram";
365
+ },
366
+ {
367
+ "name": "lendingMarket";
368
+ "writable": true;
369
+ },
370
+ {
371
+ "name": "obligation";
372
+ "writable": true;
373
+ },
374
+ {
375
+ "name": "obligationFarm";
376
+ "writable": true;
377
+ },
378
+ {
379
+ "name": "lendingMarketAuthority";
380
+ "writable": true;
381
+ },
382
+ {
383
+ "name": "reserveFarmState";
384
+ "writable": true;
385
+ },
386
+ {
387
+ "name": "reserve";
388
+ "writable": true;
389
+ },
390
+ {
391
+ "name": "kaminoLendProgram";
392
+ },
393
+ {
394
+ "name": "kaminoFarmsProgram";
395
+ },
396
+ {
397
+ "name": "meta";
398
+ "writable": true;
399
+ },
400
+ {
401
+ "name": "mintSy";
402
+ "writable": true;
403
+ },
404
+ {
405
+ "name": "accountAuthorityBaseToken";
406
+ "writable": true;
407
+ },
408
+ {
409
+ "name": "tokenReceiptPool";
410
+ "writable": true;
411
+ },
412
+ {
413
+ "name": "baseMint";
414
+ },
415
+ {
416
+ "name": "tokenProgramBase";
417
+ },
418
+ {
419
+ "name": "token22Program";
420
+ },
421
+ {
422
+ "name": "adminState";
423
+ },
424
+ {
425
+ "name": "tokenMetadataProgram";
426
+ },
427
+ {
428
+ "name": "metadata";
429
+ "writable": true;
430
+ }
431
+ ];
432
+ "args": [
433
+ {
434
+ "name": "minMintSize";
435
+ "type": "u64";
436
+ },
437
+ {
438
+ "name": "minRedeemSize";
439
+ "type": "u64";
440
+ },
441
+ {
442
+ "name": "maxSySupply";
443
+ "type": "u64";
444
+ },
445
+ {
446
+ "name": "name";
447
+ "type": "string";
448
+ },
449
+ {
450
+ "name": "symbol";
451
+ "type": "string";
452
+ },
453
+ {
454
+ "name": "uri";
455
+ "type": "string";
456
+ }
457
+ ];
458
+ },
459
+ {
460
+ "name": "initializePosition";
461
+ "discriminator": [
462
+ 3
463
+ ];
464
+ "accounts": [
465
+ {
466
+ "name": "feePayer";
467
+ "writable": true;
468
+ "signer": true;
469
+ },
470
+ {
471
+ "name": "owner";
472
+ },
473
+ {
474
+ "name": "kaminoReserve";
475
+ },
476
+ {
477
+ "name": "meta";
478
+ "writable": true;
479
+ },
480
+ {
481
+ "name": "position";
482
+ "writable": true;
483
+ },
484
+ {
485
+ "name": "systemProgram";
486
+ }
487
+ ];
488
+ "args": [];
489
+ },
490
+ {
491
+ "name": "mint";
492
+ "docs": [
493
+ "Mint SY by depositing base tokens into klend"
494
+ ];
495
+ "discriminator": [
496
+ 1
497
+ ];
498
+ "accounts": [
499
+ {
500
+ "name": "signer";
501
+ "writable": true;
502
+ "signer": true;
503
+ },
504
+ {
505
+ "name": "meta";
506
+ "writable": true;
507
+ },
508
+ {
509
+ "name": "lendingMarket";
510
+ "writable": true;
511
+ },
512
+ {
513
+ "name": "kaminoObligation";
514
+ "writable": true;
515
+ },
516
+ {
517
+ "name": "lendingMarketAuthority";
518
+ "writable": true;
519
+ },
520
+ {
521
+ "name": "kaminoReserve";
522
+ "writable": true;
523
+ },
524
+ {
525
+ "name": "mintSy";
526
+ "writable": true;
527
+ },
528
+ {
529
+ "name": "mintBase";
530
+ "writable": true;
531
+ },
532
+ {
533
+ "name": "tokenBaseAccountAuthority";
534
+ "writable": true;
535
+ },
536
+ {
537
+ "name": "tokenBaseSigner";
538
+ "writable": true;
539
+ },
540
+ {
541
+ "name": "tokenSySigner";
542
+ "writable": true;
543
+ },
544
+ {
545
+ "name": "token22Program";
546
+ },
547
+ {
548
+ "name": "tokenProgramBase";
549
+ },
550
+ {
551
+ "name": "kaminoLendProgram";
552
+ },
553
+ {
554
+ "name": "kaminoCollateralTokenProgram";
555
+ },
556
+ {
557
+ "name": "reserveCollateralMint";
558
+ "writable": true;
559
+ },
560
+ {
561
+ "name": "reserveDestinationDepositCollateral";
562
+ "writable": true;
563
+ },
564
+ {
565
+ "name": "reserveLiquiditySupply";
566
+ "writable": true;
567
+ },
568
+ {
569
+ "name": "instruction";
570
+ }
571
+ ];
572
+ "args": [
573
+ {
574
+ "name": "amount";
575
+ "type": "u64";
576
+ }
577
+ ];
578
+ "returns": {
579
+ "defined": {
580
+ "name": "mintSyReturnData";
581
+ };
582
+ };
583
+ },
584
+ {
585
+ "name": "redeem";
586
+ "discriminator": [
587
+ 2
588
+ ];
589
+ "accounts": [
590
+ {
591
+ "name": "signer";
592
+ "writable": true;
593
+ "signer": true;
594
+ },
595
+ {
596
+ "name": "meta";
597
+ "writable": true;
598
+ },
599
+ {
600
+ "name": "kaminoObligation";
601
+ "writable": true;
602
+ },
603
+ {
604
+ "name": "kaminoReserve";
605
+ "writable": true;
606
+ },
607
+ {
608
+ "name": "mintSy";
609
+ "writable": true;
610
+ },
611
+ {
612
+ "name": "lendingMarket";
613
+ "writable": true;
614
+ },
615
+ {
616
+ "name": "lendingMarketAuthority";
617
+ "writable": true;
618
+ },
619
+ {
620
+ "name": "mintBase";
621
+ "writable": true;
622
+ },
623
+ {
624
+ "name": "tokenBaseAccountAuthority";
625
+ "docs": [
626
+ "Pass-through account for the base token",
627
+ "base token withdrawn from kamino goes first to this account"
628
+ ];
629
+ "writable": true;
630
+ },
631
+ {
632
+ "name": "tokenBaseSigner";
633
+ "docs": [
634
+ "Token account to receive the base token from the redemption"
635
+ ];
636
+ "writable": true;
637
+ },
638
+ {
639
+ "name": "tokenSySigner";
640
+ "docs": [
641
+ "SY token account owned by the signer"
642
+ ];
643
+ "writable": true;
644
+ },
645
+ {
646
+ "name": "reserveCollateralMint";
647
+ "writable": true;
648
+ },
649
+ {
650
+ "name": "reserveSourceCollateral";
651
+ "writable": true;
652
+ },
653
+ {
654
+ "name": "reserveLiquiditySupply";
655
+ "writable": true;
656
+ },
657
+ {
658
+ "name": "instruction";
659
+ },
660
+ {
661
+ "name": "systemProgram";
662
+ },
663
+ {
664
+ "name": "tokenProgram";
665
+ },
666
+ {
667
+ "name": "tokenProgramBase";
668
+ },
669
+ {
670
+ "name": "kaminoLendProgram";
671
+ }
672
+ ];
673
+ "args": [
674
+ {
675
+ "name": "amount";
676
+ "type": "u64";
677
+ }
678
+ ];
679
+ "returns": {
680
+ "defined": {
681
+ "name": "redeemSyReturnData";
682
+ };
683
+ };
684
+ },
685
+ {
686
+ "name": "withdraw";
687
+ "discriminator": [
688
+ 6
689
+ ];
690
+ "accounts": [
691
+ {
692
+ "name": "owner";
693
+ "writable": true;
694
+ "signer": true;
695
+ },
696
+ {
697
+ "name": "feePayer";
698
+ "writable": true;
699
+ "signer": true;
700
+ },
701
+ {
702
+ "name": "systemProgram";
703
+ },
704
+ {
705
+ "name": "kaminoReserve";
706
+ "writable": true;
707
+ },
708
+ {
709
+ "name": "position";
710
+ "writable": true;
711
+ },
712
+ {
713
+ "name": "mintSy";
714
+ "writable": true;
715
+ },
716
+ {
717
+ "name": "tokenSyEscrow";
718
+ "writable": true;
719
+ },
720
+ {
721
+ "name": "meta";
722
+ "writable": true;
723
+ },
724
+ {
725
+ "name": "tokenSySigner";
726
+ "writable": true;
727
+ },
728
+ {
729
+ "name": "tokenProgram";
730
+ },
731
+ {
732
+ "name": "kaminoFarm";
733
+ "writable": true;
734
+ },
735
+ {
736
+ "name": "kaminoFarmsProgram";
737
+ },
738
+ {
739
+ "name": "kaminoFarmVaultsAuthority";
740
+ },
741
+ {
742
+ "name": "kaminoGlobalConfig";
743
+ },
744
+ {
745
+ "name": "kaminoScopePrices";
746
+ },
747
+ {
748
+ "name": "userState";
749
+ "writable": true;
750
+ }
751
+ ];
752
+ "args": [
753
+ {
754
+ "name": "amount";
755
+ "type": "u64";
756
+ }
757
+ ];
758
+ "returns": {
759
+ "defined": {
760
+ "name": "syState";
761
+ };
762
+ };
763
+ }
764
+ ];
765
+ "accounts": [
766
+ {
767
+ "name": "admin";
768
+ "discriminator": [
769
+ 244,
770
+ 158,
771
+ 220,
772
+ 65,
773
+ 8,
774
+ 73,
775
+ 4,
776
+ 65
777
+ ];
778
+ },
779
+ {
780
+ "name": "farmState";
781
+ "discriminator": [
782
+ 198,
783
+ 102,
784
+ 216,
785
+ 74,
786
+ 63,
787
+ 66,
788
+ 163,
789
+ 190
790
+ ];
791
+ },
792
+ {
793
+ "name": "lendingMarket";
794
+ "discriminator": [
795
+ 246,
796
+ 114,
797
+ 50,
798
+ 98,
799
+ 72,
800
+ 157,
801
+ 28,
802
+ 120
803
+ ];
804
+ },
805
+ {
806
+ "name": "obligation";
807
+ "discriminator": [
808
+ 168,
809
+ 206,
810
+ 141,
811
+ 106,
812
+ 88,
813
+ 76,
814
+ 172,
815
+ 167
816
+ ];
817
+ },
818
+ {
819
+ "name": "position";
820
+ "discriminator": [
821
+ 170,
822
+ 188,
823
+ 143,
824
+ 228,
825
+ 122,
826
+ 64,
827
+ 247,
828
+ 208
829
+ ];
830
+ },
831
+ {
832
+ "name": "reserve";
833
+ "discriminator": [
834
+ 43,
835
+ 242,
836
+ 204,
837
+ 202,
838
+ 26,
839
+ 247,
840
+ 59,
841
+ 127
842
+ ];
843
+ },
844
+ {
845
+ "name": "syMeta";
846
+ "discriminator": [
847
+ 254,
848
+ 147,
849
+ 136,
850
+ 16,
851
+ 163,
852
+ 203,
853
+ 98,
854
+ 93
855
+ ];
856
+ }
857
+ ];
858
+ "errors": [
859
+ {
860
+ "code": 6000;
861
+ "name": "mintAmountTooLow";
862
+ "msg": "Mint amount too low";
863
+ },
864
+ {
865
+ "code": 6001;
866
+ "name": "redeemAmountTooLow";
867
+ "msg": "Redeem amount too low";
868
+ },
869
+ {
870
+ "code": 6002;
871
+ "name": "sySupplyMismatch";
872
+ "msg": "Sy Supply should not be greater than obligation collateral";
873
+ }
874
+ ];
875
+ "types": [
876
+ {
877
+ "name": "admin";
878
+ "type": {
879
+ "kind": "struct";
880
+ "fields": [
881
+ {
882
+ "name": "uberAdmin";
883
+ "type": "pubkey";
884
+ },
885
+ {
886
+ "name": "proposedUberAdmin";
887
+ "type": {
888
+ "option": "pubkey";
889
+ };
890
+ },
891
+ {
892
+ "name": "principles";
893
+ "type": {
894
+ "defined": {
895
+ "name": "principles";
896
+ };
897
+ };
898
+ }
899
+ ];
900
+ };
901
+ },
902
+ {
903
+ "name": "amount";
904
+ "type": {
905
+ "kind": "enum";
906
+ "variants": [
907
+ {
908
+ "name": "all";
909
+ },
910
+ {
911
+ "name": "some";
912
+ "fields": [
913
+ "u64"
914
+ ];
915
+ }
916
+ ];
917
+ };
918
+ },
919
+ {
920
+ "name": "bigFractionBytes";
921
+ "serialization": "bytemuck";
922
+ "repr": {
923
+ "kind": "c";
924
+ };
925
+ "type": {
926
+ "kind": "struct";
927
+ "fields": [
928
+ {
929
+ "name": "value";
930
+ "type": {
931
+ "array": [
932
+ "u64",
933
+ 4
934
+ ];
935
+ };
936
+ },
937
+ {
938
+ "name": "padding";
939
+ "type": {
940
+ "array": [
941
+ "u64",
942
+ 2
943
+ ];
944
+ };
945
+ }
946
+ ];
947
+ };
948
+ },
949
+ {
950
+ "name": "borrowRateCurve";
951
+ "serialization": "bytemuckunsafe";
952
+ "repr": {
953
+ "kind": "c";
954
+ };
955
+ "type": {
956
+ "kind": "struct";
957
+ "fields": [
958
+ {
959
+ "name": "points";
960
+ "type": {
961
+ "array": [
962
+ {
963
+ "defined": {
964
+ "name": "curvePoint";
965
+ };
966
+ },
967
+ 11
968
+ ];
969
+ };
970
+ }
971
+ ];
972
+ };
973
+ },
974
+ {
975
+ "name": "curvePoint";
976
+ "serialization": "bytemuck";
977
+ "repr": {
978
+ "kind": "c";
979
+ };
980
+ "type": {
981
+ "kind": "struct";
982
+ "fields": [
983
+ {
984
+ "name": "utilizationRateBps";
985
+ "type": "u32";
986
+ },
987
+ {
988
+ "name": "borrowRateBps";
989
+ "type": "u32";
990
+ }
991
+ ];
992
+ };
993
+ },
994
+ {
995
+ "name": "elevationGroup";
996
+ "serialization": "bytemuck";
997
+ "repr": {
998
+ "kind": "c";
999
+ };
1000
+ "type": {
1001
+ "kind": "struct";
1002
+ "fields": [
1003
+ {
1004
+ "name": "maxLiquidationBonusBps";
1005
+ "type": "u16";
1006
+ },
1007
+ {
1008
+ "name": "id";
1009
+ "type": "u8";
1010
+ },
1011
+ {
1012
+ "name": "ltvPct";
1013
+ "type": "u8";
1014
+ },
1015
+ {
1016
+ "name": "liquidationThresholdPct";
1017
+ "type": "u8";
1018
+ },
1019
+ {
1020
+ "name": "allowNewLoans";
1021
+ "type": "u8";
1022
+ },
1023
+ {
1024
+ "name": "reserved";
1025
+ "type": {
1026
+ "array": [
1027
+ "u8",
1028
+ 2
1029
+ ];
1030
+ };
1031
+ },
1032
+ {
1033
+ "name": "padding";
1034
+ "type": {
1035
+ "array": [
1036
+ "u64",
1037
+ 8
1038
+ ];
1039
+ };
1040
+ }
1041
+ ];
1042
+ };
1043
+ },
1044
+ {
1045
+ "name": "farmState";
1046
+ "serialization": "bytemuckunsafe";
1047
+ "repr": {
1048
+ "kind": "c";
1049
+ };
1050
+ "type": {
1051
+ "kind": "struct";
1052
+ "fields": [
1053
+ {
1054
+ "name": "farmAdmin";
1055
+ "type": "pubkey";
1056
+ },
1057
+ {
1058
+ "name": "globalConfig";
1059
+ "type": "pubkey";
1060
+ },
1061
+ {
1062
+ "name": "token";
1063
+ "type": {
1064
+ "defined": {
1065
+ "name": "kamino_farms_cpi::state::farm_state::TokenInfo";
1066
+ };
1067
+ };
1068
+ },
1069
+ {
1070
+ "name": "rewardInfos";
1071
+ "type": {
1072
+ "array": [
1073
+ {
1074
+ "defined": {
1075
+ "name": "rewardInfo";
1076
+ };
1077
+ },
1078
+ 10
1079
+ ];
1080
+ };
1081
+ },
1082
+ {
1083
+ "name": "numRewardTokens";
1084
+ "type": "u64";
1085
+ },
1086
+ {
1087
+ "name": "numUsers";
1088
+ "type": "u64";
1089
+ },
1090
+ {
1091
+ "name": "totalStakedAmount";
1092
+ "type": "u64";
1093
+ },
1094
+ {
1095
+ "name": "farmVault";
1096
+ "type": "pubkey";
1097
+ },
1098
+ {
1099
+ "name": "farmVaultsAuthority";
1100
+ "type": "pubkey";
1101
+ },
1102
+ {
1103
+ "name": "farmVaultsAuthorityBump";
1104
+ "type": "u64";
1105
+ },
1106
+ {
1107
+ "name": "delegateAuthority";
1108
+ "type": "pubkey";
1109
+ },
1110
+ {
1111
+ "name": "timeUnit";
1112
+ "type": "u8";
1113
+ },
1114
+ {
1115
+ "name": "isFarmFrozen";
1116
+ "type": "u8";
1117
+ },
1118
+ {
1119
+ "name": "isFarmDelegated";
1120
+ "type": "u8";
1121
+ },
1122
+ {
1123
+ "name": "padding0";
1124
+ "type": {
1125
+ "array": [
1126
+ "u8",
1127
+ 5
1128
+ ];
1129
+ };
1130
+ },
1131
+ {
1132
+ "name": "withdrawAuthority";
1133
+ "type": "pubkey";
1134
+ },
1135
+ {
1136
+ "name": "depositWarmupPeriod";
1137
+ "type": "u32";
1138
+ },
1139
+ {
1140
+ "name": "withdrawalCooldownPeriod";
1141
+ "type": "u32";
1142
+ },
1143
+ {
1144
+ "name": "totalActiveStakeScaled";
1145
+ "type": "u128";
1146
+ },
1147
+ {
1148
+ "name": "totalPendingStakeScaled";
1149
+ "type": "u128";
1150
+ },
1151
+ {
1152
+ "name": "totalPendingAmount";
1153
+ "type": "u64";
1154
+ },
1155
+ {
1156
+ "name": "slashedAmountCurrent";
1157
+ "type": "u64";
1158
+ },
1159
+ {
1160
+ "name": "slashedAmountCumulative";
1161
+ "type": "u64";
1162
+ },
1163
+ {
1164
+ "name": "slashedAmountSpillAddress";
1165
+ "type": "pubkey";
1166
+ },
1167
+ {
1168
+ "name": "lockingMode";
1169
+ "type": "u64";
1170
+ },
1171
+ {
1172
+ "name": "lockingStartTimestamp";
1173
+ "type": "u64";
1174
+ },
1175
+ {
1176
+ "name": "lockingDuration";
1177
+ "type": "u64";
1178
+ },
1179
+ {
1180
+ "name": "lockingEarlyWithdrawalPenaltyBps";
1181
+ "type": "u64";
1182
+ },
1183
+ {
1184
+ "name": "depositCapAmount";
1185
+ "type": "u64";
1186
+ },
1187
+ {
1188
+ "name": "scopePrices";
1189
+ "type": "pubkey";
1190
+ },
1191
+ {
1192
+ "name": "scopeOraclePriceId";
1193
+ "type": "u64";
1194
+ },
1195
+ {
1196
+ "name": "scopeOracleMaxAge";
1197
+ "type": "u64";
1198
+ },
1199
+ {
1200
+ "name": "pendingFarmAdmin";
1201
+ "type": "pubkey";
1202
+ },
1203
+ {
1204
+ "name": "strategyId";
1205
+ "type": "pubkey";
1206
+ },
1207
+ {
1208
+ "name": "padding";
1209
+ "type": {
1210
+ "array": [
1211
+ "u64",
1212
+ 86
1213
+ ];
1214
+ };
1215
+ }
1216
+ ];
1217
+ };
1218
+ },
1219
+ {
1220
+ "name": "lastUpdate";
1221
+ "serialization": "bytemuckunsafe";
1222
+ "repr": {
1223
+ "kind": "c";
1224
+ };
1225
+ "type": {
1226
+ "kind": "struct";
1227
+ "fields": [
1228
+ {
1229
+ "name": "slot";
1230
+ "type": "u64";
1231
+ },
1232
+ {
1233
+ "name": "stale";
1234
+ "type": "u8";
1235
+ },
1236
+ {
1237
+ "name": "priceStatus";
1238
+ "type": "u8";
1239
+ },
1240
+ {
1241
+ "name": "placeholder";
1242
+ "type": {
1243
+ "array": [
1244
+ "u8",
1245
+ 6
1246
+ ];
1247
+ };
1248
+ }
1249
+ ];
1250
+ };
1251
+ },
1252
+ {
1253
+ "name": "lendingMarket";
1254
+ "serialization": "bytemuckunsafe";
1255
+ "repr": {
1256
+ "kind": "c";
1257
+ };
1258
+ "type": {
1259
+ "kind": "struct";
1260
+ "fields": [
1261
+ {
1262
+ "name": "version";
1263
+ "type": "u64";
1264
+ },
1265
+ {
1266
+ "name": "bumpSeed";
1267
+ "type": "u64";
1268
+ },
1269
+ {
1270
+ "name": "lendingMarketOwner";
1271
+ "type": "pubkey";
1272
+ },
1273
+ {
1274
+ "name": "lendingMarketOwnerCached";
1275
+ "type": "pubkey";
1276
+ },
1277
+ {
1278
+ "name": "quoteCurrency";
1279
+ "type": {
1280
+ "array": [
1281
+ "u8",
1282
+ 32
1283
+ ];
1284
+ };
1285
+ },
1286
+ {
1287
+ "name": "referralFeeBps";
1288
+ "type": "u16";
1289
+ },
1290
+ {
1291
+ "name": "emergencyMode";
1292
+ "type": "u8";
1293
+ },
1294
+ {
1295
+ "name": "autodeleverageEnabled";
1296
+ "type": "u8";
1297
+ },
1298
+ {
1299
+ "name": "borrowDisabled";
1300
+ "type": "u8";
1301
+ },
1302
+ {
1303
+ "name": "priceRefreshTriggerToMaxAgePct";
1304
+ "type": "u8";
1305
+ },
1306
+ {
1307
+ "name": "liquidationMaxDebtCloseFactorPct";
1308
+ "type": "u8";
1309
+ },
1310
+ {
1311
+ "name": "insolvencyRiskUnhealthyLtvPct";
1312
+ "type": "u8";
1313
+ },
1314
+ {
1315
+ "name": "minFullLiquidationValueThreshold";
1316
+ "type": "u64";
1317
+ },
1318
+ {
1319
+ "name": "maxLiquidatableDebtMarketValueAtOnce";
1320
+ "type": "u64";
1321
+ },
1322
+ {
1323
+ "name": "globalUnhealthyBorrowValue";
1324
+ "type": "u64";
1325
+ },
1326
+ {
1327
+ "name": "globalAllowedBorrowValue";
1328
+ "type": "u64";
1329
+ },
1330
+ {
1331
+ "name": "riskCouncil";
1332
+ "type": "pubkey";
1333
+ },
1334
+ {
1335
+ "name": "multiplierPointsTagBoost";
1336
+ "type": {
1337
+ "array": [
1338
+ "u8",
1339
+ 8
1340
+ ];
1341
+ };
1342
+ },
1343
+ {
1344
+ "name": "elevationGroups";
1345
+ "type": {
1346
+ "array": [
1347
+ {
1348
+ "defined": {
1349
+ "name": "elevationGroup";
1350
+ };
1351
+ },
1352
+ 32
1353
+ ];
1354
+ };
1355
+ },
1356
+ {
1357
+ "name": "elevationGroupPadding";
1358
+ "type": {
1359
+ "array": [
1360
+ "u64",
1361
+ 90
1362
+ ];
1363
+ };
1364
+ },
1365
+ {
1366
+ "name": "minNetValueInObligationSf";
1367
+ "type": "u128";
1368
+ },
1369
+ {
1370
+ "name": "padding1";
1371
+ "type": {
1372
+ "array": [
1373
+ "u64",
1374
+ 178
1375
+ ];
1376
+ };
1377
+ }
1378
+ ];
1379
+ };
1380
+ },
1381
+ {
1382
+ "name": "mintSyReturnData";
1383
+ "type": {
1384
+ "kind": "struct";
1385
+ "fields": [
1386
+ {
1387
+ "name": "syOutAmount";
1388
+ "type": "u64";
1389
+ },
1390
+ {
1391
+ "name": "exchangeRate";
1392
+ "type": {
1393
+ "defined": {
1394
+ "name": "number";
1395
+ };
1396
+ };
1397
+ }
1398
+ ];
1399
+ };
1400
+ },
1401
+ {
1402
+ "name": "number";
1403
+ "docs": [
1404
+ "High precision number, stored as 4 u64 words in little endian"
1405
+ ];
1406
+ "type": {
1407
+ "kind": "struct";
1408
+ "fields": [
1409
+ {
1410
+ "array": [
1411
+ "u64",
1412
+ 4
1413
+ ];
1414
+ }
1415
+ ];
1416
+ };
1417
+ },
1418
+ {
1419
+ "name": "obligation";
1420
+ "serialization": "bytemuckunsafe";
1421
+ "repr": {
1422
+ "kind": "c";
1423
+ };
1424
+ "type": {
1425
+ "kind": "struct";
1426
+ "fields": [
1427
+ {
1428
+ "name": "tag";
1429
+ "type": "u64";
1430
+ },
1431
+ {
1432
+ "name": "lastUpdate";
1433
+ "type": {
1434
+ "defined": {
1435
+ "name": "lastUpdate";
1436
+ };
1437
+ };
1438
+ },
1439
+ {
1440
+ "name": "lendingMarket";
1441
+ "type": "pubkey";
1442
+ },
1443
+ {
1444
+ "name": "owner";
1445
+ "type": "pubkey";
1446
+ },
1447
+ {
1448
+ "name": "deposits";
1449
+ "type": {
1450
+ "array": [
1451
+ {
1452
+ "defined": {
1453
+ "name": "obligationCollateral";
1454
+ };
1455
+ },
1456
+ 8
1457
+ ];
1458
+ };
1459
+ },
1460
+ {
1461
+ "name": "lowestReserveDepositLtv";
1462
+ "type": "u64";
1463
+ },
1464
+ {
1465
+ "name": "depositedValueSf";
1466
+ "type": "u128";
1467
+ },
1468
+ {
1469
+ "name": "borrows";
1470
+ "type": {
1471
+ "array": [
1472
+ {
1473
+ "defined": {
1474
+ "name": "obligationLiquidity";
1475
+ };
1476
+ },
1477
+ 5
1478
+ ];
1479
+ };
1480
+ },
1481
+ {
1482
+ "name": "borrowFactorAdjustedDebtValueSf";
1483
+ "type": "u128";
1484
+ },
1485
+ {
1486
+ "name": "borrowedAssetsMarketValueSf";
1487
+ "type": "u128";
1488
+ },
1489
+ {
1490
+ "name": "allowedBorrowValueSf";
1491
+ "type": "u128";
1492
+ },
1493
+ {
1494
+ "name": "unhealthyBorrowValueSf";
1495
+ "type": "u128";
1496
+ },
1497
+ {
1498
+ "name": "depositsAssetTiers";
1499
+ "type": {
1500
+ "array": [
1501
+ "u8",
1502
+ 8
1503
+ ];
1504
+ };
1505
+ },
1506
+ {
1507
+ "name": "borrowsAssetTiers";
1508
+ "type": {
1509
+ "array": [
1510
+ "u8",
1511
+ 5
1512
+ ];
1513
+ };
1514
+ },
1515
+ {
1516
+ "name": "elevationGroup";
1517
+ "type": "u8";
1518
+ },
1519
+ {
1520
+ "name": "numOfObsoleteReserves";
1521
+ "type": "u8";
1522
+ },
1523
+ {
1524
+ "name": "hasDebt";
1525
+ "type": "u8";
1526
+ },
1527
+ {
1528
+ "name": "referrer";
1529
+ "type": "pubkey";
1530
+ },
1531
+ {
1532
+ "name": "borrowingDisabled";
1533
+ "type": "u8";
1534
+ },
1535
+ {
1536
+ "name": "reserved";
1537
+ "type": {
1538
+ "array": [
1539
+ "u8",
1540
+ 7
1541
+ ];
1542
+ };
1543
+ },
1544
+ {
1545
+ "name": "highestBorrowFactorPct";
1546
+ "type": "u64";
1547
+ },
1548
+ {
1549
+ "name": "padding3";
1550
+ "type": {
1551
+ "array": [
1552
+ "u64",
1553
+ 126
1554
+ ];
1555
+ };
1556
+ }
1557
+ ];
1558
+ };
1559
+ },
1560
+ {
1561
+ "name": "obligationCollateral";
1562
+ "serialization": "bytemuckunsafe";
1563
+ "repr": {
1564
+ "kind": "c";
1565
+ };
1566
+ "type": {
1567
+ "kind": "struct";
1568
+ "fields": [
1569
+ {
1570
+ "name": "depositReserve";
1571
+ "type": "pubkey";
1572
+ },
1573
+ {
1574
+ "name": "depositedAmount";
1575
+ "type": "u64";
1576
+ },
1577
+ {
1578
+ "name": "marketValueSf";
1579
+ "type": "u128";
1580
+ },
1581
+ {
1582
+ "name": "borrowedAmountAgainstThisCollateralInElevationGroup";
1583
+ "type": "u64";
1584
+ },
1585
+ {
1586
+ "name": "padding";
1587
+ "type": {
1588
+ "array": [
1589
+ "u64",
1590
+ 9
1591
+ ];
1592
+ };
1593
+ }
1594
+ ];
1595
+ };
1596
+ },
1597
+ {
1598
+ "name": "obligationLiquidity";
1599
+ "serialization": "bytemuckunsafe";
1600
+ "repr": {
1601
+ "kind": "c";
1602
+ };
1603
+ "type": {
1604
+ "kind": "struct";
1605
+ "fields": [
1606
+ {
1607
+ "name": "borrowReserve";
1608
+ "type": "pubkey";
1609
+ },
1610
+ {
1611
+ "name": "cumulativeBorrowRateBsf";
1612
+ "type": {
1613
+ "defined": {
1614
+ "name": "bigFractionBytes";
1615
+ };
1616
+ };
1617
+ },
1618
+ {
1619
+ "name": "padding";
1620
+ "type": "u64";
1621
+ },
1622
+ {
1623
+ "name": "borrowedAmountSf";
1624
+ "type": "u128";
1625
+ },
1626
+ {
1627
+ "name": "marketValueSf";
1628
+ "type": "u128";
1629
+ },
1630
+ {
1631
+ "name": "borrowFactorAdjustedMarketValueSf";
1632
+ "type": "u128";
1633
+ },
1634
+ {
1635
+ "name": "borrowedAmountOutsideElevationGroups";
1636
+ "type": "u64";
1637
+ },
1638
+ {
1639
+ "name": "padding2";
1640
+ "type": {
1641
+ "array": [
1642
+ "u64",
1643
+ 7
1644
+ ];
1645
+ };
1646
+ }
1647
+ ];
1648
+ };
1649
+ },
1650
+ {
1651
+ "name": "position";
1652
+ "type": {
1653
+ "kind": "struct";
1654
+ "fields": [
1655
+ {
1656
+ "name": "owner";
1657
+ "docs": [
1658
+ "Owner of the position"
1659
+ ];
1660
+ "type": "pubkey";
1661
+ },
1662
+ {
1663
+ "name": "kaminoReserve";
1664
+ "docs": [
1665
+ "Link to Kamino reserve"
1666
+ ];
1667
+ "type": "pubkey";
1668
+ },
1669
+ {
1670
+ "name": "amount";
1671
+ "docs": [
1672
+ "Amount of SY deposited"
1673
+ ];
1674
+ "type": "u64";
1675
+ },
1676
+ {
1677
+ "name": "rewardIndexes";
1678
+ "docs": [
1679
+ "List of rewards"
1680
+ ];
1681
+ "type": {
1682
+ "vec": {
1683
+ "defined": {
1684
+ "name": "reward";
1685
+ };
1686
+ };
1687
+ };
1688
+ }
1689
+ ];
1690
+ };
1691
+ },
1692
+ {
1693
+ "name": "positionState";
1694
+ "type": {
1695
+ "kind": "struct";
1696
+ "fields": [
1697
+ {
1698
+ "name": "owner";
1699
+ "type": "pubkey";
1700
+ },
1701
+ {
1702
+ "name": "syBalance";
1703
+ "type": "u64";
1704
+ },
1705
+ {
1706
+ "name": "emissions";
1707
+ "type": {
1708
+ "vec": {
1709
+ "defined": {
1710
+ "name": "sy_common::Emission";
1711
+ };
1712
+ };
1713
+ };
1714
+ }
1715
+ ];
1716
+ };
1717
+ },
1718
+ {
1719
+ "name": "priceHeuristic";
1720
+ "serialization": "bytemuck";
1721
+ "repr": {
1722
+ "kind": "c";
1723
+ };
1724
+ "type": {
1725
+ "kind": "struct";
1726
+ "fields": [
1727
+ {
1728
+ "name": "lower";
1729
+ "type": "u64";
1730
+ },
1731
+ {
1732
+ "name": "upper";
1733
+ "type": "u64";
1734
+ },
1735
+ {
1736
+ "name": "exp";
1737
+ "type": "u64";
1738
+ }
1739
+ ];
1740
+ };
1741
+ },
1742
+ {
1743
+ "name": "principleDetails";
1744
+ "type": {
1745
+ "kind": "struct";
1746
+ "fields": [
1747
+ {
1748
+ "name": "administrators";
1749
+ "type": {
1750
+ "vec": "pubkey";
1751
+ };
1752
+ }
1753
+ ];
1754
+ };
1755
+ },
1756
+ {
1757
+ "name": "principles";
1758
+ "type": {
1759
+ "kind": "struct";
1760
+ "fields": [
1761
+ {
1762
+ "name": "marginfiStandard";
1763
+ "type": {
1764
+ "defined": {
1765
+ "name": "principleDetails";
1766
+ };
1767
+ };
1768
+ },
1769
+ {
1770
+ "name": "collectTreasury";
1771
+ "type": {
1772
+ "defined": {
1773
+ "name": "principleDetails";
1774
+ };
1775
+ };
1776
+ },
1777
+ {
1778
+ "name": "kaminoLendStandard";
1779
+ "type": {
1780
+ "defined": {
1781
+ "name": "principleDetails";
1782
+ };
1783
+ };
1784
+ },
1785
+ {
1786
+ "name": "exponentCore";
1787
+ "type": {
1788
+ "defined": {
1789
+ "name": "principleDetails";
1790
+ };
1791
+ };
1792
+ },
1793
+ {
1794
+ "name": "changeStatusFlags";
1795
+ "type": {
1796
+ "defined": {
1797
+ "name": "principleDetails";
1798
+ };
1799
+ };
1800
+ },
1801
+ {
1802
+ "name": "jitoRestaking";
1803
+ "type": {
1804
+ "defined": {
1805
+ "name": "principleDetails";
1806
+ };
1807
+ };
1808
+ }
1809
+ ];
1810
+ };
1811
+ },
1812
+ {
1813
+ "name": "pythConfiguration";
1814
+ "serialization": "bytemuck";
1815
+ "repr": {
1816
+ "kind": "transparent";
1817
+ };
1818
+ "type": {
1819
+ "kind": "struct";
1820
+ "fields": [
1821
+ {
1822
+ "name": "price";
1823
+ "type": "pubkey";
1824
+ }
1825
+ ];
1826
+ };
1827
+ },
1828
+ {
1829
+ "name": "redeemSyReturnData";
1830
+ "type": {
1831
+ "kind": "struct";
1832
+ "fields": [
1833
+ {
1834
+ "name": "baseOutAmount";
1835
+ "type": "u64";
1836
+ },
1837
+ {
1838
+ "name": "exchangeRate";
1839
+ "type": {
1840
+ "defined": {
1841
+ "name": "number";
1842
+ };
1843
+ };
1844
+ }
1845
+ ];
1846
+ };
1847
+ },
1848
+ {
1849
+ "name": "reserve";
1850
+ "serialization": "bytemuckunsafe";
1851
+ "repr": {
1852
+ "kind": "c";
1853
+ };
1854
+ "type": {
1855
+ "kind": "struct";
1856
+ "fields": [
1857
+ {
1858
+ "name": "version";
1859
+ "type": "u64";
1860
+ },
1861
+ {
1862
+ "name": "lastUpdate";
1863
+ "type": {
1864
+ "defined": {
1865
+ "name": "lastUpdate";
1866
+ };
1867
+ };
1868
+ },
1869
+ {
1870
+ "name": "lendingMarket";
1871
+ "type": "pubkey";
1872
+ },
1873
+ {
1874
+ "name": "farmCollateral";
1875
+ "type": "pubkey";
1876
+ },
1877
+ {
1878
+ "name": "farmDebt";
1879
+ "type": "pubkey";
1880
+ },
1881
+ {
1882
+ "name": "liquidity";
1883
+ "type": {
1884
+ "defined": {
1885
+ "name": "reserveLiquidity";
1886
+ };
1887
+ };
1888
+ },
1889
+ {
1890
+ "name": "reserveLiquidityPadding";
1891
+ "type": {
1892
+ "array": [
1893
+ "u64",
1894
+ 150
1895
+ ];
1896
+ };
1897
+ },
1898
+ {
1899
+ "name": "collateral";
1900
+ "type": {
1901
+ "defined": {
1902
+ "name": "reserveCollateral";
1903
+ };
1904
+ };
1905
+ },
1906
+ {
1907
+ "name": "reserveCollateralPadding";
1908
+ "type": {
1909
+ "array": [
1910
+ "u64",
1911
+ 150
1912
+ ];
1913
+ };
1914
+ },
1915
+ {
1916
+ "name": "config";
1917
+ "type": {
1918
+ "defined": {
1919
+ "name": "reserveConfig";
1920
+ };
1921
+ };
1922
+ },
1923
+ {
1924
+ "name": "configPadding";
1925
+ "type": {
1926
+ "array": [
1927
+ "u64",
1928
+ 117
1929
+ ];
1930
+ };
1931
+ },
1932
+ {
1933
+ "name": "borrowedAmountOutsideElevationGroup";
1934
+ "type": "u64";
1935
+ },
1936
+ {
1937
+ "name": "borrowedAmountsAgainstThisReserveInElevationGroups";
1938
+ "type": {
1939
+ "array": [
1940
+ "u64",
1941
+ 32
1942
+ ];
1943
+ };
1944
+ },
1945
+ {
1946
+ "name": "padding";
1947
+ "type": {
1948
+ "array": [
1949
+ "u64",
1950
+ 207
1951
+ ];
1952
+ };
1953
+ }
1954
+ ];
1955
+ };
1956
+ },
1957
+ {
1958
+ "name": "reserveCollateral";
1959
+ "serialization": "bytemuckunsafe";
1960
+ "repr": {
1961
+ "kind": "c";
1962
+ };
1963
+ "type": {
1964
+ "kind": "struct";
1965
+ "fields": [
1966
+ {
1967
+ "name": "mintPubkey";
1968
+ "type": "pubkey";
1969
+ },
1970
+ {
1971
+ "name": "mintTotalSupply";
1972
+ "type": "u64";
1973
+ },
1974
+ {
1975
+ "name": "supplyVault";
1976
+ "type": "pubkey";
1977
+ },
1978
+ {
1979
+ "name": "padding1";
1980
+ "type": {
1981
+ "array": [
1982
+ "u128",
1983
+ 32
1984
+ ];
1985
+ };
1986
+ },
1987
+ {
1988
+ "name": "padding2";
1989
+ "type": {
1990
+ "array": [
1991
+ "u128",
1992
+ 32
1993
+ ];
1994
+ };
1995
+ }
1996
+ ];
1997
+ };
1998
+ },
1999
+ {
2000
+ "name": "reserveConfig";
2001
+ "serialization": "bytemuckunsafe";
2002
+ "repr": {
2003
+ "kind": "c";
2004
+ };
2005
+ "type": {
2006
+ "kind": "struct";
2007
+ "fields": [
2008
+ {
2009
+ "name": "status";
2010
+ "type": "u8";
2011
+ },
2012
+ {
2013
+ "name": "assetTier";
2014
+ "type": "u8";
2015
+ },
2016
+ {
2017
+ "name": "hostFixedInterestRateBps";
2018
+ "type": "u16";
2019
+ },
2020
+ {
2021
+ "name": "reserved2";
2022
+ "type": {
2023
+ "array": [
2024
+ "u8",
2025
+ 2
2026
+ ];
2027
+ };
2028
+ },
2029
+ {
2030
+ "name": "reserved3";
2031
+ "type": {
2032
+ "array": [
2033
+ "u8",
2034
+ 8
2035
+ ];
2036
+ };
2037
+ },
2038
+ {
2039
+ "name": "protocolTakeRatePct";
2040
+ "type": "u8";
2041
+ },
2042
+ {
2043
+ "name": "protocolLiquidationFeePct";
2044
+ "type": "u8";
2045
+ },
2046
+ {
2047
+ "name": "loanToValuePct";
2048
+ "type": "u8";
2049
+ },
2050
+ {
2051
+ "name": "liquidationThresholdPct";
2052
+ "type": "u8";
2053
+ },
2054
+ {
2055
+ "name": "minLiquidationBonusBps";
2056
+ "type": "u16";
2057
+ },
2058
+ {
2059
+ "name": "maxLiquidationBonusBps";
2060
+ "type": "u16";
2061
+ },
2062
+ {
2063
+ "name": "badDebtLiquidationBonusBps";
2064
+ "type": "u16";
2065
+ },
2066
+ {
2067
+ "name": "deleveragingMarginCallPeriodSecs";
2068
+ "type": "u64";
2069
+ },
2070
+ {
2071
+ "name": "deleveragingThresholdSlotsPerBps";
2072
+ "type": "u64";
2073
+ },
2074
+ {
2075
+ "name": "fees";
2076
+ "type": {
2077
+ "defined": {
2078
+ "name": "reserveFees";
2079
+ };
2080
+ };
2081
+ },
2082
+ {
2083
+ "name": "borrowRateCurve";
2084
+ "type": {
2085
+ "defined": {
2086
+ "name": "borrowRateCurve";
2087
+ };
2088
+ };
2089
+ },
2090
+ {
2091
+ "name": "borrowFactorPct";
2092
+ "type": "u64";
2093
+ },
2094
+ {
2095
+ "name": "depositLimit";
2096
+ "type": "u64";
2097
+ },
2098
+ {
2099
+ "name": "borrowLimit";
2100
+ "type": "u64";
2101
+ },
2102
+ {
2103
+ "name": "tokenInfo";
2104
+ "type": {
2105
+ "defined": {
2106
+ "name": "kamino_lend_cpi::state::reserve::TokenInfo";
2107
+ };
2108
+ };
2109
+ },
2110
+ {
2111
+ "name": "depositWithdrawalCap";
2112
+ "type": {
2113
+ "defined": {
2114
+ "name": "withdrawalCaps";
2115
+ };
2116
+ };
2117
+ },
2118
+ {
2119
+ "name": "debtWithdrawalCap";
2120
+ "type": {
2121
+ "defined": {
2122
+ "name": "withdrawalCaps";
2123
+ };
2124
+ };
2125
+ },
2126
+ {
2127
+ "name": "elevationGroups";
2128
+ "type": {
2129
+ "array": [
2130
+ "u8",
2131
+ 20
2132
+ ];
2133
+ };
2134
+ },
2135
+ {
2136
+ "name": "disableUsageAsCollOutsideEmode";
2137
+ "type": "u8";
2138
+ },
2139
+ {
2140
+ "name": "utilizationLimitBlockBorrowingAbove";
2141
+ "type": "u8";
2142
+ },
2143
+ {
2144
+ "name": "reserved1";
2145
+ "type": {
2146
+ "array": [
2147
+ "u8",
2148
+ 2
2149
+ ];
2150
+ };
2151
+ },
2152
+ {
2153
+ "name": "borrowLimitOutsideElevationGroup";
2154
+ "type": "u64";
2155
+ },
2156
+ {
2157
+ "name": "borrowLimitAgainstThisCollateralInElevationGroup";
2158
+ "type": {
2159
+ "array": [
2160
+ "u64",
2161
+ 32
2162
+ ];
2163
+ };
2164
+ }
2165
+ ];
2166
+ };
2167
+ },
2168
+ {
2169
+ "name": "reserveFees";
2170
+ "serialization": "bytemuckunsafe";
2171
+ "repr": {
2172
+ "kind": "c";
2173
+ };
2174
+ "type": {
2175
+ "kind": "struct";
2176
+ "fields": [
2177
+ {
2178
+ "name": "borrowFeeSf";
2179
+ "type": "u64";
2180
+ },
2181
+ {
2182
+ "name": "flashLoanFeeSf";
2183
+ "type": "u64";
2184
+ },
2185
+ {
2186
+ "name": "padding";
2187
+ "type": {
2188
+ "array": [
2189
+ "u8",
2190
+ 8
2191
+ ];
2192
+ };
2193
+ }
2194
+ ];
2195
+ };
2196
+ },
2197
+ {
2198
+ "name": "reserveLiquidity";
2199
+ "serialization": "bytemuckunsafe";
2200
+ "repr": {
2201
+ "kind": "c";
2202
+ };
2203
+ "type": {
2204
+ "kind": "struct";
2205
+ "fields": [
2206
+ {
2207
+ "name": "mintPubkey";
2208
+ "type": "pubkey";
2209
+ },
2210
+ {
2211
+ "name": "supplyVault";
2212
+ "type": "pubkey";
2213
+ },
2214
+ {
2215
+ "name": "feeVault";
2216
+ "type": "pubkey";
2217
+ },
2218
+ {
2219
+ "name": "availableAmount";
2220
+ "type": "u64";
2221
+ },
2222
+ {
2223
+ "name": "borrowedAmountSf";
2224
+ "type": "u128";
2225
+ },
2226
+ {
2227
+ "name": "marketPriceSf";
2228
+ "type": "u128";
2229
+ },
2230
+ {
2231
+ "name": "marketPriceLastUpdatedTs";
2232
+ "type": "u64";
2233
+ },
2234
+ {
2235
+ "name": "mintDecimals";
2236
+ "type": "u64";
2237
+ },
2238
+ {
2239
+ "name": "depositLimitCrossedSlot";
2240
+ "type": "u64";
2241
+ },
2242
+ {
2243
+ "name": "borrowLimitCrossedSlot";
2244
+ "type": "u64";
2245
+ },
2246
+ {
2247
+ "name": "cumulativeBorrowRateBsf";
2248
+ "type": {
2249
+ "defined": {
2250
+ "name": "bigFractionBytes";
2251
+ };
2252
+ };
2253
+ },
2254
+ {
2255
+ "name": "accumulatedProtocolFeesSf";
2256
+ "type": "u128";
2257
+ },
2258
+ {
2259
+ "name": "accumulatedReferrerFeesSf";
2260
+ "type": "u128";
2261
+ },
2262
+ {
2263
+ "name": "pendingReferrerFeesSf";
2264
+ "type": "u128";
2265
+ },
2266
+ {
2267
+ "name": "absoluteReferralRateSf";
2268
+ "type": "u128";
2269
+ },
2270
+ {
2271
+ "name": "tokenProgram";
2272
+ "type": "pubkey";
2273
+ },
2274
+ {
2275
+ "name": "padding2";
2276
+ "type": {
2277
+ "array": [
2278
+ "u64",
2279
+ 51
2280
+ ];
2281
+ };
2282
+ },
2283
+ {
2284
+ "name": "padding3";
2285
+ "type": {
2286
+ "array": [
2287
+ "u128",
2288
+ 32
2289
+ ];
2290
+ };
2291
+ }
2292
+ ];
2293
+ };
2294
+ },
2295
+ {
2296
+ "name": "reward";
2297
+ "type": {
2298
+ "kind": "struct";
2299
+ "fields": [
2300
+ {
2301
+ "name": "mint";
2302
+ "docs": [
2303
+ "Mint of emission token"
2304
+ ];
2305
+ "type": "pubkey";
2306
+ },
2307
+ {
2308
+ "name": "lastSeenShareIndex";
2309
+ "docs": [
2310
+ "Last seen share index from the global SyMeta tracker"
2311
+ ];
2312
+ "type": {
2313
+ "defined": {
2314
+ "name": "number";
2315
+ };
2316
+ };
2317
+ },
2318
+ {
2319
+ "name": "claimableRewardsAmount";
2320
+ "docs": [
2321
+ "How many rewards are staged"
2322
+ ];
2323
+ "type": "u64";
2324
+ }
2325
+ ];
2326
+ };
2327
+ },
2328
+ {
2329
+ "name": "rewardInfo";
2330
+ "serialization": "bytemuck";
2331
+ "repr": {
2332
+ "kind": "c";
2333
+ };
2334
+ "type": {
2335
+ "kind": "struct";
2336
+ "fields": [
2337
+ {
2338
+ "name": "token";
2339
+ "type": {
2340
+ "defined": {
2341
+ "name": "kamino_farms_cpi::state::farm_state::TokenInfo";
2342
+ };
2343
+ };
2344
+ },
2345
+ {
2346
+ "name": "rewardsVault";
2347
+ "type": "pubkey";
2348
+ },
2349
+ {
2350
+ "name": "rewardsAvailable";
2351
+ "type": "u64";
2352
+ },
2353
+ {
2354
+ "name": "rewardScheduleCurve";
2355
+ "type": {
2356
+ "defined": {
2357
+ "name": "rewardScheduleCurve";
2358
+ };
2359
+ };
2360
+ },
2361
+ {
2362
+ "name": "minClaimDurationSeconds";
2363
+ "type": "u64";
2364
+ },
2365
+ {
2366
+ "name": "lastIssuanceTs";
2367
+ "type": "u64";
2368
+ },
2369
+ {
2370
+ "name": "rewardsIssuedUnclaimed";
2371
+ "type": "u64";
2372
+ },
2373
+ {
2374
+ "name": "rewardsIssuedCumulative";
2375
+ "type": "u64";
2376
+ },
2377
+ {
2378
+ "name": "rewardPerShareScaled";
2379
+ "type": "u128";
2380
+ },
2381
+ {
2382
+ "name": "placeholder0";
2383
+ "type": "u64";
2384
+ },
2385
+ {
2386
+ "name": "rewardType";
2387
+ "type": "u8";
2388
+ },
2389
+ {
2390
+ "name": "rewardsPerSecondDecimals";
2391
+ "type": "u8";
2392
+ },
2393
+ {
2394
+ "name": "padding0";
2395
+ "type": {
2396
+ "array": [
2397
+ "u8",
2398
+ 6
2399
+ ];
2400
+ };
2401
+ },
2402
+ {
2403
+ "name": "padding1";
2404
+ "type": {
2405
+ "array": [
2406
+ "u64",
2407
+ 20
2408
+ ];
2409
+ };
2410
+ }
2411
+ ];
2412
+ };
2413
+ },
2414
+ {
2415
+ "name": "rewardPerTimeUnitPoint";
2416
+ "repr": {
2417
+ "kind": "c";
2418
+ };
2419
+ "type": {
2420
+ "kind": "struct";
2421
+ "fields": [
2422
+ {
2423
+ "name": "tsStart";
2424
+ "type": "u64";
2425
+ },
2426
+ {
2427
+ "name": "rewardPerTimeUnit";
2428
+ "type": "u64";
2429
+ }
2430
+ ];
2431
+ };
2432
+ },
2433
+ {
2434
+ "name": "rewardScheduleCurve";
2435
+ "repr": {
2436
+ "kind": "c";
2437
+ };
2438
+ "type": {
2439
+ "kind": "struct";
2440
+ "fields": [
2441
+ {
2442
+ "name": "points";
2443
+ "type": {
2444
+ "array": [
2445
+ {
2446
+ "defined": {
2447
+ "name": "rewardPerTimeUnitPoint";
2448
+ };
2449
+ },
2450
+ 20
2451
+ ];
2452
+ };
2453
+ }
2454
+ ];
2455
+ };
2456
+ },
2457
+ {
2458
+ "name": "scopeConfiguration";
2459
+ "serialization": "bytemuck";
2460
+ "repr": {
2461
+ "kind": "c";
2462
+ };
2463
+ "type": {
2464
+ "kind": "struct";
2465
+ "fields": [
2466
+ {
2467
+ "name": "priceFeed";
2468
+ "type": "pubkey";
2469
+ },
2470
+ {
2471
+ "name": "priceChain";
2472
+ "type": {
2473
+ "array": [
2474
+ "u16",
2475
+ 4
2476
+ ];
2477
+ };
2478
+ },
2479
+ {
2480
+ "name": "twapChain";
2481
+ "type": {
2482
+ "array": [
2483
+ "u16",
2484
+ 4
2485
+ ];
2486
+ };
2487
+ }
2488
+ ];
2489
+ };
2490
+ },
2491
+ {
2492
+ "name": "switchboardConfiguration";
2493
+ "serialization": "bytemuck";
2494
+ "repr": {
2495
+ "kind": "c";
2496
+ };
2497
+ "type": {
2498
+ "kind": "struct";
2499
+ "fields": [
2500
+ {
2501
+ "name": "priceAggregator";
2502
+ "type": "pubkey";
2503
+ },
2504
+ {
2505
+ "name": "twapAggregator";
2506
+ "type": "pubkey";
2507
+ }
2508
+ ];
2509
+ };
2510
+ },
2511
+ {
2512
+ "name": "syMeta";
2513
+ "type": {
2514
+ "kind": "struct";
2515
+ "fields": [
2516
+ {
2517
+ "name": "selfAddressBump";
2518
+ "docs": [
2519
+ "Sy meta bump"
2520
+ ];
2521
+ "type": {
2522
+ "array": [
2523
+ "u8",
2524
+ 1
2525
+ ];
2526
+ };
2527
+ },
2528
+ {
2529
+ "name": "kaminoReserve";
2530
+ "docs": [
2531
+ "Kamino Reserve ID"
2532
+ ];
2533
+ "type": "pubkey";
2534
+ },
2535
+ {
2536
+ "name": "kaminoObligation";
2537
+ "docs": [
2538
+ "Kamino obligation ID"
2539
+ ];
2540
+ "type": "pubkey";
2541
+ },
2542
+ {
2543
+ "name": "kaminoFarm";
2544
+ "docs": [
2545
+ "Kamino Farm ID"
2546
+ ];
2547
+ "type": "pubkey";
2548
+ },
2549
+ {
2550
+ "name": "kaminoUserMetadata";
2551
+ "docs": [
2552
+ "Kamino user state ID"
2553
+ ];
2554
+ "type": "pubkey";
2555
+ },
2556
+ {
2557
+ "name": "mintSy";
2558
+ "docs": [
2559
+ "Mint for the SY token"
2560
+ ];
2561
+ "type": "pubkey";
2562
+ },
2563
+ {
2564
+ "name": "tokenSyEscrow";
2565
+ "docs": [
2566
+ "Escrow account where SY gets deposited"
2567
+ ];
2568
+ "type": "pubkey";
2569
+ },
2570
+ {
2571
+ "name": "maxSySupply";
2572
+ "docs": [
2573
+ "Maximum supply of SY tokens"
2574
+ ];
2575
+ "type": "u64";
2576
+ },
2577
+ {
2578
+ "name": "minMintSize";
2579
+ "docs": [
2580
+ "Minimum size of SY tokens that can be made from minting",
2581
+ "This is to prevent dust from being minted, or from rounding errors"
2582
+ ];
2583
+ "type": "u64";
2584
+ },
2585
+ {
2586
+ "name": "minRedeemSize";
2587
+ "docs": [
2588
+ "Minimum size of SY tokens that can be redeemed",
2589
+ "This is to prevent dust from being redeemed, or from rounding errors"
2590
+ ];
2591
+ "type": "u64";
2592
+ },
2593
+ {
2594
+ "name": "userState";
2595
+ "docs": [
2596
+ "The ID for the Kamino Farms obligation Farm (Farm for the obligation)"
2597
+ ];
2598
+ "type": "pubkey";
2599
+ },
2600
+ {
2601
+ "name": "emissions";
2602
+ "docs": [
2603
+ "List of emissions"
2604
+ ];
2605
+ "type": {
2606
+ "vec": {
2607
+ "defined": {
2608
+ "name": "kamino_lend_standard::state::sy_meta::Emission";
2609
+ };
2610
+ };
2611
+ };
2612
+ }
2613
+ ];
2614
+ };
2615
+ },
2616
+ {
2617
+ "name": "syState";
2618
+ "type": {
2619
+ "kind": "struct";
2620
+ "fields": [
2621
+ {
2622
+ "name": "exchangeRate";
2623
+ "type": {
2624
+ "defined": {
2625
+ "name": "number";
2626
+ };
2627
+ };
2628
+ },
2629
+ {
2630
+ "name": "emissionIndexes";
2631
+ "type": {
2632
+ "vec": {
2633
+ "defined": {
2634
+ "name": "number";
2635
+ };
2636
+ };
2637
+ };
2638
+ }
2639
+ ];
2640
+ };
2641
+ },
2642
+ {
2643
+ "name": "withdrawalCaps";
2644
+ "serialization": "bytemuck";
2645
+ "repr": {
2646
+ "kind": "c";
2647
+ };
2648
+ "type": {
2649
+ "kind": "struct";
2650
+ "fields": [
2651
+ {
2652
+ "name": "configCapacity";
2653
+ "type": "i64";
2654
+ },
2655
+ {
2656
+ "name": "currentTotal";
2657
+ "type": "i64";
2658
+ },
2659
+ {
2660
+ "name": "lastIntervalStartTimestamp";
2661
+ "type": "u64";
2662
+ },
2663
+ {
2664
+ "name": "configIntervalLengthSeconds";
2665
+ "type": "u64";
2666
+ }
2667
+ ];
2668
+ };
2669
+ },
2670
+ {
2671
+ "name": "kamino_farms_cpi::state::farm_state::TokenInfo";
2672
+ "serialization": "bytemuck";
2673
+ "repr": {
2674
+ "kind": "c";
2675
+ };
2676
+ "type": {
2677
+ "kind": "struct";
2678
+ "fields": [
2679
+ {
2680
+ "name": "mint";
2681
+ "type": "pubkey";
2682
+ },
2683
+ {
2684
+ "name": "decimals";
2685
+ "type": "u64";
2686
+ },
2687
+ {
2688
+ "name": "tokenProgram";
2689
+ "type": "pubkey";
2690
+ },
2691
+ {
2692
+ "name": "padding";
2693
+ "type": {
2694
+ "array": [
2695
+ "u64",
2696
+ 6
2697
+ ];
2698
+ };
2699
+ }
2700
+ ];
2701
+ };
2702
+ },
2703
+ {
2704
+ "name": "kamino_lend_cpi::state::reserve::TokenInfo";
2705
+ "serialization": "bytemuckunsafe";
2706
+ "repr": {
2707
+ "kind": "c";
2708
+ };
2709
+ "type": {
2710
+ "kind": "struct";
2711
+ "fields": [
2712
+ {
2713
+ "name": "name";
2714
+ "type": {
2715
+ "array": [
2716
+ "u8",
2717
+ 32
2718
+ ];
2719
+ };
2720
+ },
2721
+ {
2722
+ "name": "heuristic";
2723
+ "type": {
2724
+ "defined": {
2725
+ "name": "priceHeuristic";
2726
+ };
2727
+ };
2728
+ },
2729
+ {
2730
+ "name": "maxTwapDivergenceBps";
2731
+ "type": "u64";
2732
+ },
2733
+ {
2734
+ "name": "maxAgePriceSeconds";
2735
+ "type": "u64";
2736
+ },
2737
+ {
2738
+ "name": "maxAgeTwapSeconds";
2739
+ "type": "u64";
2740
+ },
2741
+ {
2742
+ "name": "scopeConfiguration";
2743
+ "type": {
2744
+ "defined": {
2745
+ "name": "scopeConfiguration";
2746
+ };
2747
+ };
2748
+ },
2749
+ {
2750
+ "name": "switchboardConfiguration";
2751
+ "type": {
2752
+ "defined": {
2753
+ "name": "switchboardConfiguration";
2754
+ };
2755
+ };
2756
+ },
2757
+ {
2758
+ "name": "pythConfiguration";
2759
+ "type": {
2760
+ "defined": {
2761
+ "name": "pythConfiguration";
2762
+ };
2763
+ };
2764
+ },
2765
+ {
2766
+ "name": "blockPriceUsage";
2767
+ "type": "u8";
2768
+ },
2769
+ {
2770
+ "name": "reserved";
2771
+ "type": {
2772
+ "array": [
2773
+ "u8",
2774
+ 7
2775
+ ];
2776
+ };
2777
+ },
2778
+ {
2779
+ "name": "padding";
2780
+ "type": {
2781
+ "array": [
2782
+ "u64",
2783
+ 19
2784
+ ];
2785
+ };
2786
+ }
2787
+ ];
2788
+ };
2789
+ },
2790
+ {
2791
+ "name": "kamino_lend_standard::state::sy_meta::Emission";
2792
+ "type": {
2793
+ "kind": "struct";
2794
+ "fields": [
2795
+ {
2796
+ "name": "mint";
2797
+ "docs": [
2798
+ "Mint of the emission"
2799
+ ];
2800
+ "type": "pubkey";
2801
+ },
2802
+ {
2803
+ "name": "index";
2804
+ "docs": [
2805
+ "Index of the emission"
2806
+ ];
2807
+ "type": {
2808
+ "defined": {
2809
+ "name": "number";
2810
+ };
2811
+ };
2812
+ },
2813
+ {
2814
+ "name": "lastSeenTotalAccruedEmissions";
2815
+ "docs": [
2816
+ "How many emissions have been earned by the SY pool over its lifetime"
2817
+ ];
2818
+ "type": "u128";
2819
+ },
2820
+ {
2821
+ "name": "totalClaimedEmissions";
2822
+ "docs": [
2823
+ "How many emissions have been withdrawn by SY users over its lifetime"
2824
+ ];
2825
+ "type": "u128";
2826
+ },
2827
+ {
2828
+ "name": "tokenProgram";
2829
+ "docs": [
2830
+ "Token program for emission token (classic or 2022)"
2831
+ ];
2832
+ "type": "pubkey";
2833
+ },
2834
+ {
2835
+ "name": "escrowAccount";
2836
+ "docs": [
2837
+ "Token account that holds collected emissions in escrow"
2838
+ ];
2839
+ "type": "pubkey";
2840
+ },
2841
+ {
2842
+ "name": "treasuryEmission";
2843
+ "docs": [
2844
+ "Treasury emission"
2845
+ ];
2846
+ "type": "u64";
2847
+ },
2848
+ {
2849
+ "name": "lastSeenIndex";
2850
+ "docs": [
2851
+ "Last seen index - delta between current - last_seen used for staging earnings from unstaked sy"
2852
+ ];
2853
+ "type": {
2854
+ "defined": {
2855
+ "name": "number";
2856
+ };
2857
+ };
2858
+ }
2859
+ ];
2860
+ };
2861
+ },
2862
+ {
2863
+ "name": "sy_common::Emission";
2864
+ "type": {
2865
+ "kind": "struct";
2866
+ "fields": [
2867
+ {
2868
+ "name": "mint";
2869
+ "type": "pubkey";
2870
+ },
2871
+ {
2872
+ "name": "amountClaimable";
2873
+ "type": "u64";
2874
+ },
2875
+ {
2876
+ "name": "lastSeenEmissionIndex";
2877
+ "type": {
2878
+ "defined": {
2879
+ "name": "number";
2880
+ };
2881
+ };
2882
+ }
2883
+ ];
2884
+ };
2885
+ }
2886
+ ];
2887
+ };