@exponent-labs/marginfi-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.
package/build/idl.json ADDED
@@ -0,0 +1,2062 @@
1
+ {
2
+ "address": "XPMfipyhcbq3DBvgvxkbZY7GekwmGNJLMD3wdiCkBc7",
3
+ "metadata": {
4
+ "name": "marginfi_standard",
5
+ "version": "0.1.0",
6
+ "spec": "0.1.0",
7
+ "description": "Created with Anchor"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "add_emission",
12
+ "discriminator": [
13
+ 4
14
+ ],
15
+ "accounts": [
16
+ {
17
+ "name": "signer",
18
+ "signer": true
19
+ },
20
+ {
21
+ "name": "fee_payer",
22
+ "writable": true,
23
+ "signer": true
24
+ },
25
+ {
26
+ "name": "meta",
27
+ "writable": true
28
+ },
29
+ {
30
+ "name": "token_emission",
31
+ "docs": [
32
+ "The emission token account, which will be the escrow for accrued emissions"
33
+ ]
34
+ },
35
+ {
36
+ "name": "mint_emission",
37
+ "docs": [
38
+ "The mint for the emission"
39
+ ]
40
+ },
41
+ {
42
+ "name": "system_program",
43
+ "docs": [
44
+ "Needed for realloc'ing the emission tracker"
45
+ ]
46
+ },
47
+ {
48
+ "name": "admin_state"
49
+ }
50
+ ],
51
+ "args": []
52
+ },
53
+ {
54
+ "name": "collect_emission",
55
+ "discriminator": [
56
+ 8
57
+ ],
58
+ "accounts": [
59
+ {
60
+ "name": "owner",
61
+ "signer": true
62
+ },
63
+ {
64
+ "name": "meta",
65
+ "writable": true
66
+ },
67
+ {
68
+ "name": "position",
69
+ "writable": true
70
+ },
71
+ {
72
+ "name": "token_emission_account_authority",
73
+ "writable": true
74
+ },
75
+ {
76
+ "name": "token_emission_signer",
77
+ "writable": true
78
+ },
79
+ {
80
+ "name": "token_program"
81
+ }
82
+ ],
83
+ "args": [
84
+ {
85
+ "name": "amount",
86
+ "type": {
87
+ "defined": {
88
+ "name": "Amount"
89
+ }
90
+ }
91
+ }
92
+ ]
93
+ },
94
+ {
95
+ "name": "collect_treasury_emission",
96
+ "discriminator": [
97
+ 9
98
+ ],
99
+ "accounts": [
100
+ {
101
+ "name": "treasury_administrator",
102
+ "signer": true
103
+ },
104
+ {
105
+ "name": "meta",
106
+ "writable": true
107
+ },
108
+ {
109
+ "name": "admin"
110
+ },
111
+ {
112
+ "name": "token_emission_account_authority",
113
+ "writable": true
114
+ },
115
+ {
116
+ "name": "token_emission_treasury_administrator",
117
+ "writable": true
118
+ },
119
+ {
120
+ "name": "token_program"
121
+ }
122
+ ],
123
+ "args": [
124
+ {
125
+ "name": "amount",
126
+ "type": {
127
+ "defined": {
128
+ "name": "Amount"
129
+ }
130
+ }
131
+ }
132
+ ]
133
+ },
134
+ {
135
+ "name": "deposit",
136
+ "discriminator": [
137
+ 5
138
+ ],
139
+ "accounts": [
140
+ {
141
+ "name": "depositor",
142
+ "writable": true,
143
+ "signer": true
144
+ },
145
+ {
146
+ "name": "meta",
147
+ "writable": true
148
+ },
149
+ {
150
+ "name": "mint_sy"
151
+ },
152
+ {
153
+ "name": "marginfi_program"
154
+ },
155
+ {
156
+ "name": "marginfi_bank",
157
+ "writable": true
158
+ },
159
+ {
160
+ "name": "token_sy_escrow",
161
+ "writable": true
162
+ },
163
+ {
164
+ "name": "token_sy_depositor",
165
+ "writable": true
166
+ },
167
+ {
168
+ "name": "position",
169
+ "writable": true
170
+ },
171
+ {
172
+ "name": "emission_dst",
173
+ "docs": [
174
+ "The token account that receives emissions",
175
+ "This is constrained to be an ATA owned by \"account authority\""
176
+ ],
177
+ "writable": true,
178
+ "optional": true
179
+ },
180
+ {
181
+ "name": "marginfi_group"
182
+ },
183
+ {
184
+ "name": "marginfi_account",
185
+ "writable": true
186
+ },
187
+ {
188
+ "name": "mint_emission",
189
+ "docs": [
190
+ "The mint for the marginfi emission"
191
+ ],
192
+ "optional": true
193
+ },
194
+ {
195
+ "name": "token_program_emission",
196
+ "optional": true
197
+ },
198
+ {
199
+ "name": "marginfi_emissions_vault",
200
+ "writable": true,
201
+ "optional": true
202
+ },
203
+ {
204
+ "name": "marginfi_emissions_auth",
205
+ "optional": true
206
+ },
207
+ {
208
+ "name": "token_program"
209
+ },
210
+ {
211
+ "name": "system_program"
212
+ }
213
+ ],
214
+ "args": [
215
+ {
216
+ "name": "amount",
217
+ "type": "u64"
218
+ }
219
+ ],
220
+ "returns": {
221
+ "defined": {
222
+ "name": "SyState"
223
+ }
224
+ }
225
+ },
226
+ {
227
+ "name": "get_position",
228
+ "discriminator": [
229
+ 10
230
+ ],
231
+ "accounts": [
232
+ {
233
+ "name": "position",
234
+ "writable": true
235
+ },
236
+ {
237
+ "name": "meta",
238
+ "writable": true
239
+ },
240
+ {
241
+ "name": "marginfi_bank",
242
+ "writable": true
243
+ },
244
+ {
245
+ "name": "marginfi_account",
246
+ "writable": true
247
+ },
248
+ {
249
+ "name": "marginfi_program"
250
+ },
251
+ {
252
+ "name": "mint_sy"
253
+ },
254
+ {
255
+ "name": "token_sy_escrow"
256
+ },
257
+ {
258
+ "name": "marginfi_group"
259
+ },
260
+ {
261
+ "name": "mint_emission",
262
+ "docs": [
263
+ "The mint for the marginfi emission"
264
+ ],
265
+ "optional": true
266
+ },
267
+ {
268
+ "name": "token_program_emission",
269
+ "optional": true
270
+ },
271
+ {
272
+ "name": "marginfi_emissions_vault",
273
+ "writable": true,
274
+ "optional": true
275
+ },
276
+ {
277
+ "name": "marginfi_emissions_auth",
278
+ "optional": true
279
+ },
280
+ {
281
+ "name": "emission_dst",
282
+ "docs": [
283
+ "The token account that receives emissions",
284
+ "This is constrained to be an ATA owned by \"account authority\""
285
+ ],
286
+ "writable": true,
287
+ "optional": true
288
+ },
289
+ {
290
+ "name": "system_program"
291
+ }
292
+ ],
293
+ "args": [],
294
+ "returns": {
295
+ "defined": {
296
+ "name": "PositionState"
297
+ }
298
+ }
299
+ },
300
+ {
301
+ "name": "get_state",
302
+ "discriminator": [
303
+ 7
304
+ ],
305
+ "accounts": [
306
+ {
307
+ "name": "meta",
308
+ "writable": true
309
+ },
310
+ {
311
+ "name": "mint_sy"
312
+ },
313
+ {
314
+ "name": "marginfi_bank",
315
+ "writable": true
316
+ },
317
+ {
318
+ "name": "token_sy_escrow"
319
+ },
320
+ {
321
+ "name": "token_emission_account_authority",
322
+ "writable": true,
323
+ "optional": true
324
+ },
325
+ {
326
+ "name": "mint_emission",
327
+ "optional": true
328
+ },
329
+ {
330
+ "name": "marginfi_group"
331
+ },
332
+ {
333
+ "name": "marginfi_emissions_vault",
334
+ "writable": true,
335
+ "optional": true
336
+ },
337
+ {
338
+ "name": "marginfi_emissions_auth",
339
+ "optional": true
340
+ },
341
+ {
342
+ "name": "marginfi_account",
343
+ "writable": true
344
+ },
345
+ {
346
+ "name": "marginfi_program"
347
+ },
348
+ {
349
+ "name": "token_program",
350
+ "optional": true
351
+ }
352
+ ],
353
+ "args": [],
354
+ "returns": {
355
+ "defined": {
356
+ "name": "SyState"
357
+ }
358
+ }
359
+ },
360
+ {
361
+ "name": "init_sy",
362
+ "discriminator": [
363
+ 0
364
+ ],
365
+ "accounts": [
366
+ {
367
+ "name": "admin",
368
+ "writable": true,
369
+ "signer": true
370
+ },
371
+ {
372
+ "name": "marginfi_account",
373
+ "docs": [
374
+ "The address of the marginfi account"
375
+ ],
376
+ "writable": true
377
+ },
378
+ {
379
+ "name": "sy_meta",
380
+ "docs": [
381
+ "Master metadata account for SY token"
382
+ ],
383
+ "writable": true
384
+ },
385
+ {
386
+ "name": "mint_sy",
387
+ "docs": [
388
+ "Mint for SY token"
389
+ ],
390
+ "writable": true
391
+ },
392
+ {
393
+ "name": "token_sy_escrow",
394
+ "docs": [
395
+ "Escrow account for deposited SY"
396
+ ],
397
+ "writable": true
398
+ },
399
+ {
400
+ "name": "marginfi_bank",
401
+ "writable": true
402
+ },
403
+ {
404
+ "name": "marginfi_group",
405
+ "writable": true
406
+ },
407
+ {
408
+ "name": "marginfi_program"
409
+ },
410
+ {
411
+ "name": "token_program"
412
+ },
413
+ {
414
+ "name": "system_program"
415
+ },
416
+ {
417
+ "name": "admin_state"
418
+ },
419
+ {
420
+ "name": "metadata",
421
+ "writable": true
422
+ },
423
+ {
424
+ "name": "token_metadata_program"
425
+ },
426
+ {
427
+ "name": "rent"
428
+ }
429
+ ],
430
+ "args": [
431
+ {
432
+ "name": "min_mint_size",
433
+ "type": "u64"
434
+ },
435
+ {
436
+ "name": "min_redeem_size",
437
+ "type": "u64"
438
+ },
439
+ {
440
+ "name": "name",
441
+ "type": "string"
442
+ },
443
+ {
444
+ "name": "symbol",
445
+ "type": "string"
446
+ },
447
+ {
448
+ "name": "uri",
449
+ "type": "string"
450
+ }
451
+ ]
452
+ },
453
+ {
454
+ "name": "initialize_position",
455
+ "discriminator": [
456
+ 3
457
+ ],
458
+ "accounts": [
459
+ {
460
+ "name": "fee_payer",
461
+ "writable": true,
462
+ "signer": true
463
+ },
464
+ {
465
+ "name": "owner"
466
+ },
467
+ {
468
+ "name": "meta"
469
+ },
470
+ {
471
+ "name": "position",
472
+ "writable": true
473
+ },
474
+ {
475
+ "name": "system_program"
476
+ }
477
+ ],
478
+ "args": []
479
+ },
480
+ {
481
+ "name": "mint",
482
+ "discriminator": [
483
+ 1
484
+ ],
485
+ "accounts": [
486
+ {
487
+ "name": "depositor",
488
+ "writable": true,
489
+ "signer": true
490
+ },
491
+ {
492
+ "name": "meta"
493
+ },
494
+ {
495
+ "name": "mint_sy",
496
+ "writable": true
497
+ },
498
+ {
499
+ "name": "mint_base",
500
+ "writable": true
501
+ },
502
+ {
503
+ "name": "token_base_depositor",
504
+ "docs": [
505
+ "Depositor's base asset token account"
506
+ ],
507
+ "writable": true
508
+ },
509
+ {
510
+ "name": "token_base_account_authority",
511
+ "docs": [
512
+ "SY robot's base token account"
513
+ ],
514
+ "writable": true
515
+ },
516
+ {
517
+ "name": "token_sy_depositor",
518
+ "writable": true
519
+ },
520
+ {
521
+ "name": "marginfi_account",
522
+ "writable": true
523
+ },
524
+ {
525
+ "name": "marginfi_bank",
526
+ "writable": true
527
+ },
528
+ {
529
+ "name": "bank_liquidity_vault",
530
+ "writable": true
531
+ },
532
+ {
533
+ "name": "marginfi_group",
534
+ "writable": true
535
+ },
536
+ {
537
+ "name": "marginfi_program"
538
+ },
539
+ {
540
+ "name": "base_token_program"
541
+ },
542
+ {
543
+ "name": "token_program"
544
+ },
545
+ {
546
+ "name": "marginfi_emissions_auth",
547
+ "optional": true
548
+ },
549
+ {
550
+ "name": "marginfi_emissions_vault",
551
+ "writable": true,
552
+ "optional": true
553
+ },
554
+ {
555
+ "name": "mint_emission",
556
+ "optional": true
557
+ },
558
+ {
559
+ "name": "emission_dst",
560
+ "writable": true,
561
+ "optional": true
562
+ },
563
+ {
564
+ "name": "token_program_emission",
565
+ "optional": true
566
+ }
567
+ ],
568
+ "args": [
569
+ {
570
+ "name": "amount",
571
+ "type": "u64"
572
+ }
573
+ ],
574
+ "returns": {
575
+ "defined": {
576
+ "name": "MintSyReturnData"
577
+ }
578
+ }
579
+ },
580
+ {
581
+ "name": "redeem",
582
+ "discriminator": [
583
+ 2
584
+ ],
585
+ "accounts": [
586
+ {
587
+ "name": "signer",
588
+ "writable": true,
589
+ "signer": true
590
+ },
591
+ {
592
+ "name": "meta"
593
+ },
594
+ {
595
+ "name": "token_base_dst",
596
+ "writable": true
597
+ },
598
+ {
599
+ "name": "token_base_account_authority",
600
+ "writable": true
601
+ },
602
+ {
603
+ "name": "token_sy_signer",
604
+ "writable": true
605
+ },
606
+ {
607
+ "name": "mint_sy",
608
+ "writable": true
609
+ },
610
+ {
611
+ "name": "mint_base",
612
+ "writable": true
613
+ },
614
+ {
615
+ "name": "marginfi_bank",
616
+ "writable": true
617
+ },
618
+ {
619
+ "name": "marginfi_account",
620
+ "writable": true
621
+ },
622
+ {
623
+ "name": "bank_liquidity_vault",
624
+ "writable": true
625
+ },
626
+ {
627
+ "name": "bank_liquidity_vault_authority",
628
+ "writable": true
629
+ },
630
+ {
631
+ "name": "marginfi_group"
632
+ },
633
+ {
634
+ "name": "marginfi_program"
635
+ },
636
+ {
637
+ "name": "token_base_program",
638
+ "docs": [
639
+ "Base token program"
640
+ ]
641
+ },
642
+ {
643
+ "name": "token_program",
644
+ "docs": [
645
+ "SY token program"
646
+ ]
647
+ },
648
+ {
649
+ "name": "marginfi_emissions_auth",
650
+ "optional": true
651
+ },
652
+ {
653
+ "name": "marginfi_emissions_vault",
654
+ "writable": true,
655
+ "optional": true
656
+ },
657
+ {
658
+ "name": "mint_emission",
659
+ "optional": true
660
+ },
661
+ {
662
+ "name": "emission_dst",
663
+ "writable": true,
664
+ "optional": true
665
+ },
666
+ {
667
+ "name": "token_program_emission",
668
+ "optional": true
669
+ }
670
+ ],
671
+ "args": [
672
+ {
673
+ "name": "amount",
674
+ "type": "u64"
675
+ }
676
+ ],
677
+ "returns": {
678
+ "defined": {
679
+ "name": "RedeemSyReturnData"
680
+ }
681
+ }
682
+ },
683
+ {
684
+ "name": "withdraw",
685
+ "discriminator": [
686
+ 6
687
+ ],
688
+ "accounts": [
689
+ {
690
+ "name": "owner",
691
+ "writable": true,
692
+ "signer": true
693
+ },
694
+ {
695
+ "name": "meta",
696
+ "writable": true
697
+ },
698
+ {
699
+ "name": "mint_sy"
700
+ },
701
+ {
702
+ "name": "position",
703
+ "writable": true
704
+ },
705
+ {
706
+ "name": "token_sy_escrow",
707
+ "docs": [
708
+ "Escrow pool of SY tokens"
709
+ ],
710
+ "writable": true
711
+ },
712
+ {
713
+ "name": "token_sy_dst",
714
+ "docs": [
715
+ "Destination for SY tokens withdrawn"
716
+ ],
717
+ "writable": true
718
+ },
719
+ {
720
+ "name": "token_emission_authority_mfi_account",
721
+ "writable": true,
722
+ "optional": true
723
+ },
724
+ {
725
+ "name": "mint_emission",
726
+ "optional": true
727
+ },
728
+ {
729
+ "name": "marginfi_bank",
730
+ "writable": true
731
+ },
732
+ {
733
+ "name": "marginfi_emissions_vault",
734
+ "writable": true,
735
+ "optional": true
736
+ },
737
+ {
738
+ "name": "marginfi_emissions_auth",
739
+ "optional": true
740
+ },
741
+ {
742
+ "name": "marginfi_group"
743
+ },
744
+ {
745
+ "name": "marginfi_account",
746
+ "writable": true
747
+ },
748
+ {
749
+ "name": "marginfi_program"
750
+ },
751
+ {
752
+ "name": "token_program_emission",
753
+ "optional": true
754
+ },
755
+ {
756
+ "name": "token_program"
757
+ },
758
+ {
759
+ "name": "system_program"
760
+ }
761
+ ],
762
+ "args": [
763
+ {
764
+ "name": "amount",
765
+ "type": "u64"
766
+ }
767
+ ],
768
+ "returns": {
769
+ "defined": {
770
+ "name": "SyState"
771
+ }
772
+ }
773
+ }
774
+ ],
775
+ "accounts": [
776
+ {
777
+ "name": "Admin",
778
+ "discriminator": [
779
+ 244,
780
+ 158,
781
+ 220,
782
+ 65,
783
+ 8,
784
+ 73,
785
+ 4,
786
+ 65
787
+ ]
788
+ },
789
+ {
790
+ "name": "Bank",
791
+ "discriminator": [
792
+ 142,
793
+ 49,
794
+ 166,
795
+ 242,
796
+ 50,
797
+ 66,
798
+ 97,
799
+ 188
800
+ ]
801
+ },
802
+ {
803
+ "name": "MarginfiAccount",
804
+ "discriminator": [
805
+ 67,
806
+ 178,
807
+ 130,
808
+ 109,
809
+ 126,
810
+ 114,
811
+ 28,
812
+ 42
813
+ ]
814
+ },
815
+ {
816
+ "name": "MarginfiGroup",
817
+ "discriminator": [
818
+ 182,
819
+ 23,
820
+ 173,
821
+ 240,
822
+ 151,
823
+ 206,
824
+ 182,
825
+ 67
826
+ ]
827
+ },
828
+ {
829
+ "name": "Position",
830
+ "discriminator": [
831
+ 170,
832
+ 188,
833
+ 143,
834
+ 228,
835
+ 122,
836
+ 64,
837
+ 247,
838
+ 208
839
+ ]
840
+ },
841
+ {
842
+ "name": "SyMeta",
843
+ "discriminator": [
844
+ 254,
845
+ 147,
846
+ 136,
847
+ 16,
848
+ 163,
849
+ 203,
850
+ 98,
851
+ 93
852
+ ]
853
+ }
854
+ ],
855
+ "errors": [
856
+ {
857
+ "code": 6000,
858
+ "name": "MintAmountTooLow",
859
+ "msg": "The mint amount is too low"
860
+ },
861
+ {
862
+ "code": 6001,
863
+ "name": "RedeemAmountTooLow",
864
+ "msg": "The redeem amount is too low"
865
+ },
866
+ {
867
+ "code": 6002,
868
+ "name": "EmissionAccountsNotProvided",
869
+ "msg": "Necessary emission accounts not provided"
870
+ },
871
+ {
872
+ "code": 6003,
873
+ "name": "EmissionAccountsProvidedWhenNotNeeded",
874
+ "msg": "Emission accounts provided when not needed"
875
+ },
876
+ {
877
+ "code": 6004,
878
+ "name": "RewardWithdrawAmountTooHigh",
879
+ "msg": "The reward withdraw amount is higher than the available reward"
880
+ },
881
+ {
882
+ "code": 6005,
883
+ "name": "NoRewardsForMeta",
884
+ "msg": "There are no rewards for this meta"
885
+ },
886
+ {
887
+ "code": 6006,
888
+ "name": "SySupplyMismatch",
889
+ "msg": "Instruction invariant found that there was more SY minted than the amount of shares in the marginfi account"
890
+ },
891
+ {
892
+ "code": 6007,
893
+ "name": "PositionAmountTooLow",
894
+ "msg": "Position has less amount than the requested withdraw amount"
895
+ }
896
+ ],
897
+ "types": [
898
+ {
899
+ "name": "Admin",
900
+ "type": {
901
+ "kind": "struct",
902
+ "fields": [
903
+ {
904
+ "name": "uber_admin",
905
+ "type": "pubkey"
906
+ },
907
+ {
908
+ "name": "proposed_uber_admin",
909
+ "type": {
910
+ "option": "pubkey"
911
+ }
912
+ },
913
+ {
914
+ "name": "principles",
915
+ "type": {
916
+ "defined": {
917
+ "name": "Principles"
918
+ }
919
+ }
920
+ }
921
+ ]
922
+ }
923
+ },
924
+ {
925
+ "name": "Amount",
926
+ "type": {
927
+ "kind": "enum",
928
+ "variants": [
929
+ {
930
+ "name": "All"
931
+ },
932
+ {
933
+ "name": "Some",
934
+ "fields": [
935
+ "u64"
936
+ ]
937
+ }
938
+ ]
939
+ }
940
+ },
941
+ {
942
+ "name": "Balance",
943
+ "serialization": "bytemuckunsafe",
944
+ "repr": {
945
+ "kind": "c"
946
+ },
947
+ "type": {
948
+ "kind": "struct",
949
+ "fields": [
950
+ {
951
+ "name": "active",
952
+ "type": "bool"
953
+ },
954
+ {
955
+ "name": "bank_pk",
956
+ "type": "pubkey"
957
+ },
958
+ {
959
+ "name": "_pad0",
960
+ "type": {
961
+ "array": [
962
+ "u8",
963
+ 7
964
+ ]
965
+ }
966
+ },
967
+ {
968
+ "name": "asset_shares",
969
+ "type": {
970
+ "defined": {
971
+ "name": "WrappedI80F48"
972
+ }
973
+ }
974
+ },
975
+ {
976
+ "name": "liability_shares",
977
+ "type": {
978
+ "defined": {
979
+ "name": "WrappedI80F48"
980
+ }
981
+ }
982
+ },
983
+ {
984
+ "name": "emissions_outstanding",
985
+ "type": {
986
+ "defined": {
987
+ "name": "WrappedI80F48"
988
+ }
989
+ }
990
+ },
991
+ {
992
+ "name": "last_update",
993
+ "type": "u64"
994
+ },
995
+ {
996
+ "name": "_padding",
997
+ "type": {
998
+ "array": [
999
+ "u64",
1000
+ 1
1001
+ ]
1002
+ }
1003
+ }
1004
+ ]
1005
+ }
1006
+ },
1007
+ {
1008
+ "name": "Bank",
1009
+ "serialization": "bytemuckunsafe",
1010
+ "repr": {
1011
+ "kind": "c"
1012
+ },
1013
+ "type": {
1014
+ "kind": "struct",
1015
+ "fields": [
1016
+ {
1017
+ "name": "mint",
1018
+ "type": "pubkey"
1019
+ },
1020
+ {
1021
+ "name": "mint_decimals",
1022
+ "type": "u8"
1023
+ },
1024
+ {
1025
+ "name": "group",
1026
+ "type": "pubkey"
1027
+ },
1028
+ {
1029
+ "name": "_pad0",
1030
+ "type": {
1031
+ "array": [
1032
+ "u8",
1033
+ 7
1034
+ ]
1035
+ }
1036
+ },
1037
+ {
1038
+ "name": "asset_share_value",
1039
+ "type": {
1040
+ "defined": {
1041
+ "name": "WrappedI80F48"
1042
+ }
1043
+ }
1044
+ },
1045
+ {
1046
+ "name": "liability_share_value",
1047
+ "type": {
1048
+ "defined": {
1049
+ "name": "WrappedI80F48"
1050
+ }
1051
+ }
1052
+ },
1053
+ {
1054
+ "name": "liquidity_vault",
1055
+ "type": "pubkey"
1056
+ },
1057
+ {
1058
+ "name": "liquidity_vault_bump",
1059
+ "type": "u8"
1060
+ },
1061
+ {
1062
+ "name": "liquidity_vault_authority_bump",
1063
+ "type": "u8"
1064
+ },
1065
+ {
1066
+ "name": "insurance_vault",
1067
+ "type": "pubkey"
1068
+ },
1069
+ {
1070
+ "name": "insurance_vault_bump",
1071
+ "type": "u8"
1072
+ },
1073
+ {
1074
+ "name": "insurance_vault_authority_bump",
1075
+ "type": "u8"
1076
+ },
1077
+ {
1078
+ "name": "_pad1",
1079
+ "type": {
1080
+ "array": [
1081
+ "u8",
1082
+ 4
1083
+ ]
1084
+ }
1085
+ },
1086
+ {
1087
+ "name": "collected_insurance_fees_outstanding",
1088
+ "type": {
1089
+ "defined": {
1090
+ "name": "WrappedI80F48"
1091
+ }
1092
+ }
1093
+ },
1094
+ {
1095
+ "name": "fee_vault",
1096
+ "type": "pubkey"
1097
+ },
1098
+ {
1099
+ "name": "fee_vault_bump",
1100
+ "type": "u8"
1101
+ },
1102
+ {
1103
+ "name": "fee_vault_authority_bump",
1104
+ "type": "u8"
1105
+ },
1106
+ {
1107
+ "name": "_pad2",
1108
+ "type": {
1109
+ "array": [
1110
+ "u8",
1111
+ 6
1112
+ ]
1113
+ }
1114
+ },
1115
+ {
1116
+ "name": "collected_group_fees_outstanding",
1117
+ "type": {
1118
+ "defined": {
1119
+ "name": "WrappedI80F48"
1120
+ }
1121
+ }
1122
+ },
1123
+ {
1124
+ "name": "total_liability_shares",
1125
+ "type": {
1126
+ "defined": {
1127
+ "name": "WrappedI80F48"
1128
+ }
1129
+ }
1130
+ },
1131
+ {
1132
+ "name": "total_asset_shares",
1133
+ "type": {
1134
+ "defined": {
1135
+ "name": "WrappedI80F48"
1136
+ }
1137
+ }
1138
+ },
1139
+ {
1140
+ "name": "last_update",
1141
+ "type": "i64"
1142
+ },
1143
+ {
1144
+ "name": "config",
1145
+ "type": {
1146
+ "defined": {
1147
+ "name": "BankConfig"
1148
+ }
1149
+ }
1150
+ },
1151
+ {
1152
+ "name": "flags",
1153
+ "docs": [
1154
+ "Emissions Config Flags",
1155
+ "",
1156
+ "- EMISSIONS_FLAG_BORROW_ACTIVE: 1",
1157
+ "- EMISSIONS_FLAG_LENDING_ACTIVE: 2",
1158
+ ""
1159
+ ],
1160
+ "type": "u64"
1161
+ },
1162
+ {
1163
+ "name": "emissions_rate",
1164
+ "docs": [
1165
+ "Emissions APR.",
1166
+ "Number of emitted tokens (emissions_mint) per 1e(bank.mint_decimal) tokens (bank mint) (native amount) per 1 YEAR."
1167
+ ],
1168
+ "type": "u64"
1169
+ },
1170
+ {
1171
+ "name": "emissions_remaining",
1172
+ "type": {
1173
+ "defined": {
1174
+ "name": "WrappedI80F48"
1175
+ }
1176
+ }
1177
+ },
1178
+ {
1179
+ "name": "emissions_mint",
1180
+ "type": "pubkey"
1181
+ },
1182
+ {
1183
+ "name": "_padding_0",
1184
+ "type": {
1185
+ "array": [
1186
+ {
1187
+ "array": [
1188
+ "u64",
1189
+ 2
1190
+ ]
1191
+ },
1192
+ 28
1193
+ ]
1194
+ }
1195
+ },
1196
+ {
1197
+ "name": "_padding_1",
1198
+ "type": {
1199
+ "array": [
1200
+ {
1201
+ "array": [
1202
+ "u64",
1203
+ 2
1204
+ ]
1205
+ },
1206
+ 32
1207
+ ]
1208
+ }
1209
+ }
1210
+ ]
1211
+ }
1212
+ },
1213
+ {
1214
+ "name": "BankConfig",
1215
+ "serialization": "bytemuckunsafe",
1216
+ "repr": {
1217
+ "kind": "c"
1218
+ },
1219
+ "type": {
1220
+ "kind": "struct",
1221
+ "fields": [
1222
+ {
1223
+ "name": "asset_weight_init",
1224
+ "type": {
1225
+ "defined": {
1226
+ "name": "WrappedI80F48"
1227
+ }
1228
+ }
1229
+ },
1230
+ {
1231
+ "name": "asset_weight_maint",
1232
+ "type": {
1233
+ "defined": {
1234
+ "name": "WrappedI80F48"
1235
+ }
1236
+ }
1237
+ },
1238
+ {
1239
+ "name": "liability_weight_init",
1240
+ "type": {
1241
+ "defined": {
1242
+ "name": "WrappedI80F48"
1243
+ }
1244
+ }
1245
+ },
1246
+ {
1247
+ "name": "liability_weight_maint",
1248
+ "type": {
1249
+ "defined": {
1250
+ "name": "WrappedI80F48"
1251
+ }
1252
+ }
1253
+ },
1254
+ {
1255
+ "name": "deposit_limit",
1256
+ "type": "u64"
1257
+ },
1258
+ {
1259
+ "name": "interest_rate_config",
1260
+ "type": {
1261
+ "defined": {
1262
+ "name": "InterestRateConfig"
1263
+ }
1264
+ }
1265
+ },
1266
+ {
1267
+ "name": "operational_state",
1268
+ "type": {
1269
+ "defined": {
1270
+ "name": "BankOperationalState"
1271
+ }
1272
+ }
1273
+ },
1274
+ {
1275
+ "name": "oracle_setup",
1276
+ "type": {
1277
+ "defined": {
1278
+ "name": "OracleSetup"
1279
+ }
1280
+ }
1281
+ },
1282
+ {
1283
+ "name": "oracle_keys",
1284
+ "type": {
1285
+ "array": [
1286
+ "pubkey",
1287
+ 5
1288
+ ]
1289
+ }
1290
+ },
1291
+ {
1292
+ "name": "_pad0",
1293
+ "type": {
1294
+ "array": [
1295
+ "u8",
1296
+ 6
1297
+ ]
1298
+ }
1299
+ },
1300
+ {
1301
+ "name": "borrow_limit",
1302
+ "type": "u64"
1303
+ },
1304
+ {
1305
+ "name": "risk_tier",
1306
+ "type": {
1307
+ "defined": {
1308
+ "name": "RiskTier"
1309
+ }
1310
+ }
1311
+ },
1312
+ {
1313
+ "name": "_pad1",
1314
+ "type": {
1315
+ "array": [
1316
+ "u8",
1317
+ 7
1318
+ ]
1319
+ }
1320
+ },
1321
+ {
1322
+ "name": "total_asset_value_init_limit",
1323
+ "docs": [
1324
+ "USD denominated limit for calculating asset value for initialization margin requirements.",
1325
+ "Example, if total SOL deposits are equal to $1M and the limit it set to $500K,",
1326
+ "then SOL assets will be discounted by 50%.",
1327
+ "",
1328
+ "In other words the max value of liabilities that can be backed by the asset is $500K.",
1329
+ "This is useful for limiting the damage of orcale attacks.",
1330
+ "",
1331
+ "Value is UI USD value, for example value 100 -> $100"
1332
+ ],
1333
+ "type": "u64"
1334
+ },
1335
+ {
1336
+ "name": "oracle_max_age",
1337
+ "docs": [
1338
+ "Time window in seconds for the oracle price feed to be considered live."
1339
+ ],
1340
+ "type": "u16"
1341
+ },
1342
+ {
1343
+ "name": "_padding",
1344
+ "type": {
1345
+ "array": [
1346
+ "u8",
1347
+ 38
1348
+ ]
1349
+ }
1350
+ }
1351
+ ]
1352
+ }
1353
+ },
1354
+ {
1355
+ "name": "BankOperationalState",
1356
+ "repr": {
1357
+ "kind": "rust"
1358
+ },
1359
+ "type": {
1360
+ "kind": "enum",
1361
+ "variants": [
1362
+ {
1363
+ "name": "Paused"
1364
+ },
1365
+ {
1366
+ "name": "Operational"
1367
+ },
1368
+ {
1369
+ "name": "ReduceOnly"
1370
+ }
1371
+ ]
1372
+ }
1373
+ },
1374
+ {
1375
+ "name": "InterestRateConfig",
1376
+ "serialization": "bytemuck",
1377
+ "repr": {
1378
+ "kind": "c"
1379
+ },
1380
+ "type": {
1381
+ "kind": "struct",
1382
+ "fields": [
1383
+ {
1384
+ "name": "optimal_utilization_rate",
1385
+ "type": {
1386
+ "defined": {
1387
+ "name": "WrappedI80F48"
1388
+ }
1389
+ }
1390
+ },
1391
+ {
1392
+ "name": "plateau_interest_rate",
1393
+ "type": {
1394
+ "defined": {
1395
+ "name": "WrappedI80F48"
1396
+ }
1397
+ }
1398
+ },
1399
+ {
1400
+ "name": "max_interest_rate",
1401
+ "type": {
1402
+ "defined": {
1403
+ "name": "WrappedI80F48"
1404
+ }
1405
+ }
1406
+ },
1407
+ {
1408
+ "name": "insurance_fee_fixed_apr",
1409
+ "type": {
1410
+ "defined": {
1411
+ "name": "WrappedI80F48"
1412
+ }
1413
+ }
1414
+ },
1415
+ {
1416
+ "name": "insurance_ir_fee",
1417
+ "type": {
1418
+ "defined": {
1419
+ "name": "WrappedI80F48"
1420
+ }
1421
+ }
1422
+ },
1423
+ {
1424
+ "name": "protocol_fixed_fee_apr",
1425
+ "type": {
1426
+ "defined": {
1427
+ "name": "WrappedI80F48"
1428
+ }
1429
+ }
1430
+ },
1431
+ {
1432
+ "name": "protocol_ir_fee",
1433
+ "type": {
1434
+ "defined": {
1435
+ "name": "WrappedI80F48"
1436
+ }
1437
+ }
1438
+ },
1439
+ {
1440
+ "name": "_padding",
1441
+ "type": {
1442
+ "array": [
1443
+ {
1444
+ "array": [
1445
+ "u64",
1446
+ 2
1447
+ ]
1448
+ },
1449
+ 8
1450
+ ]
1451
+ }
1452
+ }
1453
+ ]
1454
+ }
1455
+ },
1456
+ {
1457
+ "name": "LendingAccount",
1458
+ "serialization": "bytemuckunsafe",
1459
+ "repr": {
1460
+ "kind": "c"
1461
+ },
1462
+ "type": {
1463
+ "kind": "struct",
1464
+ "fields": [
1465
+ {
1466
+ "name": "balances",
1467
+ "type": {
1468
+ "array": [
1469
+ {
1470
+ "defined": {
1471
+ "name": "Balance"
1472
+ }
1473
+ },
1474
+ 16
1475
+ ]
1476
+ }
1477
+ },
1478
+ {
1479
+ "name": "_padding",
1480
+ "type": {
1481
+ "array": [
1482
+ "u64",
1483
+ 8
1484
+ ]
1485
+ }
1486
+ }
1487
+ ]
1488
+ }
1489
+ },
1490
+ {
1491
+ "name": "MarginfiAccount",
1492
+ "serialization": "bytemuckunsafe",
1493
+ "repr": {
1494
+ "kind": "c"
1495
+ },
1496
+ "type": {
1497
+ "kind": "struct",
1498
+ "fields": [
1499
+ {
1500
+ "name": "group",
1501
+ "type": "pubkey"
1502
+ },
1503
+ {
1504
+ "name": "authority",
1505
+ "type": "pubkey"
1506
+ },
1507
+ {
1508
+ "name": "lending_account",
1509
+ "type": {
1510
+ "defined": {
1511
+ "name": "LendingAccount"
1512
+ }
1513
+ }
1514
+ },
1515
+ {
1516
+ "name": "account_flags",
1517
+ "docs": [
1518
+ "The flags that indicate the state of the account.",
1519
+ "This is u64 bitfield, where each bit represents a flag.",
1520
+ "",
1521
+ "Flags:",
1522
+ "- DISABLED_FLAG = 1 << 0 = 1 - This flag indicates that the account is disabled,",
1523
+ "and no further actions can be taken on it."
1524
+ ],
1525
+ "type": "u64"
1526
+ },
1527
+ {
1528
+ "name": "_padding",
1529
+ "type": {
1530
+ "array": [
1531
+ "u64",
1532
+ 63
1533
+ ]
1534
+ }
1535
+ }
1536
+ ]
1537
+ }
1538
+ },
1539
+ {
1540
+ "name": "MarginfiGroup",
1541
+ "serialization": "bytemuck",
1542
+ "repr": {
1543
+ "kind": "c"
1544
+ },
1545
+ "type": {
1546
+ "kind": "struct",
1547
+ "fields": [
1548
+ {
1549
+ "name": "admin",
1550
+ "type": "pubkey"
1551
+ },
1552
+ {
1553
+ "name": "_padding_0",
1554
+ "type": {
1555
+ "array": [
1556
+ {
1557
+ "array": [
1558
+ "u64",
1559
+ 2
1560
+ ]
1561
+ },
1562
+ 32
1563
+ ]
1564
+ }
1565
+ },
1566
+ {
1567
+ "name": "_padding_1",
1568
+ "type": {
1569
+ "array": [
1570
+ {
1571
+ "array": [
1572
+ "u64",
1573
+ 2
1574
+ ]
1575
+ },
1576
+ 32
1577
+ ]
1578
+ }
1579
+ }
1580
+ ]
1581
+ }
1582
+ },
1583
+ {
1584
+ "name": "MintSyReturnData",
1585
+ "type": {
1586
+ "kind": "struct",
1587
+ "fields": [
1588
+ {
1589
+ "name": "sy_out_amount",
1590
+ "type": "u64"
1591
+ },
1592
+ {
1593
+ "name": "exchange_rate",
1594
+ "type": {
1595
+ "defined": {
1596
+ "name": "Number"
1597
+ }
1598
+ }
1599
+ }
1600
+ ]
1601
+ }
1602
+ },
1603
+ {
1604
+ "name": "Number",
1605
+ "docs": [
1606
+ "High precision number, stored as 4 u64 words in little endian"
1607
+ ],
1608
+ "type": {
1609
+ "kind": "struct",
1610
+ "fields": [
1611
+ {
1612
+ "array": [
1613
+ "u64",
1614
+ 4
1615
+ ]
1616
+ }
1617
+ ]
1618
+ }
1619
+ },
1620
+ {
1621
+ "name": "OracleSetup",
1622
+ "repr": {
1623
+ "kind": "rust"
1624
+ },
1625
+ "type": {
1626
+ "kind": "enum",
1627
+ "variants": [
1628
+ {
1629
+ "name": "None"
1630
+ },
1631
+ {
1632
+ "name": "PythLegacy"
1633
+ },
1634
+ {
1635
+ "name": "SwitchboardV2"
1636
+ },
1637
+ {
1638
+ "name": "PythPushOracle"
1639
+ },
1640
+ {
1641
+ "name": "SwitchboardPull"
1642
+ }
1643
+ ]
1644
+ }
1645
+ },
1646
+ {
1647
+ "name": "Position",
1648
+ "type": {
1649
+ "kind": "struct",
1650
+ "fields": [
1651
+ {
1652
+ "name": "owner",
1653
+ "type": "pubkey"
1654
+ },
1655
+ {
1656
+ "name": "marginfi_bank",
1657
+ "type": "pubkey"
1658
+ },
1659
+ {
1660
+ "name": "amount",
1661
+ "type": "u64"
1662
+ },
1663
+ {
1664
+ "name": "reward_indexes",
1665
+ "type": {
1666
+ "vec": {
1667
+ "defined": {
1668
+ "name": "Reward"
1669
+ }
1670
+ }
1671
+ }
1672
+ }
1673
+ ]
1674
+ }
1675
+ },
1676
+ {
1677
+ "name": "PositionState",
1678
+ "type": {
1679
+ "kind": "struct",
1680
+ "fields": [
1681
+ {
1682
+ "name": "owner",
1683
+ "type": "pubkey"
1684
+ },
1685
+ {
1686
+ "name": "sy_balance",
1687
+ "type": "u64"
1688
+ },
1689
+ {
1690
+ "name": "emissions",
1691
+ "type": {
1692
+ "vec": {
1693
+ "defined": {
1694
+ "name": "sy_common::Emission"
1695
+ }
1696
+ }
1697
+ }
1698
+ }
1699
+ ]
1700
+ }
1701
+ },
1702
+ {
1703
+ "name": "PrincipleDetails",
1704
+ "type": {
1705
+ "kind": "struct",
1706
+ "fields": [
1707
+ {
1708
+ "name": "administrators",
1709
+ "type": {
1710
+ "vec": "pubkey"
1711
+ }
1712
+ }
1713
+ ]
1714
+ }
1715
+ },
1716
+ {
1717
+ "name": "Principles",
1718
+ "type": {
1719
+ "kind": "struct",
1720
+ "fields": [
1721
+ {
1722
+ "name": "marginfi_standard",
1723
+ "type": {
1724
+ "defined": {
1725
+ "name": "PrincipleDetails"
1726
+ }
1727
+ }
1728
+ },
1729
+ {
1730
+ "name": "collect_treasury",
1731
+ "type": {
1732
+ "defined": {
1733
+ "name": "PrincipleDetails"
1734
+ }
1735
+ }
1736
+ },
1737
+ {
1738
+ "name": "kamino_lend_standard",
1739
+ "type": {
1740
+ "defined": {
1741
+ "name": "PrincipleDetails"
1742
+ }
1743
+ }
1744
+ },
1745
+ {
1746
+ "name": "exponent_core",
1747
+ "type": {
1748
+ "defined": {
1749
+ "name": "PrincipleDetails"
1750
+ }
1751
+ }
1752
+ },
1753
+ {
1754
+ "name": "change_status_flags",
1755
+ "type": {
1756
+ "defined": {
1757
+ "name": "PrincipleDetails"
1758
+ }
1759
+ }
1760
+ },
1761
+ {
1762
+ "name": "jito_restaking",
1763
+ "type": {
1764
+ "defined": {
1765
+ "name": "PrincipleDetails"
1766
+ }
1767
+ }
1768
+ }
1769
+ ]
1770
+ }
1771
+ },
1772
+ {
1773
+ "name": "RedeemSyReturnData",
1774
+ "type": {
1775
+ "kind": "struct",
1776
+ "fields": [
1777
+ {
1778
+ "name": "base_out_amount",
1779
+ "type": "u64"
1780
+ },
1781
+ {
1782
+ "name": "exchange_rate",
1783
+ "type": {
1784
+ "defined": {
1785
+ "name": "Number"
1786
+ }
1787
+ }
1788
+ }
1789
+ ]
1790
+ }
1791
+ },
1792
+ {
1793
+ "name": "Reward",
1794
+ "type": {
1795
+ "kind": "struct",
1796
+ "fields": [
1797
+ {
1798
+ "name": "mint",
1799
+ "type": "pubkey"
1800
+ },
1801
+ {
1802
+ "name": "last_seen_share_index",
1803
+ "type": {
1804
+ "defined": {
1805
+ "name": "Number"
1806
+ }
1807
+ }
1808
+ },
1809
+ {
1810
+ "name": "claimable_rewards_amount",
1811
+ "type": "u64"
1812
+ }
1813
+ ]
1814
+ }
1815
+ },
1816
+ {
1817
+ "name": "RiskTier",
1818
+ "repr": {
1819
+ "kind": "rust"
1820
+ },
1821
+ "type": {
1822
+ "kind": "enum",
1823
+ "variants": [
1824
+ {
1825
+ "name": "Collateral"
1826
+ },
1827
+ {
1828
+ "name": "Isolated"
1829
+ }
1830
+ ]
1831
+ }
1832
+ },
1833
+ {
1834
+ "name": "SyMeta",
1835
+ "docs": [
1836
+ "Metadata for an SY token"
1837
+ ],
1838
+ "type": {
1839
+ "kind": "struct",
1840
+ "fields": [
1841
+ {
1842
+ "name": "marginfi_bank",
1843
+ "docs": [
1844
+ "Marginfi Bank ID"
1845
+ ],
1846
+ "type": "pubkey"
1847
+ },
1848
+ {
1849
+ "name": "marginfi_account",
1850
+ "docs": [
1851
+ "Pubkey of account with Marginfi"
1852
+ ],
1853
+ "type": "pubkey"
1854
+ },
1855
+ {
1856
+ "name": "mint_sy",
1857
+ "docs": [
1858
+ "Mint for the SY token"
1859
+ ],
1860
+ "type": "pubkey"
1861
+ },
1862
+ {
1863
+ "name": "token_sy_escrow",
1864
+ "docs": [
1865
+ "Escrow account where SY gets deposited"
1866
+ ],
1867
+ "type": "pubkey"
1868
+ },
1869
+ {
1870
+ "name": "max_sy_supply",
1871
+ "docs": [
1872
+ "Maximum supply of SY tokens"
1873
+ ],
1874
+ "type": "u64"
1875
+ },
1876
+ {
1877
+ "name": "min_mint_size",
1878
+ "docs": [
1879
+ "Minimum size of SY tokens that can be made from minting",
1880
+ "This is to prevent dust from being minted, or from rounding errors"
1881
+ ],
1882
+ "type": "u64"
1883
+ },
1884
+ {
1885
+ "name": "min_redeem_size",
1886
+ "docs": [
1887
+ "Minimum size of SY tokens that can be redeemed",
1888
+ "This is to prevent dust from being redeemed, or from rounding errors"
1889
+ ],
1890
+ "type": "u64"
1891
+ },
1892
+ {
1893
+ "name": "self_address_bump",
1894
+ "docs": [
1895
+ "Bump for the self address to this PDA"
1896
+ ],
1897
+ "type": {
1898
+ "array": [
1899
+ "u8",
1900
+ 1
1901
+ ]
1902
+ }
1903
+ },
1904
+ {
1905
+ "name": "emissions",
1906
+ "docs": [
1907
+ "List of emissions"
1908
+ ],
1909
+ "type": {
1910
+ "vec": {
1911
+ "defined": {
1912
+ "name": "marginfi_standard::state::sy_meta::Emission"
1913
+ }
1914
+ }
1915
+ }
1916
+ }
1917
+ ]
1918
+ }
1919
+ },
1920
+ {
1921
+ "name": "SyState",
1922
+ "type": {
1923
+ "kind": "struct",
1924
+ "fields": [
1925
+ {
1926
+ "name": "exchange_rate",
1927
+ "type": {
1928
+ "defined": {
1929
+ "name": "Number"
1930
+ }
1931
+ }
1932
+ },
1933
+ {
1934
+ "name": "emission_indexes",
1935
+ "type": {
1936
+ "vec": {
1937
+ "defined": {
1938
+ "name": "Number"
1939
+ }
1940
+ }
1941
+ }
1942
+ }
1943
+ ]
1944
+ }
1945
+ },
1946
+ {
1947
+ "name": "WrappedI80F48",
1948
+ "serialization": "bytemuck",
1949
+ "repr": {
1950
+ "kind": "c",
1951
+ "align": 8
1952
+ },
1953
+ "type": {
1954
+ "kind": "struct",
1955
+ "fields": [
1956
+ {
1957
+ "name": "value",
1958
+ "type": {
1959
+ "array": [
1960
+ "u8",
1961
+ 16
1962
+ ]
1963
+ }
1964
+ }
1965
+ ]
1966
+ }
1967
+ },
1968
+ {
1969
+ "name": "marginfi_standard::state::sy_meta::Emission",
1970
+ "type": {
1971
+ "kind": "struct",
1972
+ "fields": [
1973
+ {
1974
+ "name": "mint",
1975
+ "docs": [
1976
+ "Mint of the emission"
1977
+ ],
1978
+ "type": "pubkey"
1979
+ },
1980
+ {
1981
+ "name": "index",
1982
+ "docs": [
1983
+ "Index of the emission"
1984
+ ],
1985
+ "type": {
1986
+ "defined": {
1987
+ "name": "Number"
1988
+ }
1989
+ }
1990
+ },
1991
+ {
1992
+ "name": "last_seen_total_accrued_emissions",
1993
+ "docs": [
1994
+ "How many emissions have been earned by the SY pool over its lifetime"
1995
+ ],
1996
+ "type": "u128"
1997
+ },
1998
+ {
1999
+ "name": "total_claimed_emissions",
2000
+ "docs": [
2001
+ "How many emissions have been withdrawn by SY users over its lifetime"
2002
+ ],
2003
+ "type": "u128"
2004
+ },
2005
+ {
2006
+ "name": "token_program",
2007
+ "type": "pubkey"
2008
+ },
2009
+ {
2010
+ "name": "escrow_account",
2011
+ "docs": [
2012
+ "Token account that holds collected emissions in escrow"
2013
+ ],
2014
+ "type": "pubkey"
2015
+ },
2016
+ {
2017
+ "name": "treasury_emission",
2018
+ "docs": [
2019
+ "Treasury emission comes from the emissions of SY that has not been staked and can be withdrawn by the Admin key"
2020
+ ],
2021
+ "type": "u64"
2022
+ },
2023
+ {
2024
+ "name": "last_seen_index",
2025
+ "docs": [
2026
+ "Used for staging treasury earnings from unstaked SY"
2027
+ ],
2028
+ "type": {
2029
+ "defined": {
2030
+ "name": "Number"
2031
+ }
2032
+ }
2033
+ }
2034
+ ]
2035
+ }
2036
+ },
2037
+ {
2038
+ "name": "sy_common::Emission",
2039
+ "type": {
2040
+ "kind": "struct",
2041
+ "fields": [
2042
+ {
2043
+ "name": "mint",
2044
+ "type": "pubkey"
2045
+ },
2046
+ {
2047
+ "name": "amount_claimable",
2048
+ "type": "u64"
2049
+ },
2050
+ {
2051
+ "name": "last_seen_emission_index",
2052
+ "type": {
2053
+ "defined": {
2054
+ "name": "Number"
2055
+ }
2056
+ }
2057
+ }
2058
+ ]
2059
+ }
2060
+ }
2061
+ ]
2062
+ }