@exponent-labs/generic-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,1254 @@
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/generic_standard.json`.
6
+ */
7
+ export type GenericStandard = {
8
+ "address": "XP1BRLn8eCYSygrd8er5P4GKdzqKbC3DLoSsS5UYVZy";
9
+ "metadata": {
10
+ "name": "genericStandard";
11
+ "version": "0.1.0";
12
+ "spec": "0.1.0";
13
+ "description": "Created with Anchor";
14
+ };
15
+ "instructions": [
16
+ {
17
+ "name": "addEmission";
18
+ "discriminator": [
19
+ 4
20
+ ];
21
+ "accounts": [
22
+ {
23
+ "name": "signer";
24
+ "signer": true;
25
+ },
26
+ {
27
+ "name": "feePayer";
28
+ "writable": true;
29
+ "signer": true;
30
+ },
31
+ {
32
+ "name": "meta";
33
+ "writable": true;
34
+ },
35
+ {
36
+ "name": "tokenEmission";
37
+ "docs": [
38
+ "The emission token account, which will be the escrow for accrued emissions"
39
+ ];
40
+ },
41
+ {
42
+ "name": "mintEmission";
43
+ "docs": [
44
+ "The mint for the emission"
45
+ ];
46
+ },
47
+ {
48
+ "name": "systemProgram";
49
+ "docs": [
50
+ "Needed for realloc'ing the emission tracker"
51
+ ];
52
+ },
53
+ {
54
+ "name": "adminState";
55
+ }
56
+ ];
57
+ "args": [];
58
+ },
59
+ {
60
+ "name": "collectEmission";
61
+ "discriminator": [
62
+ 8
63
+ ];
64
+ "accounts": [
65
+ {
66
+ "name": "owner";
67
+ "signer": true;
68
+ },
69
+ {
70
+ "name": "meta";
71
+ "writable": true;
72
+ },
73
+ {
74
+ "name": "position";
75
+ "writable": true;
76
+ },
77
+ {
78
+ "name": "tokenEmissionAccountAuthority";
79
+ "writable": true;
80
+ },
81
+ {
82
+ "name": "tokenEmissionSigner";
83
+ "writable": true;
84
+ },
85
+ {
86
+ "name": "tokenProgram";
87
+ }
88
+ ];
89
+ "args": [
90
+ {
91
+ "name": "amount";
92
+ "type": {
93
+ "defined": {
94
+ "name": "amount";
95
+ };
96
+ };
97
+ }
98
+ ];
99
+ },
100
+ {
101
+ "name": "collectTreasuryEmission";
102
+ "discriminator": [
103
+ 9
104
+ ];
105
+ "accounts": [
106
+ {
107
+ "name": "treasuryAdministrator";
108
+ "signer": true;
109
+ },
110
+ {
111
+ "name": "meta";
112
+ "writable": true;
113
+ },
114
+ {
115
+ "name": "admin";
116
+ },
117
+ {
118
+ "name": "tokenEmissionAccountAuthority";
119
+ "writable": true;
120
+ },
121
+ {
122
+ "name": "tokenEmissionTreasuryAdministrator";
123
+ "writable": true;
124
+ },
125
+ {
126
+ "name": "tokenProgram";
127
+ }
128
+ ];
129
+ "args": [
130
+ {
131
+ "name": "amount";
132
+ "type": {
133
+ "defined": {
134
+ "name": "amount";
135
+ };
136
+ };
137
+ }
138
+ ];
139
+ },
140
+ {
141
+ "name": "deposit";
142
+ "discriminator": [
143
+ 5
144
+ ];
145
+ "accounts": [
146
+ {
147
+ "name": "depositor";
148
+ "writable": true;
149
+ "signer": true;
150
+ },
151
+ {
152
+ "name": "meta";
153
+ "writable": true;
154
+ },
155
+ {
156
+ "name": "mintSy";
157
+ },
158
+ {
159
+ "name": "tokenSyEscrow";
160
+ "writable": true;
161
+ },
162
+ {
163
+ "name": "tokenSyDepositor";
164
+ "writable": true;
165
+ },
166
+ {
167
+ "name": "position";
168
+ "writable": true;
169
+ },
170
+ {
171
+ "name": "tokenProgram";
172
+ },
173
+ {
174
+ "name": "systemProgram";
175
+ }
176
+ ];
177
+ "args": [
178
+ {
179
+ "name": "amount";
180
+ "type": "u64";
181
+ }
182
+ ];
183
+ "returns": {
184
+ "defined": {
185
+ "name": "syState";
186
+ };
187
+ };
188
+ },
189
+ {
190
+ "name": "getPosition";
191
+ "discriminator": [
192
+ 10
193
+ ];
194
+ "accounts": [
195
+ {
196
+ "name": "position";
197
+ "writable": true;
198
+ },
199
+ {
200
+ "name": "meta";
201
+ "writable": true;
202
+ },
203
+ {
204
+ "name": "mintSy";
205
+ },
206
+ {
207
+ "name": "tokenSyEscrow";
208
+ },
209
+ {
210
+ "name": "systemProgram";
211
+ }
212
+ ];
213
+ "args": [];
214
+ "returns": {
215
+ "defined": {
216
+ "name": "positionState";
217
+ };
218
+ };
219
+ },
220
+ {
221
+ "name": "getState";
222
+ "discriminator": [
223
+ 7
224
+ ];
225
+ "accounts": [
226
+ {
227
+ "name": "meta";
228
+ "writable": true;
229
+ },
230
+ {
231
+ "name": "mintSy";
232
+ },
233
+ {
234
+ "name": "tokenSyEscrow";
235
+ }
236
+ ];
237
+ "args": [];
238
+ "returns": {
239
+ "defined": {
240
+ "name": "syState";
241
+ };
242
+ };
243
+ },
244
+ {
245
+ "name": "initSy";
246
+ "discriminator": [
247
+ 0
248
+ ];
249
+ "accounts": [
250
+ {
251
+ "name": "admin";
252
+ "writable": true;
253
+ "signer": true;
254
+ },
255
+ {
256
+ "name": "syMeta";
257
+ "docs": [
258
+ "Master metadata account for SY token"
259
+ ];
260
+ "writable": true;
261
+ },
262
+ {
263
+ "name": "mintSy";
264
+ "docs": [
265
+ "Mint for SY token"
266
+ ];
267
+ "writable": true;
268
+ },
269
+ {
270
+ "name": "yieldBearingMint";
271
+ },
272
+ {
273
+ "name": "tokenVrtEscrow";
274
+ },
275
+ {
276
+ "name": "tokenSyEscrow";
277
+ "docs": [
278
+ "Escrow account for deposited SY"
279
+ ];
280
+ "writable": true;
281
+ },
282
+ {
283
+ "name": "tokenProgram";
284
+ },
285
+ {
286
+ "name": "systemProgram";
287
+ },
288
+ {
289
+ "name": "adminState";
290
+ },
291
+ {
292
+ "name": "metadata";
293
+ "writable": true;
294
+ },
295
+ {
296
+ "name": "tokenMetadataProgram";
297
+ }
298
+ ];
299
+ "args": [
300
+ {
301
+ "name": "minMintSize";
302
+ "type": "u64";
303
+ },
304
+ {
305
+ "name": "minRedeemSize";
306
+ "type": "u64";
307
+ },
308
+ {
309
+ "name": "name";
310
+ "type": "string";
311
+ },
312
+ {
313
+ "name": "symbol";
314
+ "type": "string";
315
+ },
316
+ {
317
+ "name": "uri";
318
+ "type": "string";
319
+ },
320
+ {
321
+ "name": "interfaceAccounts";
322
+ "type": {
323
+ "vec": "pubkey";
324
+ };
325
+ },
326
+ {
327
+ "name": "interfaceType";
328
+ "type": {
329
+ "defined": {
330
+ "name": "interfaceType";
331
+ };
332
+ };
333
+ }
334
+ ];
335
+ },
336
+ {
337
+ "name": "initializePosition";
338
+ "discriminator": [
339
+ 3
340
+ ];
341
+ "accounts": [
342
+ {
343
+ "name": "feePayer";
344
+ "writable": true;
345
+ "signer": true;
346
+ },
347
+ {
348
+ "name": "owner";
349
+ },
350
+ {
351
+ "name": "meta";
352
+ },
353
+ {
354
+ "name": "position";
355
+ "writable": true;
356
+ },
357
+ {
358
+ "name": "systemProgram";
359
+ }
360
+ ];
361
+ "args": [];
362
+ },
363
+ {
364
+ "name": "mint";
365
+ "discriminator": [
366
+ 1
367
+ ];
368
+ "accounts": [
369
+ {
370
+ "name": "depositor";
371
+ "writable": true;
372
+ "signer": true;
373
+ },
374
+ {
375
+ "name": "meta";
376
+ "writable": true;
377
+ },
378
+ {
379
+ "name": "mintSy";
380
+ "writable": true;
381
+ },
382
+ {
383
+ "name": "tokenBaseDepositor";
384
+ "docs": [
385
+ "Depositor's base asset token account"
386
+ ];
387
+ "writable": true;
388
+ },
389
+ {
390
+ "name": "tokenVrtEscrow";
391
+ "docs": [
392
+ "SY robot's base token account"
393
+ ];
394
+ "writable": true;
395
+ },
396
+ {
397
+ "name": "tokenSyDepositor";
398
+ "writable": true;
399
+ },
400
+ {
401
+ "name": "baseTokenProgram";
402
+ },
403
+ {
404
+ "name": "tokenProgram";
405
+ }
406
+ ];
407
+ "args": [
408
+ {
409
+ "name": "amount";
410
+ "type": "u64";
411
+ }
412
+ ];
413
+ "returns": {
414
+ "defined": {
415
+ "name": "mintSyReturnData";
416
+ };
417
+ };
418
+ },
419
+ {
420
+ "name": "modifyHook";
421
+ "discriminator": [
422
+ 12
423
+ ];
424
+ "accounts": [
425
+ {
426
+ "name": "signer";
427
+ "signer": true;
428
+ },
429
+ {
430
+ "name": "feePayer";
431
+ "writable": true;
432
+ "signer": true;
433
+ },
434
+ {
435
+ "name": "meta";
436
+ "writable": true;
437
+ },
438
+ {
439
+ "name": "systemProgram";
440
+ "docs": [
441
+ "Needed for realloc'ing the emission tracker"
442
+ ];
443
+ },
444
+ {
445
+ "name": "adminState";
446
+ }
447
+ ];
448
+ "args": [
449
+ {
450
+ "name": "hook";
451
+ "type": {
452
+ "defined": {
453
+ "name": "hook";
454
+ };
455
+ };
456
+ }
457
+ ];
458
+ },
459
+ {
460
+ "name": "redeem";
461
+ "discriminator": [
462
+ 2
463
+ ];
464
+ "accounts": [
465
+ {
466
+ "name": "signer";
467
+ "writable": true;
468
+ "signer": true;
469
+ },
470
+ {
471
+ "name": "meta";
472
+ "writable": true;
473
+ },
474
+ {
475
+ "name": "tokenBaseDst";
476
+ "writable": true;
477
+ },
478
+ {
479
+ "name": "tokenVrtEscrow";
480
+ "writable": true;
481
+ },
482
+ {
483
+ "name": "tokenSySigner";
484
+ "writable": true;
485
+ },
486
+ {
487
+ "name": "mintSy";
488
+ "writable": true;
489
+ },
490
+ {
491
+ "name": "tokenBaseProgram";
492
+ "docs": [
493
+ "Base token program"
494
+ ];
495
+ },
496
+ {
497
+ "name": "tokenProgram";
498
+ "docs": [
499
+ "SY token program"
500
+ ];
501
+ }
502
+ ];
503
+ "args": [
504
+ {
505
+ "name": "amount";
506
+ "type": "u64";
507
+ }
508
+ ];
509
+ "returns": {
510
+ "defined": {
511
+ "name": "redeemSyReturnData";
512
+ };
513
+ };
514
+ },
515
+ {
516
+ "name": "removeEmission";
517
+ "discriminator": [
518
+ 11
519
+ ];
520
+ "accounts": [
521
+ {
522
+ "name": "signer";
523
+ "signer": true;
524
+ },
525
+ {
526
+ "name": "feePayer";
527
+ "writable": true;
528
+ "signer": true;
529
+ },
530
+ {
531
+ "name": "meta";
532
+ "writable": true;
533
+ },
534
+ {
535
+ "name": "systemProgram";
536
+ "docs": [
537
+ "Needed for realloc'ing the emission tracker"
538
+ ];
539
+ },
540
+ {
541
+ "name": "adminState";
542
+ }
543
+ ];
544
+ "args": [
545
+ {
546
+ "name": "index";
547
+ "type": "u8";
548
+ }
549
+ ];
550
+ },
551
+ {
552
+ "name": "withdraw";
553
+ "discriminator": [
554
+ 6
555
+ ];
556
+ "accounts": [
557
+ {
558
+ "name": "owner";
559
+ "writable": true;
560
+ "signer": true;
561
+ },
562
+ {
563
+ "name": "meta";
564
+ "writable": true;
565
+ },
566
+ {
567
+ "name": "mintSy";
568
+ },
569
+ {
570
+ "name": "position";
571
+ "writable": true;
572
+ },
573
+ {
574
+ "name": "tokenSyEscrow";
575
+ "docs": [
576
+ "Escrow pool of SY tokens"
577
+ ];
578
+ "writable": true;
579
+ },
580
+ {
581
+ "name": "tokenSyDst";
582
+ "docs": [
583
+ "Destination for SY tokens withdrawn"
584
+ ];
585
+ "writable": true;
586
+ },
587
+ {
588
+ "name": "tokenProgram";
589
+ },
590
+ {
591
+ "name": "systemProgram";
592
+ }
593
+ ];
594
+ "args": [
595
+ {
596
+ "name": "amount";
597
+ "type": "u64";
598
+ }
599
+ ];
600
+ "returns": {
601
+ "defined": {
602
+ "name": "syState";
603
+ };
604
+ };
605
+ }
606
+ ];
607
+ "accounts": [
608
+ {
609
+ "name": "admin";
610
+ "discriminator": [
611
+ 244,
612
+ 158,
613
+ 220,
614
+ 65,
615
+ 8,
616
+ 73,
617
+ 4,
618
+ 65
619
+ ];
620
+ },
621
+ {
622
+ "name": "position";
623
+ "discriminator": [
624
+ 170,
625
+ 188,
626
+ 143,
627
+ 228,
628
+ 122,
629
+ 64,
630
+ 247,
631
+ 208
632
+ ];
633
+ },
634
+ {
635
+ "name": "syMeta";
636
+ "discriminator": [
637
+ 254,
638
+ 147,
639
+ 136,
640
+ 16,
641
+ 163,
642
+ 203,
643
+ 98,
644
+ 93
645
+ ];
646
+ }
647
+ ];
648
+ "errors": [
649
+ {
650
+ "code": 6000;
651
+ "name": "mintAmountTooLow";
652
+ "msg": "The mint amount is too low";
653
+ },
654
+ {
655
+ "code": 6001;
656
+ "name": "positionAmountTooLow";
657
+ "msg": "The position amount is too low";
658
+ },
659
+ {
660
+ "code": 6002;
661
+ "name": "redeemAmountTooLow";
662
+ "msg": "The redeem amount is too low";
663
+ },
664
+ {
665
+ "code": 6003;
666
+ "name": "noRewardsForMeta";
667
+ "msg": "No rewards for meta";
668
+ },
669
+ {
670
+ "code": 6004;
671
+ "name": "invalidPriceFeed";
672
+ "msg": "Invalid price feed";
673
+ }
674
+ ];
675
+ "types": [
676
+ {
677
+ "name": "admin";
678
+ "type": {
679
+ "kind": "struct";
680
+ "fields": [
681
+ {
682
+ "name": "uberAdmin";
683
+ "type": "pubkey";
684
+ },
685
+ {
686
+ "name": "proposedUberAdmin";
687
+ "type": {
688
+ "option": "pubkey";
689
+ };
690
+ },
691
+ {
692
+ "name": "principles";
693
+ "type": {
694
+ "defined": {
695
+ "name": "principles";
696
+ };
697
+ };
698
+ }
699
+ ];
700
+ };
701
+ },
702
+ {
703
+ "name": "amount";
704
+ "type": {
705
+ "kind": "enum";
706
+ "variants": [
707
+ {
708
+ "name": "all";
709
+ },
710
+ {
711
+ "name": "some";
712
+ "fields": [
713
+ "u64"
714
+ ];
715
+ }
716
+ ];
717
+ };
718
+ },
719
+ {
720
+ "name": "hook";
721
+ "type": {
722
+ "kind": "struct";
723
+ "fields": [
724
+ {
725
+ "name": "enabled";
726
+ "type": "bool";
727
+ },
728
+ {
729
+ "name": "interfaceEmissionsAccountsUntil";
730
+ "type": "u8";
731
+ },
732
+ {
733
+ "name": "programId";
734
+ "type": "pubkey";
735
+ },
736
+ {
737
+ "name": "preMintHookDiscriminator";
738
+ "type": "bytes";
739
+ },
740
+ {
741
+ "name": "postRedeemHookDiscriminator";
742
+ "type": "bytes";
743
+ }
744
+ ];
745
+ };
746
+ },
747
+ {
748
+ "name": "interfaceType";
749
+ "type": {
750
+ "kind": "enum";
751
+ "variants": [
752
+ {
753
+ "name": "pyth";
754
+ "fields": [
755
+ {
756
+ "name": "lastSlot";
757
+ "docs": [
758
+ "The last slot the price feed was updated"
759
+ ];
760
+ "type": "u64";
761
+ },
762
+ {
763
+ "name": "maximumAgeSeconds";
764
+ "docs": [
765
+ "Maximum age in seconds of the price feed"
766
+ ];
767
+ "type": "u64";
768
+ }
769
+ ];
770
+ },
771
+ {
772
+ "name": "splStakePool";
773
+ },
774
+ {
775
+ "name": "one";
776
+ },
777
+ {
778
+ "name": "fragmetric";
779
+ },
780
+ {
781
+ "name": "meteora";
782
+ }
783
+ ];
784
+ };
785
+ },
786
+ {
787
+ "name": "mintSyReturnData";
788
+ "type": {
789
+ "kind": "struct";
790
+ "fields": [
791
+ {
792
+ "name": "syOutAmount";
793
+ "type": "u64";
794
+ },
795
+ {
796
+ "name": "exchangeRate";
797
+ "type": {
798
+ "defined": {
799
+ "name": "number";
800
+ };
801
+ };
802
+ }
803
+ ];
804
+ };
805
+ },
806
+ {
807
+ "name": "number";
808
+ "docs": [
809
+ "High precision number, stored as 4 u64 words in little endian"
810
+ ];
811
+ "type": {
812
+ "kind": "struct";
813
+ "fields": [
814
+ {
815
+ "array": [
816
+ "u64",
817
+ 4
818
+ ];
819
+ }
820
+ ];
821
+ };
822
+ },
823
+ {
824
+ "name": "position";
825
+ "type": {
826
+ "kind": "struct";
827
+ "fields": [
828
+ {
829
+ "name": "owner";
830
+ "type": "pubkey";
831
+ },
832
+ {
833
+ "name": "meta";
834
+ "type": "pubkey";
835
+ },
836
+ {
837
+ "name": "amount";
838
+ "type": "u64";
839
+ },
840
+ {
841
+ "name": "rewardIndexes";
842
+ "type": {
843
+ "vec": {
844
+ "defined": {
845
+ "name": "reward";
846
+ };
847
+ };
848
+ };
849
+ }
850
+ ];
851
+ };
852
+ },
853
+ {
854
+ "name": "positionState";
855
+ "type": {
856
+ "kind": "struct";
857
+ "fields": [
858
+ {
859
+ "name": "owner";
860
+ "type": "pubkey";
861
+ },
862
+ {
863
+ "name": "syBalance";
864
+ "type": "u64";
865
+ },
866
+ {
867
+ "name": "emissions";
868
+ "type": {
869
+ "vec": {
870
+ "defined": {
871
+ "name": "sy_common::Emission";
872
+ };
873
+ };
874
+ };
875
+ }
876
+ ];
877
+ };
878
+ },
879
+ {
880
+ "name": "principleDetails";
881
+ "type": {
882
+ "kind": "struct";
883
+ "fields": [
884
+ {
885
+ "name": "administrators";
886
+ "type": {
887
+ "vec": "pubkey";
888
+ };
889
+ }
890
+ ];
891
+ };
892
+ },
893
+ {
894
+ "name": "principles";
895
+ "type": {
896
+ "kind": "struct";
897
+ "fields": [
898
+ {
899
+ "name": "marginfiStandard";
900
+ "type": {
901
+ "defined": {
902
+ "name": "principleDetails";
903
+ };
904
+ };
905
+ },
906
+ {
907
+ "name": "collectTreasury";
908
+ "type": {
909
+ "defined": {
910
+ "name": "principleDetails";
911
+ };
912
+ };
913
+ },
914
+ {
915
+ "name": "kaminoLendStandard";
916
+ "type": {
917
+ "defined": {
918
+ "name": "principleDetails";
919
+ };
920
+ };
921
+ },
922
+ {
923
+ "name": "exponentCore";
924
+ "type": {
925
+ "defined": {
926
+ "name": "principleDetails";
927
+ };
928
+ };
929
+ },
930
+ {
931
+ "name": "changeStatusFlags";
932
+ "type": {
933
+ "defined": {
934
+ "name": "principleDetails";
935
+ };
936
+ };
937
+ },
938
+ {
939
+ "name": "jitoRestaking";
940
+ "type": {
941
+ "defined": {
942
+ "name": "principleDetails";
943
+ };
944
+ };
945
+ }
946
+ ];
947
+ };
948
+ },
949
+ {
950
+ "name": "redeemSyReturnData";
951
+ "type": {
952
+ "kind": "struct";
953
+ "fields": [
954
+ {
955
+ "name": "baseOutAmount";
956
+ "type": "u64";
957
+ },
958
+ {
959
+ "name": "exchangeRate";
960
+ "type": {
961
+ "defined": {
962
+ "name": "number";
963
+ };
964
+ };
965
+ }
966
+ ];
967
+ };
968
+ },
969
+ {
970
+ "name": "reward";
971
+ "type": {
972
+ "kind": "struct";
973
+ "fields": [
974
+ {
975
+ "name": "mint";
976
+ "type": "pubkey";
977
+ },
978
+ {
979
+ "name": "lastSeenShareIndex";
980
+ "type": {
981
+ "defined": {
982
+ "name": "number";
983
+ };
984
+ };
985
+ },
986
+ {
987
+ "name": "claimableRewardsAmount";
988
+ "type": "u64";
989
+ }
990
+ ];
991
+ };
992
+ },
993
+ {
994
+ "name": "syMeta";
995
+ "docs": [
996
+ "Metadata for an SY token"
997
+ ];
998
+ "type": {
999
+ "kind": "struct";
1000
+ "fields": [
1001
+ {
1002
+ "name": "mintSy";
1003
+ "docs": [
1004
+ "Mint for the SY token"
1005
+ ];
1006
+ "type": "pubkey";
1007
+ },
1008
+ {
1009
+ "name": "tokenSyEscrow";
1010
+ "docs": [
1011
+ "Escrow account where SY gets deposited"
1012
+ ];
1013
+ "type": "pubkey";
1014
+ },
1015
+ {
1016
+ "name": "maxSySupply";
1017
+ "docs": [
1018
+ "Maximum supply of SY tokens"
1019
+ ];
1020
+ "type": "u64";
1021
+ },
1022
+ {
1023
+ "name": "minMintSize";
1024
+ "docs": [
1025
+ "Minimum size of SY tokens that can be made from minting",
1026
+ "This is to prevent dust from being minted, or from rounding errors"
1027
+ ];
1028
+ "type": "u64";
1029
+ },
1030
+ {
1031
+ "name": "minRedeemSize";
1032
+ "docs": [
1033
+ "Minimum size of SY tokens that can be redeemed",
1034
+ "This is to prevent dust from being redeemed, or from rounding errors"
1035
+ ];
1036
+ "type": "u64";
1037
+ },
1038
+ {
1039
+ "name": "selfAddressBump";
1040
+ "docs": [
1041
+ "Bump for the self address to this PDA"
1042
+ ];
1043
+ "type": {
1044
+ "array": [
1045
+ "u8",
1046
+ 1
1047
+ ];
1048
+ };
1049
+ },
1050
+ {
1051
+ "name": "index";
1052
+ "docs": [
1053
+ "Index of the SY token"
1054
+ ];
1055
+ "type": {
1056
+ "defined": {
1057
+ "name": "number";
1058
+ };
1059
+ };
1060
+ },
1061
+ {
1062
+ "name": "yieldBearingMint";
1063
+ "docs": [
1064
+ "Yield bearing mint id"
1065
+ ];
1066
+ "type": "pubkey";
1067
+ },
1068
+ {
1069
+ "name": "interfaceType";
1070
+ "docs": [
1071
+ "Type of interface being used"
1072
+ ];
1073
+ "type": {
1074
+ "defined": {
1075
+ "name": "interfaceType";
1076
+ };
1077
+ };
1078
+ },
1079
+ {
1080
+ "name": "hook";
1081
+ "docs": [
1082
+ "Info for pre mint and post redeem hooks"
1083
+ ];
1084
+ "type": {
1085
+ "defined": {
1086
+ "name": "hook";
1087
+ };
1088
+ };
1089
+ },
1090
+ {
1091
+ "name": "interfaceAccounts";
1092
+ "type": {
1093
+ "vec": "pubkey";
1094
+ };
1095
+ },
1096
+ {
1097
+ "name": "emissions";
1098
+ "docs": [
1099
+ "List of emissions"
1100
+ ];
1101
+ "type": {
1102
+ "vec": {
1103
+ "defined": {
1104
+ "name": "generic_standard::state::sy_meta::Emission";
1105
+ };
1106
+ };
1107
+ };
1108
+ }
1109
+ ];
1110
+ };
1111
+ },
1112
+ {
1113
+ "name": "syState";
1114
+ "type": {
1115
+ "kind": "struct";
1116
+ "fields": [
1117
+ {
1118
+ "name": "exchangeRate";
1119
+ "type": {
1120
+ "defined": {
1121
+ "name": "number";
1122
+ };
1123
+ };
1124
+ },
1125
+ {
1126
+ "name": "emissionIndexes";
1127
+ "type": {
1128
+ "vec": {
1129
+ "defined": {
1130
+ "name": "number";
1131
+ };
1132
+ };
1133
+ };
1134
+ }
1135
+ ];
1136
+ };
1137
+ },
1138
+ {
1139
+ "name": "generic_standard::state::sy_meta::Emission";
1140
+ "type": {
1141
+ "kind": "struct";
1142
+ "fields": [
1143
+ {
1144
+ "name": "mint";
1145
+ "docs": [
1146
+ "Mint of the emission"
1147
+ ];
1148
+ "type": "pubkey";
1149
+ },
1150
+ {
1151
+ "name": "index";
1152
+ "docs": [
1153
+ "Index of the emission"
1154
+ ];
1155
+ "type": {
1156
+ "defined": {
1157
+ "name": "number";
1158
+ };
1159
+ };
1160
+ },
1161
+ {
1162
+ "name": "lastSeenTotalAccruedEmissions";
1163
+ "docs": [
1164
+ "How many emissions have been earned by the SY pool over its lifetime"
1165
+ ];
1166
+ "type": "u128";
1167
+ },
1168
+ {
1169
+ "name": "totalClaimedEmissions";
1170
+ "docs": [
1171
+ "How many emissions have been withdrawn by SY users over its lifetime"
1172
+ ];
1173
+ "type": "u128";
1174
+ },
1175
+ {
1176
+ "name": "tokenProgram";
1177
+ "type": "pubkey";
1178
+ },
1179
+ {
1180
+ "name": "escrowAccount";
1181
+ "docs": [
1182
+ "Token account that holds collected emissions in escrow"
1183
+ ];
1184
+ "type": "pubkey";
1185
+ },
1186
+ {
1187
+ "name": "treasuryEmission";
1188
+ "docs": [
1189
+ "Treasury emission comes from the emissions of SY that has not been staked and can be withdrawn by the Admin key"
1190
+ ];
1191
+ "type": "u64";
1192
+ },
1193
+ {
1194
+ "name": "lastSeenIndex";
1195
+ "docs": [
1196
+ "Used for staging treasury earnings from unstaked SY"
1197
+ ];
1198
+ "type": {
1199
+ "defined": {
1200
+ "name": "number";
1201
+ };
1202
+ };
1203
+ }
1204
+ ];
1205
+ };
1206
+ },
1207
+ {
1208
+ "name": "sy_common::Emission";
1209
+ "type": {
1210
+ "kind": "struct";
1211
+ "fields": [
1212
+ {
1213
+ "name": "mint";
1214
+ "type": "pubkey";
1215
+ },
1216
+ {
1217
+ "name": "amountClaimable";
1218
+ "type": "u64";
1219
+ },
1220
+ {
1221
+ "name": "lastSeenEmissionIndex";
1222
+ "type": {
1223
+ "defined": {
1224
+ "name": "number";
1225
+ };
1226
+ };
1227
+ }
1228
+ ];
1229
+ };
1230
+ }
1231
+ ];
1232
+ "constants": [
1233
+ {
1234
+ "name": "positionBaseSeed";
1235
+ "type": "bytes";
1236
+ "value": "[112, 111, 115, 105, 116, 105, 111, 110]";
1237
+ },
1238
+ {
1239
+ "name": "receiptMintBaseSeed";
1240
+ "type": "bytes";
1241
+ "value": "[103, 101, 110, 101, 114, 105, 99, 95, 116, 111, 107, 101, 110]";
1242
+ },
1243
+ {
1244
+ "name": "syEscrowSeed";
1245
+ "type": "bytes";
1246
+ "value": "[115, 121, 95, 101, 115, 99, 114, 111, 119]";
1247
+ },
1248
+ {
1249
+ "name": "syMetaSeed";
1250
+ "type": "bytes";
1251
+ "value": "[109, 101, 116, 97]";
1252
+ }
1253
+ ];
1254
+ };