flash-sdk 1.0.2 → 1.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.
@@ -1,3537 +0,0 @@
1
- {
2
- "version": "0.1.0",
3
- "name": "perpetuals",
4
- "instructions": [
5
- {
6
- "name": "init",
7
- "accounts": [
8
- {
9
- "name": "upgradeAuthority",
10
- "isMut": true,
11
- "isSigner": true
12
- },
13
- {
14
- "name": "multisig",
15
- "isMut": true,
16
- "isSigner": false
17
- },
18
- {
19
- "name": "transferAuthority",
20
- "isMut": true,
21
- "isSigner": false
22
- },
23
- {
24
- "name": "perpetuals",
25
- "isMut": true,
26
- "isSigner": false
27
- },
28
- {
29
- "name": "perpetualsProgram",
30
- "isMut": false,
31
- "isSigner": false
32
- },
33
- {
34
- "name": "perpetualsProgramData",
35
- "isMut": false,
36
- "isSigner": false
37
- },
38
- {
39
- "name": "systemProgram",
40
- "isMut": false,
41
- "isSigner": false
42
- },
43
- {
44
- "name": "tokenProgram",
45
- "isMut": false,
46
- "isSigner": false
47
- }
48
- ],
49
- "args": [
50
- {
51
- "name": "params",
52
- "type": {
53
- "defined": "InitParams"
54
- }
55
- }
56
- ]
57
- },
58
- {
59
- "name": "addPool",
60
- "accounts": [
61
- {
62
- "name": "admin",
63
- "isMut": true,
64
- "isSigner": true
65
- },
66
- {
67
- "name": "multisig",
68
- "isMut": true,
69
- "isSigner": false
70
- },
71
- {
72
- "name": "transferAuthority",
73
- "isMut": false,
74
- "isSigner": false
75
- },
76
- {
77
- "name": "perpetuals",
78
- "isMut": true,
79
- "isSigner": false
80
- },
81
- {
82
- "name": "pool",
83
- "isMut": true,
84
- "isSigner": false
85
- },
86
- {
87
- "name": "lpTokenMint",
88
- "isMut": true,
89
- "isSigner": false
90
- },
91
- {
92
- "name": "systemProgram",
93
- "isMut": false,
94
- "isSigner": false
95
- },
96
- {
97
- "name": "tokenProgram",
98
- "isMut": false,
99
- "isSigner": false
100
- },
101
- {
102
- "name": "rent",
103
- "isMut": false,
104
- "isSigner": false
105
- }
106
- ],
107
- "args": [
108
- {
109
- "name": "params",
110
- "type": {
111
- "defined": "AddPoolParams"
112
- }
113
- }
114
- ],
115
- "returns": "u8"
116
- },
117
- {
118
- "name": "removePool",
119
- "accounts": [
120
- {
121
- "name": "admin",
122
- "isMut": true,
123
- "isSigner": true
124
- },
125
- {
126
- "name": "multisig",
127
- "isMut": true,
128
- "isSigner": false
129
- },
130
- {
131
- "name": "transferAuthority",
132
- "isMut": true,
133
- "isSigner": false
134
- },
135
- {
136
- "name": "perpetuals",
137
- "isMut": true,
138
- "isSigner": false
139
- },
140
- {
141
- "name": "pool",
142
- "isMut": true,
143
- "isSigner": false
144
- },
145
- {
146
- "name": "systemProgram",
147
- "isMut": false,
148
- "isSigner": false
149
- }
150
- ],
151
- "args": [
152
- {
153
- "name": "params",
154
- "type": {
155
- "defined": "RemovePoolParams"
156
- }
157
- }
158
- ],
159
- "returns": "u8"
160
- },
161
- {
162
- "name": "addCustody",
163
- "accounts": [
164
- {
165
- "name": "admin",
166
- "isMut": true,
167
- "isSigner": true
168
- },
169
- {
170
- "name": "multisig",
171
- "isMut": true,
172
- "isSigner": false
173
- },
174
- {
175
- "name": "transferAuthority",
176
- "isMut": false,
177
- "isSigner": false
178
- },
179
- {
180
- "name": "perpetuals",
181
- "isMut": false,
182
- "isSigner": false
183
- },
184
- {
185
- "name": "pool",
186
- "isMut": true,
187
- "isSigner": false
188
- },
189
- {
190
- "name": "custody",
191
- "isMut": true,
192
- "isSigner": false
193
- },
194
- {
195
- "name": "custodyTokenAccount",
196
- "isMut": true,
197
- "isSigner": false
198
- },
199
- {
200
- "name": "custodyTokenMint",
201
- "isMut": false,
202
- "isSigner": false
203
- },
204
- {
205
- "name": "systemProgram",
206
- "isMut": false,
207
- "isSigner": false
208
- },
209
- {
210
- "name": "tokenProgram",
211
- "isMut": false,
212
- "isSigner": false
213
- },
214
- {
215
- "name": "rent",
216
- "isMut": false,
217
- "isSigner": false
218
- }
219
- ],
220
- "args": [
221
- {
222
- "name": "params",
223
- "type": {
224
- "defined": "AddCustodyParams"
225
- }
226
- }
227
- ],
228
- "returns": "u8"
229
- },
230
- {
231
- "name": "testingEditCustody",
232
- "accounts": [
233
- {
234
- "name": "admin",
235
- "isMut": true,
236
- "isSigner": true
237
- },
238
- {
239
- "name": "multisig",
240
- "isMut": true,
241
- "isSigner": false
242
- },
243
- {
244
- "name": "transferAuthority",
245
- "isMut": false,
246
- "isSigner": false
247
- },
248
- {
249
- "name": "perpetuals",
250
- "isMut": false,
251
- "isSigner": false
252
- },
253
- {
254
- "name": "pool",
255
- "isMut": true,
256
- "isSigner": false
257
- },
258
- {
259
- "name": "custody",
260
- "isMut": true,
261
- "isSigner": false
262
- },
263
- {
264
- "name": "custodyTokenAccount",
265
- "isMut": true,
266
- "isSigner": false
267
- },
268
- {
269
- "name": "custodyTokenMint",
270
- "isMut": false,
271
- "isSigner": false
272
- },
273
- {
274
- "name": "systemProgram",
275
- "isMut": false,
276
- "isSigner": false
277
- },
278
- {
279
- "name": "tokenProgram",
280
- "isMut": false,
281
- "isSigner": false
282
- },
283
- {
284
- "name": "rent",
285
- "isMut": false,
286
- "isSigner": false
287
- }
288
- ],
289
- "args": [
290
- {
291
- "name": "params",
292
- "type": {
293
- "defined": "EditCustodyParams"
294
- }
295
- }
296
- ],
297
- "returns": "u8"
298
- },
299
- {
300
- "name": "removeCustody",
301
- "accounts": [
302
- {
303
- "name": "admin",
304
- "isMut": true,
305
- "isSigner": true
306
- },
307
- {
308
- "name": "multisig",
309
- "isMut": true,
310
- "isSigner": false
311
- },
312
- {
313
- "name": "transferAuthority",
314
- "isMut": true,
315
- "isSigner": false
316
- },
317
- {
318
- "name": "perpetuals",
319
- "isMut": false,
320
- "isSigner": false
321
- },
322
- {
323
- "name": "pool",
324
- "isMut": true,
325
- "isSigner": false
326
- },
327
- {
328
- "name": "custody",
329
- "isMut": true,
330
- "isSigner": false
331
- },
332
- {
333
- "name": "custodyTokenAccount",
334
- "isMut": true,
335
- "isSigner": false
336
- },
337
- {
338
- "name": "systemProgram",
339
- "isMut": false,
340
- "isSigner": false
341
- },
342
- {
343
- "name": "tokenProgram",
344
- "isMut": false,
345
- "isSigner": false
346
- }
347
- ],
348
- "args": [
349
- {
350
- "name": "params",
351
- "type": {
352
- "defined": "RemoveCustodyParams"
353
- }
354
- }
355
- ],
356
- "returns": "u8"
357
- },
358
- {
359
- "name": "setAdminSigners",
360
- "accounts": [
361
- {
362
- "name": "admin",
363
- "isMut": false,
364
- "isSigner": true
365
- },
366
- {
367
- "name": "multisig",
368
- "isMut": true,
369
- "isSigner": false
370
- }
371
- ],
372
- "args": [
373
- {
374
- "name": "params",
375
- "type": {
376
- "defined": "SetAdminSignersParams"
377
- }
378
- }
379
- ],
380
- "returns": "u8"
381
- },
382
- {
383
- "name": "setCustodyConfig",
384
- "accounts": [
385
- {
386
- "name": "admin",
387
- "isMut": false,
388
- "isSigner": true
389
- },
390
- {
391
- "name": "multisig",
392
- "isMut": true,
393
- "isSigner": false
394
- },
395
- {
396
- "name": "pool",
397
- "isMut": true,
398
- "isSigner": false
399
- },
400
- {
401
- "name": "custody",
402
- "isMut": true,
403
- "isSigner": false
404
- }
405
- ],
406
- "args": [
407
- {
408
- "name": "params",
409
- "type": {
410
- "defined": "SetCustodyConfigParams"
411
- }
412
- }
413
- ],
414
- "returns": "u8"
415
- },
416
- {
417
- "name": "setPermissions",
418
- "accounts": [
419
- {
420
- "name": "admin",
421
- "isMut": false,
422
- "isSigner": true
423
- },
424
- {
425
- "name": "multisig",
426
- "isMut": true,
427
- "isSigner": false
428
- },
429
- {
430
- "name": "perpetuals",
431
- "isMut": true,
432
- "isSigner": false
433
- }
434
- ],
435
- "args": [
436
- {
437
- "name": "params",
438
- "type": {
439
- "defined": "SetPermissionsParams"
440
- }
441
- }
442
- ],
443
- "returns": "u8"
444
- },
445
- {
446
- "name": "withdrawFees",
447
- "accounts": [
448
- {
449
- "name": "admin",
450
- "isMut": false,
451
- "isSigner": true
452
- },
453
- {
454
- "name": "multisig",
455
- "isMut": true,
456
- "isSigner": false
457
- },
458
- {
459
- "name": "transferAuthority",
460
- "isMut": false,
461
- "isSigner": false
462
- },
463
- {
464
- "name": "perpetuals",
465
- "isMut": false,
466
- "isSigner": false
467
- },
468
- {
469
- "name": "pool",
470
- "isMut": true,
471
- "isSigner": false
472
- },
473
- {
474
- "name": "custody",
475
- "isMut": true,
476
- "isSigner": false
477
- },
478
- {
479
- "name": "custodyTokenAccount",
480
- "isMut": true,
481
- "isSigner": false
482
- },
483
- {
484
- "name": "receivingTokenAccount",
485
- "isMut": true,
486
- "isSigner": false
487
- },
488
- {
489
- "name": "tokenProgram",
490
- "isMut": false,
491
- "isSigner": false
492
- }
493
- ],
494
- "args": [
495
- {
496
- "name": "params",
497
- "type": {
498
- "defined": "WithdrawFeesParams"
499
- }
500
- }
501
- ],
502
- "returns": "u8"
503
- },
504
- {
505
- "name": "withdrawSolFees",
506
- "accounts": [
507
- {
508
- "name": "admin",
509
- "isMut": false,
510
- "isSigner": true
511
- },
512
- {
513
- "name": "multisig",
514
- "isMut": true,
515
- "isSigner": false
516
- },
517
- {
518
- "name": "transferAuthority",
519
- "isMut": false,
520
- "isSigner": false
521
- },
522
- {
523
- "name": "perpetuals",
524
- "isMut": false,
525
- "isSigner": false
526
- },
527
- {
528
- "name": "receivingAccount",
529
- "isMut": true,
530
- "isSigner": false
531
- }
532
- ],
533
- "args": [
534
- {
535
- "name": "params",
536
- "type": {
537
- "defined": "WithdrawSolFeesParams"
538
- }
539
- }
540
- ],
541
- "returns": "u8"
542
- },
543
- {
544
- "name": "upgradeCustody",
545
- "accounts": [
546
- {
547
- "name": "admin",
548
- "isMut": true,
549
- "isSigner": true
550
- },
551
- {
552
- "name": "multisig",
553
- "isMut": true,
554
- "isSigner": false
555
- },
556
- {
557
- "name": "pool",
558
- "isMut": true,
559
- "isSigner": false
560
- },
561
- {
562
- "name": "custody",
563
- "isMut": true,
564
- "isSigner": false
565
- },
566
- {
567
- "name": "systemProgram",
568
- "isMut": false,
569
- "isSigner": false
570
- }
571
- ],
572
- "args": [
573
- {
574
- "name": "params",
575
- "type": {
576
- "defined": "UpgradeCustodyParams"
577
- }
578
- }
579
- ],
580
- "returns": "u8"
581
- },
582
- {
583
- "name": "testInit",
584
- "accounts": [
585
- {
586
- "name": "upgradeAuthority",
587
- "isMut": true,
588
- "isSigner": true
589
- },
590
- {
591
- "name": "multisig",
592
- "isMut": true,
593
- "isSigner": false
594
- },
595
- {
596
- "name": "transferAuthority",
597
- "isMut": true,
598
- "isSigner": false
599
- },
600
- {
601
- "name": "perpetuals",
602
- "isMut": true,
603
- "isSigner": false
604
- },
605
- {
606
- "name": "systemProgram",
607
- "isMut": false,
608
- "isSigner": false
609
- },
610
- {
611
- "name": "tokenProgram",
612
- "isMut": false,
613
- "isSigner": false
614
- }
615
- ],
616
- "args": [
617
- {
618
- "name": "params",
619
- "type": {
620
- "defined": "TestInitParams"
621
- }
622
- }
623
- ]
624
- },
625
- {
626
- "name": "setTestOraclePrice",
627
- "accounts": [
628
- {
629
- "name": "admin",
630
- "isMut": true,
631
- "isSigner": true
632
- },
633
- {
634
- "name": "multisig",
635
- "isMut": true,
636
- "isSigner": false
637
- },
638
- {
639
- "name": "perpetuals",
640
- "isMut": false,
641
- "isSigner": false
642
- },
643
- {
644
- "name": "pool",
645
- "isMut": false,
646
- "isSigner": false
647
- },
648
- {
649
- "name": "custody",
650
- "isMut": false,
651
- "isSigner": false
652
- },
653
- {
654
- "name": "oracleAccount",
655
- "isMut": true,
656
- "isSigner": false
657
- },
658
- {
659
- "name": "systemProgram",
660
- "isMut": false,
661
- "isSigner": false
662
- }
663
- ],
664
- "args": [
665
- {
666
- "name": "params",
667
- "type": {
668
- "defined": "SetTestOraclePriceParams"
669
- }
670
- }
671
- ],
672
- "returns": "u8"
673
- },
674
- {
675
- "name": "setTestTime",
676
- "accounts": [
677
- {
678
- "name": "admin",
679
- "isMut": false,
680
- "isSigner": true
681
- },
682
- {
683
- "name": "multisig",
684
- "isMut": true,
685
- "isSigner": false
686
- },
687
- {
688
- "name": "perpetuals",
689
- "isMut": true,
690
- "isSigner": false
691
- }
692
- ],
693
- "args": [
694
- {
695
- "name": "params",
696
- "type": {
697
- "defined": "SetTestTimeParams"
698
- }
699
- }
700
- ],
701
- "returns": "u8"
702
- },
703
- {
704
- "name": "swap",
705
- "accounts": [
706
- {
707
- "name": "owner",
708
- "isMut": true,
709
- "isSigner": true
710
- },
711
- {
712
- "name": "fundingAccount",
713
- "isMut": true,
714
- "isSigner": false
715
- },
716
- {
717
- "name": "receivingAccount",
718
- "isMut": true,
719
- "isSigner": false
720
- },
721
- {
722
- "name": "transferAuthority",
723
- "isMut": false,
724
- "isSigner": false
725
- },
726
- {
727
- "name": "perpetuals",
728
- "isMut": false,
729
- "isSigner": false
730
- },
731
- {
732
- "name": "pool",
733
- "isMut": true,
734
- "isSigner": false
735
- },
736
- {
737
- "name": "receivingCustody",
738
- "isMut": true,
739
- "isSigner": false
740
- },
741
- {
742
- "name": "receivingCustodyOracleAccount",
743
- "isMut": false,
744
- "isSigner": false
745
- },
746
- {
747
- "name": "receivingCustodyTokenAccount",
748
- "isMut": true,
749
- "isSigner": false
750
- },
751
- {
752
- "name": "dispensingCustody",
753
- "isMut": true,
754
- "isSigner": false
755
- },
756
- {
757
- "name": "dispensingCustodyOracleAccount",
758
- "isMut": false,
759
- "isSigner": false
760
- },
761
- {
762
- "name": "dispensingCustodyTokenAccount",
763
- "isMut": true,
764
- "isSigner": false
765
- },
766
- {
767
- "name": "tokenProgram",
768
- "isMut": false,
769
- "isSigner": false
770
- }
771
- ],
772
- "args": [
773
- {
774
- "name": "params",
775
- "type": {
776
- "defined": "SwapParams"
777
- }
778
- }
779
- ]
780
- },
781
- {
782
- "name": "addLiquidity",
783
- "accounts": [
784
- {
785
- "name": "owner",
786
- "isMut": true,
787
- "isSigner": true
788
- },
789
- {
790
- "name": "fundingAccount",
791
- "isMut": true,
792
- "isSigner": false
793
- },
794
- {
795
- "name": "lpTokenAccount",
796
- "isMut": true,
797
- "isSigner": false
798
- },
799
- {
800
- "name": "transferAuthority",
801
- "isMut": false,
802
- "isSigner": false
803
- },
804
- {
805
- "name": "perpetuals",
806
- "isMut": false,
807
- "isSigner": false
808
- },
809
- {
810
- "name": "pool",
811
- "isMut": true,
812
- "isSigner": false
813
- },
814
- {
815
- "name": "custody",
816
- "isMut": true,
817
- "isSigner": false
818
- },
819
- {
820
- "name": "custodyOracleAccount",
821
- "isMut": false,
822
- "isSigner": false
823
- },
824
- {
825
- "name": "custodyTokenAccount",
826
- "isMut": true,
827
- "isSigner": false
828
- },
829
- {
830
- "name": "lpTokenMint",
831
- "isMut": true,
832
- "isSigner": false
833
- },
834
- {
835
- "name": "tokenProgram",
836
- "isMut": false,
837
- "isSigner": false
838
- }
839
- ],
840
- "args": [
841
- {
842
- "name": "params",
843
- "type": {
844
- "defined": "AddLiquidityParams"
845
- }
846
- }
847
- ]
848
- },
849
- {
850
- "name": "removeLiquidity",
851
- "accounts": [
852
- {
853
- "name": "owner",
854
- "isMut": true,
855
- "isSigner": true
856
- },
857
- {
858
- "name": "receivingAccount",
859
- "isMut": true,
860
- "isSigner": false
861
- },
862
- {
863
- "name": "lpTokenAccount",
864
- "isMut": true,
865
- "isSigner": false
866
- },
867
- {
868
- "name": "transferAuthority",
869
- "isMut": false,
870
- "isSigner": false
871
- },
872
- {
873
- "name": "perpetuals",
874
- "isMut": false,
875
- "isSigner": false
876
- },
877
- {
878
- "name": "pool",
879
- "isMut": true,
880
- "isSigner": false
881
- },
882
- {
883
- "name": "custody",
884
- "isMut": true,
885
- "isSigner": false
886
- },
887
- {
888
- "name": "custodyOracleAccount",
889
- "isMut": false,
890
- "isSigner": false
891
- },
892
- {
893
- "name": "custodyTokenAccount",
894
- "isMut": true,
895
- "isSigner": false
896
- },
897
- {
898
- "name": "lpTokenMint",
899
- "isMut": true,
900
- "isSigner": false
901
- },
902
- {
903
- "name": "tokenProgram",
904
- "isMut": false,
905
- "isSigner": false
906
- }
907
- ],
908
- "args": [
909
- {
910
- "name": "params",
911
- "type": {
912
- "defined": "RemoveLiquidityParams"
913
- }
914
- }
915
- ]
916
- },
917
- {
918
- "name": "openPosition",
919
- "accounts": [
920
- {
921
- "name": "owner",
922
- "isMut": true,
923
- "isSigner": true
924
- },
925
- {
926
- "name": "fundingAccount",
927
- "isMut": true,
928
- "isSigner": false
929
- },
930
- {
931
- "name": "transferAuthority",
932
- "isMut": false,
933
- "isSigner": false
934
- },
935
- {
936
- "name": "perpetuals",
937
- "isMut": false,
938
- "isSigner": false
939
- },
940
- {
941
- "name": "pool",
942
- "isMut": true,
943
- "isSigner": false
944
- },
945
- {
946
- "name": "position",
947
- "isMut": true,
948
- "isSigner": false
949
- },
950
- {
951
- "name": "custody",
952
- "isMut": true,
953
- "isSigner": false
954
- },
955
- {
956
- "name": "custodyOracleAccount",
957
- "isMut": false,
958
- "isSigner": false
959
- },
960
- {
961
- "name": "custodyTokenAccount",
962
- "isMut": true,
963
- "isSigner": false
964
- },
965
- {
966
- "name": "systemProgram",
967
- "isMut": false,
968
- "isSigner": false
969
- },
970
- {
971
- "name": "tokenProgram",
972
- "isMut": false,
973
- "isSigner": false
974
- }
975
- ],
976
- "args": [
977
- {
978
- "name": "params",
979
- "type": {
980
- "defined": "OpenPositionParams"
981
- }
982
- }
983
- ]
984
- },
985
- {
986
- "name": "addCollateral",
987
- "accounts": [
988
- {
989
- "name": "owner",
990
- "isMut": true,
991
- "isSigner": true
992
- },
993
- {
994
- "name": "fundingAccount",
995
- "isMut": true,
996
- "isSigner": false
997
- },
998
- {
999
- "name": "transferAuthority",
1000
- "isMut": false,
1001
- "isSigner": false
1002
- },
1003
- {
1004
- "name": "perpetuals",
1005
- "isMut": false,
1006
- "isSigner": false
1007
- },
1008
- {
1009
- "name": "pool",
1010
- "isMut": true,
1011
- "isSigner": false
1012
- },
1013
- {
1014
- "name": "position",
1015
- "isMut": true,
1016
- "isSigner": false
1017
- },
1018
- {
1019
- "name": "custody",
1020
- "isMut": true,
1021
- "isSigner": false
1022
- },
1023
- {
1024
- "name": "custodyOracleAccount",
1025
- "isMut": false,
1026
- "isSigner": false
1027
- },
1028
- {
1029
- "name": "custodyTokenAccount",
1030
- "isMut": true,
1031
- "isSigner": false
1032
- },
1033
- {
1034
- "name": "tokenProgram",
1035
- "isMut": false,
1036
- "isSigner": false
1037
- }
1038
- ],
1039
- "args": [
1040
- {
1041
- "name": "params",
1042
- "type": {
1043
- "defined": "AddCollateralParams"
1044
- }
1045
- }
1046
- ]
1047
- },
1048
- {
1049
- "name": "removeCollateral",
1050
- "accounts": [
1051
- {
1052
- "name": "owner",
1053
- "isMut": true,
1054
- "isSigner": true
1055
- },
1056
- {
1057
- "name": "receivingAccount",
1058
- "isMut": true,
1059
- "isSigner": false
1060
- },
1061
- {
1062
- "name": "transferAuthority",
1063
- "isMut": false,
1064
- "isSigner": false
1065
- },
1066
- {
1067
- "name": "perpetuals",
1068
- "isMut": false,
1069
- "isSigner": false
1070
- },
1071
- {
1072
- "name": "pool",
1073
- "isMut": true,
1074
- "isSigner": false
1075
- },
1076
- {
1077
- "name": "position",
1078
- "isMut": true,
1079
- "isSigner": false
1080
- },
1081
- {
1082
- "name": "custody",
1083
- "isMut": true,
1084
- "isSigner": false
1085
- },
1086
- {
1087
- "name": "custodyOracleAccount",
1088
- "isMut": false,
1089
- "isSigner": false
1090
- },
1091
- {
1092
- "name": "custodyTokenAccount",
1093
- "isMut": true,
1094
- "isSigner": false
1095
- },
1096
- {
1097
- "name": "tokenProgram",
1098
- "isMut": false,
1099
- "isSigner": false
1100
- }
1101
- ],
1102
- "args": [
1103
- {
1104
- "name": "params",
1105
- "type": {
1106
- "defined": "RemoveCollateralParams"
1107
- }
1108
- }
1109
- ]
1110
- },
1111
- {
1112
- "name": "closePosition",
1113
- "accounts": [
1114
- {
1115
- "name": "owner",
1116
- "isMut": true,
1117
- "isSigner": true
1118
- },
1119
- {
1120
- "name": "receivingAccount",
1121
- "isMut": true,
1122
- "isSigner": false
1123
- },
1124
- {
1125
- "name": "transferAuthority",
1126
- "isMut": false,
1127
- "isSigner": false
1128
- },
1129
- {
1130
- "name": "perpetuals",
1131
- "isMut": false,
1132
- "isSigner": false
1133
- },
1134
- {
1135
- "name": "pool",
1136
- "isMut": true,
1137
- "isSigner": false
1138
- },
1139
- {
1140
- "name": "position",
1141
- "isMut": true,
1142
- "isSigner": false
1143
- },
1144
- {
1145
- "name": "custody",
1146
- "isMut": true,
1147
- "isSigner": false
1148
- },
1149
- {
1150
- "name": "custodyOracleAccount",
1151
- "isMut": false,
1152
- "isSigner": false
1153
- },
1154
- {
1155
- "name": "custodyTokenAccount",
1156
- "isMut": true,
1157
- "isSigner": false
1158
- },
1159
- {
1160
- "name": "tokenProgram",
1161
- "isMut": false,
1162
- "isSigner": false
1163
- }
1164
- ],
1165
- "args": [
1166
- {
1167
- "name": "params",
1168
- "type": {
1169
- "defined": "ClosePositionParams"
1170
- }
1171
- }
1172
- ]
1173
- },
1174
- {
1175
- "name": "liquidate",
1176
- "accounts": [
1177
- {
1178
- "name": "signer",
1179
- "isMut": true,
1180
- "isSigner": true
1181
- },
1182
- {
1183
- "name": "receivingAccount",
1184
- "isMut": true,
1185
- "isSigner": false
1186
- },
1187
- {
1188
- "name": "rewardsReceivingAccount",
1189
- "isMut": true,
1190
- "isSigner": false
1191
- },
1192
- {
1193
- "name": "transferAuthority",
1194
- "isMut": false,
1195
- "isSigner": false
1196
- },
1197
- {
1198
- "name": "perpetuals",
1199
- "isMut": false,
1200
- "isSigner": false
1201
- },
1202
- {
1203
- "name": "pool",
1204
- "isMut": true,
1205
- "isSigner": false
1206
- },
1207
- {
1208
- "name": "position",
1209
- "isMut": true,
1210
- "isSigner": false
1211
- },
1212
- {
1213
- "name": "custody",
1214
- "isMut": true,
1215
- "isSigner": false
1216
- },
1217
- {
1218
- "name": "custodyOracleAccount",
1219
- "isMut": false,
1220
- "isSigner": false
1221
- },
1222
- {
1223
- "name": "custodyTokenAccount",
1224
- "isMut": true,
1225
- "isSigner": false
1226
- },
1227
- {
1228
- "name": "tokenProgram",
1229
- "isMut": false,
1230
- "isSigner": false
1231
- }
1232
- ],
1233
- "args": [
1234
- {
1235
- "name": "params",
1236
- "type": {
1237
- "defined": "LiquidateParams"
1238
- }
1239
- }
1240
- ]
1241
- },
1242
- {
1243
- "name": "getAddLiquidityAmountAndFee",
1244
- "accounts": [
1245
- {
1246
- "name": "perpetuals",
1247
- "isMut": false,
1248
- "isSigner": false
1249
- },
1250
- {
1251
- "name": "pool",
1252
- "isMut": false,
1253
- "isSigner": false
1254
- },
1255
- {
1256
- "name": "custody",
1257
- "isMut": false,
1258
- "isSigner": false
1259
- },
1260
- {
1261
- "name": "custodyOracleAccount",
1262
- "isMut": false,
1263
- "isSigner": false
1264
- },
1265
- {
1266
- "name": "lpTokenMint",
1267
- "isMut": false,
1268
- "isSigner": false
1269
- }
1270
- ],
1271
- "args": [
1272
- {
1273
- "name": "params",
1274
- "type": {
1275
- "defined": "GetAddLiquidityAmountAndFeeParams"
1276
- }
1277
- }
1278
- ],
1279
- "returns": {
1280
- "defined": "AmountAndFee"
1281
- }
1282
- },
1283
- {
1284
- "name": "getRemoveLiquidityAmountAndFee",
1285
- "accounts": [
1286
- {
1287
- "name": "perpetuals",
1288
- "isMut": false,
1289
- "isSigner": false
1290
- },
1291
- {
1292
- "name": "pool",
1293
- "isMut": false,
1294
- "isSigner": false
1295
- },
1296
- {
1297
- "name": "custody",
1298
- "isMut": false,
1299
- "isSigner": false
1300
- },
1301
- {
1302
- "name": "custodyOracleAccount",
1303
- "isMut": false,
1304
- "isSigner": false
1305
- },
1306
- {
1307
- "name": "lpTokenMint",
1308
- "isMut": false,
1309
- "isSigner": false
1310
- }
1311
- ],
1312
- "args": [
1313
- {
1314
- "name": "params",
1315
- "type": {
1316
- "defined": "GetRemoveLiquidityAmountAndFeeParams"
1317
- }
1318
- }
1319
- ],
1320
- "returns": {
1321
- "defined": "AmountAndFee"
1322
- }
1323
- },
1324
- {
1325
- "name": "getEntryPriceAndFee",
1326
- "accounts": [
1327
- {
1328
- "name": "perpetuals",
1329
- "isMut": false,
1330
- "isSigner": false
1331
- },
1332
- {
1333
- "name": "pool",
1334
- "isMut": false,
1335
- "isSigner": false
1336
- },
1337
- {
1338
- "name": "custody",
1339
- "isMut": false,
1340
- "isSigner": false
1341
- },
1342
- {
1343
- "name": "custodyOracleAccount",
1344
- "isMut": false,
1345
- "isSigner": false
1346
- }
1347
- ],
1348
- "args": [
1349
- {
1350
- "name": "params",
1351
- "type": {
1352
- "defined": "GetEntryPriceAndFeeParams"
1353
- }
1354
- }
1355
- ],
1356
- "returns": {
1357
- "defined": "NewPositionPricesAndFee"
1358
- }
1359
- },
1360
- {
1361
- "name": "getExitPriceAndFee",
1362
- "accounts": [
1363
- {
1364
- "name": "perpetuals",
1365
- "isMut": false,
1366
- "isSigner": false
1367
- },
1368
- {
1369
- "name": "pool",
1370
- "isMut": false,
1371
- "isSigner": false
1372
- },
1373
- {
1374
- "name": "position",
1375
- "isMut": false,
1376
- "isSigner": false
1377
- },
1378
- {
1379
- "name": "custody",
1380
- "isMut": false,
1381
- "isSigner": false
1382
- },
1383
- {
1384
- "name": "custodyOracleAccount",
1385
- "isMut": false,
1386
- "isSigner": false
1387
- }
1388
- ],
1389
- "args": [
1390
- {
1391
- "name": "params",
1392
- "type": {
1393
- "defined": "GetExitPriceAndFeeParams"
1394
- }
1395
- }
1396
- ],
1397
- "returns": {
1398
- "defined": "PriceAndFee"
1399
- }
1400
- },
1401
- {
1402
- "name": "getPnl",
1403
- "accounts": [
1404
- {
1405
- "name": "perpetuals",
1406
- "isMut": false,
1407
- "isSigner": false
1408
- },
1409
- {
1410
- "name": "pool",
1411
- "isMut": false,
1412
- "isSigner": false
1413
- },
1414
- {
1415
- "name": "position",
1416
- "isMut": false,
1417
- "isSigner": false
1418
- },
1419
- {
1420
- "name": "custody",
1421
- "isMut": false,
1422
- "isSigner": false
1423
- },
1424
- {
1425
- "name": "custodyOracleAccount",
1426
- "isMut": false,
1427
- "isSigner": false
1428
- }
1429
- ],
1430
- "args": [
1431
- {
1432
- "name": "params",
1433
- "type": {
1434
- "defined": "GetPnlParams"
1435
- }
1436
- }
1437
- ],
1438
- "returns": {
1439
- "defined": "ProfitAndLoss"
1440
- }
1441
- },
1442
- {
1443
- "name": "getLiquidationPrice",
1444
- "accounts": [
1445
- {
1446
- "name": "perpetuals",
1447
- "isMut": false,
1448
- "isSigner": false
1449
- },
1450
- {
1451
- "name": "pool",
1452
- "isMut": false,
1453
- "isSigner": false
1454
- },
1455
- {
1456
- "name": "position",
1457
- "isMut": false,
1458
- "isSigner": false
1459
- },
1460
- {
1461
- "name": "custody",
1462
- "isMut": false,
1463
- "isSigner": false
1464
- },
1465
- {
1466
- "name": "custodyOracleAccount",
1467
- "isMut": false,
1468
- "isSigner": false
1469
- }
1470
- ],
1471
- "args": [
1472
- {
1473
- "name": "params",
1474
- "type": {
1475
- "defined": "GetLiquidationPriceParams"
1476
- }
1477
- }
1478
- ],
1479
- "returns": "u64"
1480
- },
1481
- {
1482
- "name": "getLiquidationState",
1483
- "accounts": [
1484
- {
1485
- "name": "perpetuals",
1486
- "isMut": false,
1487
- "isSigner": false
1488
- },
1489
- {
1490
- "name": "pool",
1491
- "isMut": false,
1492
- "isSigner": false
1493
- },
1494
- {
1495
- "name": "position",
1496
- "isMut": false,
1497
- "isSigner": false
1498
- },
1499
- {
1500
- "name": "custody",
1501
- "isMut": false,
1502
- "isSigner": false
1503
- },
1504
- {
1505
- "name": "custodyOracleAccount",
1506
- "isMut": false,
1507
- "isSigner": false
1508
- }
1509
- ],
1510
- "args": [
1511
- {
1512
- "name": "params",
1513
- "type": {
1514
- "defined": "GetLiquidationStateParams"
1515
- }
1516
- }
1517
- ],
1518
- "returns": "u8"
1519
- },
1520
- {
1521
- "name": "getOraclePrice",
1522
- "accounts": [
1523
- {
1524
- "name": "perpetuals",
1525
- "isMut": false,
1526
- "isSigner": false
1527
- },
1528
- {
1529
- "name": "pool",
1530
- "isMut": false,
1531
- "isSigner": false
1532
- },
1533
- {
1534
- "name": "custody",
1535
- "isMut": false,
1536
- "isSigner": false
1537
- },
1538
- {
1539
- "name": "custodyOracleAccount",
1540
- "isMut": false,
1541
- "isSigner": false
1542
- }
1543
- ],
1544
- "args": [
1545
- {
1546
- "name": "params",
1547
- "type": {
1548
- "defined": "GetOraclePriceParams"
1549
- }
1550
- }
1551
- ],
1552
- "returns": "u64"
1553
- },
1554
- {
1555
- "name": "getSwapAmountAndFees",
1556
- "accounts": [
1557
- {
1558
- "name": "perpetuals",
1559
- "isMut": false,
1560
- "isSigner": false
1561
- },
1562
- {
1563
- "name": "pool",
1564
- "isMut": false,
1565
- "isSigner": false
1566
- },
1567
- {
1568
- "name": "receivingCustody",
1569
- "isMut": false,
1570
- "isSigner": false
1571
- },
1572
- {
1573
- "name": "receivingCustodyOracleAccount",
1574
- "isMut": false,
1575
- "isSigner": false
1576
- },
1577
- {
1578
- "name": "dispensingCustody",
1579
- "isMut": false,
1580
- "isSigner": false
1581
- },
1582
- {
1583
- "name": "dispensingCustodyOracleAccount",
1584
- "isMut": false,
1585
- "isSigner": false
1586
- }
1587
- ],
1588
- "args": [
1589
- {
1590
- "name": "params",
1591
- "type": {
1592
- "defined": "GetSwapAmountAndFeesParams"
1593
- }
1594
- }
1595
- ],
1596
- "returns": {
1597
- "defined": "SwapAmountAndFees"
1598
- }
1599
- },
1600
- {
1601
- "name": "getAssetsUnderManagement",
1602
- "accounts": [
1603
- {
1604
- "name": "perpetuals",
1605
- "isMut": false,
1606
- "isSigner": false
1607
- },
1608
- {
1609
- "name": "pool",
1610
- "isMut": false,
1611
- "isSigner": false
1612
- }
1613
- ],
1614
- "args": [
1615
- {
1616
- "name": "params",
1617
- "type": {
1618
- "defined": "GetAssetsUnderManagementParams"
1619
- }
1620
- }
1621
- ],
1622
- "returns": "u128"
1623
- }
1624
- ],
1625
- "accounts": [
1626
- {
1627
- "name": "Custody",
1628
- "type": {
1629
- "kind": "struct",
1630
- "fields": [
1631
- {
1632
- "name": "pool",
1633
- "type": "publicKey"
1634
- },
1635
- {
1636
- "name": "mint",
1637
- "type": "publicKey"
1638
- },
1639
- {
1640
- "name": "tokenAccount",
1641
- "type": "publicKey"
1642
- },
1643
- {
1644
- "name": "decimals",
1645
- "type": "u8"
1646
- },
1647
- {
1648
- "name": "isStable",
1649
- "type": "bool"
1650
- },
1651
- {
1652
- "name": "oracle",
1653
- "type": {
1654
- "defined": "OracleParams"
1655
- }
1656
- },
1657
- {
1658
- "name": "pricing",
1659
- "type": {
1660
- "defined": "PricingParams"
1661
- }
1662
- },
1663
- {
1664
- "name": "permissions",
1665
- "type": {
1666
- "defined": "Permissions"
1667
- }
1668
- },
1669
- {
1670
- "name": "fees",
1671
- "type": {
1672
- "defined": "Fees"
1673
- }
1674
- },
1675
- {
1676
- "name": "borrowRate",
1677
- "type": {
1678
- "defined": "BorrowRateParams"
1679
- }
1680
- },
1681
- {
1682
- "name": "assets",
1683
- "type": {
1684
- "defined": "Assets"
1685
- }
1686
- },
1687
- {
1688
- "name": "collectedFees",
1689
- "type": {
1690
- "defined": "FeesStats"
1691
- }
1692
- },
1693
- {
1694
- "name": "volumeStats",
1695
- "type": {
1696
- "defined": "VolumeStats"
1697
- }
1698
- },
1699
- {
1700
- "name": "tradeStats",
1701
- "type": {
1702
- "defined": "TradeStats"
1703
- }
1704
- },
1705
- {
1706
- "name": "longPositions",
1707
- "type": {
1708
- "defined": "PositionStats"
1709
- }
1710
- },
1711
- {
1712
- "name": "shortPositions",
1713
- "type": {
1714
- "defined": "PositionStats"
1715
- }
1716
- },
1717
- {
1718
- "name": "borrowRateState",
1719
- "type": {
1720
- "defined": "BorrowRateState"
1721
- }
1722
- },
1723
- {
1724
- "name": "bump",
1725
- "type": "u8"
1726
- },
1727
- {
1728
- "name": "tokenAccountBump",
1729
- "type": "u8"
1730
- }
1731
- ]
1732
- }
1733
- },
1734
- {
1735
- "name": "DeprecatedCustody",
1736
- "type": {
1737
- "kind": "struct",
1738
- "fields": [
1739
- {
1740
- "name": "pool",
1741
- "type": "publicKey"
1742
- },
1743
- {
1744
- "name": "mint",
1745
- "type": "publicKey"
1746
- },
1747
- {
1748
- "name": "tokenAccount",
1749
- "type": "publicKey"
1750
- },
1751
- {
1752
- "name": "decimals",
1753
- "type": "u8"
1754
- },
1755
- {
1756
- "name": "isStable",
1757
- "type": "bool"
1758
- },
1759
- {
1760
- "name": "oracle",
1761
- "type": {
1762
- "defined": "OracleParams"
1763
- }
1764
- },
1765
- {
1766
- "name": "pricing",
1767
- "type": {
1768
- "defined": "DeprecatedPricingParams"
1769
- }
1770
- },
1771
- {
1772
- "name": "permissions",
1773
- "type": {
1774
- "defined": "Permissions"
1775
- }
1776
- },
1777
- {
1778
- "name": "fees",
1779
- "type": {
1780
- "defined": "Fees"
1781
- }
1782
- },
1783
- {
1784
- "name": "borrowRate",
1785
- "type": {
1786
- "defined": "BorrowRateParams"
1787
- }
1788
- },
1789
- {
1790
- "name": "assets",
1791
- "type": {
1792
- "defined": "Assets"
1793
- }
1794
- },
1795
- {
1796
- "name": "collectedFees",
1797
- "type": {
1798
- "defined": "FeesStats"
1799
- }
1800
- },
1801
- {
1802
- "name": "volumeStats",
1803
- "type": {
1804
- "defined": "VolumeStats"
1805
- }
1806
- },
1807
- {
1808
- "name": "tradeStats",
1809
- "type": {
1810
- "defined": "TradeStats"
1811
- }
1812
- },
1813
- {
1814
- "name": "longPositions",
1815
- "type": {
1816
- "defined": "PositionStats"
1817
- }
1818
- },
1819
- {
1820
- "name": "shortPositions",
1821
- "type": {
1822
- "defined": "PositionStats"
1823
- }
1824
- },
1825
- {
1826
- "name": "borrowRateState",
1827
- "type": {
1828
- "defined": "BorrowRateState"
1829
- }
1830
- },
1831
- {
1832
- "name": "bump",
1833
- "type": "u8"
1834
- },
1835
- {
1836
- "name": "tokenAccountBump",
1837
- "type": "u8"
1838
- }
1839
- ]
1840
- }
1841
- },
1842
- {
1843
- "name": "Multisig",
1844
- "type": {
1845
- "kind": "struct",
1846
- "fields": [
1847
- {
1848
- "name": "numSigners",
1849
- "type": "u8"
1850
- },
1851
- {
1852
- "name": "numSigned",
1853
- "type": "u8"
1854
- },
1855
- {
1856
- "name": "minSignatures",
1857
- "type": "u8"
1858
- },
1859
- {
1860
- "name": "instructionAccountsLen",
1861
- "type": "u8"
1862
- },
1863
- {
1864
- "name": "instructionDataLen",
1865
- "type": "u16"
1866
- },
1867
- {
1868
- "name": "instructionHash",
1869
- "type": "u64"
1870
- },
1871
- {
1872
- "name": "signers",
1873
- "type": {
1874
- "array": [
1875
- "publicKey",
1876
- 6
1877
- ]
1878
- }
1879
- },
1880
- {
1881
- "name": "signed",
1882
- "type": {
1883
- "array": [
1884
- "bool",
1885
- 6
1886
- ]
1887
- }
1888
- },
1889
- {
1890
- "name": "bump",
1891
- "type": "u8"
1892
- }
1893
- ]
1894
- }
1895
- },
1896
- {
1897
- "name": "TestOracle",
1898
- "type": {
1899
- "kind": "struct",
1900
- "fields": [
1901
- {
1902
- "name": "price",
1903
- "type": "u64"
1904
- },
1905
- {
1906
- "name": "expo",
1907
- "type": "i32"
1908
- },
1909
- {
1910
- "name": "conf",
1911
- "type": "u64"
1912
- },
1913
- {
1914
- "name": "publishTime",
1915
- "type": "i64"
1916
- }
1917
- ]
1918
- }
1919
- },
1920
- {
1921
- "name": "Perpetuals",
1922
- "type": {
1923
- "kind": "struct",
1924
- "fields": [
1925
- {
1926
- "name": "permissions",
1927
- "type": {
1928
- "defined": "Permissions"
1929
- }
1930
- },
1931
- {
1932
- "name": "pools",
1933
- "type": {
1934
- "vec": "publicKey"
1935
- }
1936
- },
1937
- {
1938
- "name": "transferAuthorityBump",
1939
- "type": "u8"
1940
- },
1941
- {
1942
- "name": "perpetualsBump",
1943
- "type": "u8"
1944
- },
1945
- {
1946
- "name": "inceptionTime",
1947
- "type": "i64"
1948
- }
1949
- ]
1950
- }
1951
- },
1952
- {
1953
- "name": "Pool",
1954
- "type": {
1955
- "kind": "struct",
1956
- "fields": [
1957
- {
1958
- "name": "name",
1959
- "type": "string"
1960
- },
1961
- {
1962
- "name": "custodies",
1963
- "type": {
1964
- "vec": "publicKey"
1965
- }
1966
- },
1967
- {
1968
- "name": "ratios",
1969
- "type": {
1970
- "vec": {
1971
- "defined": "TokenRatios"
1972
- }
1973
- }
1974
- },
1975
- {
1976
- "name": "aumUsd",
1977
- "type": "u128"
1978
- },
1979
- {
1980
- "name": "bump",
1981
- "type": "u8"
1982
- },
1983
- {
1984
- "name": "lpTokenBump",
1985
- "type": "u8"
1986
- },
1987
- {
1988
- "name": "inceptionTime",
1989
- "type": "i64"
1990
- }
1991
- ]
1992
- }
1993
- },
1994
- {
1995
- "name": "Position",
1996
- "type": {
1997
- "kind": "struct",
1998
- "fields": [
1999
- {
2000
- "name": "owner",
2001
- "type": "publicKey"
2002
- },
2003
- {
2004
- "name": "pool",
2005
- "type": "publicKey"
2006
- },
2007
- {
2008
- "name": "custody",
2009
- "type": "publicKey"
2010
- },
2011
- {
2012
- "name": "openTime",
2013
- "type": "i64"
2014
- },
2015
- {
2016
- "name": "updateTime",
2017
- "type": "i64"
2018
- },
2019
- {
2020
- "name": "side",
2021
- "type": {
2022
- "defined": "Side"
2023
- }
2024
- },
2025
- {
2026
- "name": "price",
2027
- "type": "u64"
2028
- },
2029
- {
2030
- "name": "sizeUsd",
2031
- "type": "u64"
2032
- },
2033
- {
2034
- "name": "collateralUsd",
2035
- "type": "u64"
2036
- },
2037
- {
2038
- "name": "unrealizedProfitUsd",
2039
- "type": "u64"
2040
- },
2041
- {
2042
- "name": "unrealizedLossUsd",
2043
- "type": "u64"
2044
- },
2045
- {
2046
- "name": "cumulativeInterestSnapshot",
2047
- "type": "u128"
2048
- },
2049
- {
2050
- "name": "lockedAmount",
2051
- "type": "u64"
2052
- },
2053
- {
2054
- "name": "collateralAmount",
2055
- "type": "u64"
2056
- },
2057
- {
2058
- "name": "bump",
2059
- "type": "u8"
2060
- }
2061
- ]
2062
- }
2063
- }
2064
- ],
2065
- "types": [
2066
- {
2067
- "name": "AddCollateralParams",
2068
- "type": {
2069
- "kind": "struct",
2070
- "fields": [
2071
- {
2072
- "name": "collateral",
2073
- "type": "u64"
2074
- }
2075
- ]
2076
- }
2077
- },
2078
- {
2079
- "name": "AddCustodyParams",
2080
- "type": {
2081
- "kind": "struct",
2082
- "fields": [
2083
- {
2084
- "name": "isStable",
2085
- "type": "bool"
2086
- },
2087
- {
2088
- "name": "oracle",
2089
- "type": {
2090
- "defined": "OracleParams"
2091
- }
2092
- },
2093
- {
2094
- "name": "pricing",
2095
- "type": {
2096
- "defined": "PricingParams"
2097
- }
2098
- },
2099
- {
2100
- "name": "permissions",
2101
- "type": {
2102
- "defined": "Permissions"
2103
- }
2104
- },
2105
- {
2106
- "name": "fees",
2107
- "type": {
2108
- "defined": "Fees"
2109
- }
2110
- },
2111
- {
2112
- "name": "borrowRate",
2113
- "type": {
2114
- "defined": "BorrowRateParams"
2115
- }
2116
- },
2117
- {
2118
- "name": "ratios",
2119
- "type": {
2120
- "vec": {
2121
- "defined": "TokenRatios"
2122
- }
2123
- }
2124
- }
2125
- ]
2126
- }
2127
- },
2128
- {
2129
- "name": "AddLiquidityParams",
2130
- "type": {
2131
- "kind": "struct",
2132
- "fields": [
2133
- {
2134
- "name": "amountIn",
2135
- "type": "u64"
2136
- },
2137
- {
2138
- "name": "minLpAmountOut",
2139
- "type": "u64"
2140
- }
2141
- ]
2142
- }
2143
- },
2144
- {
2145
- "name": "AddPoolParams",
2146
- "type": {
2147
- "kind": "struct",
2148
- "fields": [
2149
- {
2150
- "name": "name",
2151
- "type": "string"
2152
- }
2153
- ]
2154
- }
2155
- },
2156
- {
2157
- "name": "ClosePositionParams",
2158
- "type": {
2159
- "kind": "struct",
2160
- "fields": [
2161
- {
2162
- "name": "price",
2163
- "type": "u64"
2164
- }
2165
- ]
2166
- }
2167
- },
2168
- {
2169
- "name": "GetAddLiquidityAmountAndFeeParams",
2170
- "type": {
2171
- "kind": "struct",
2172
- "fields": [
2173
- {
2174
- "name": "amountIn",
2175
- "type": "u64"
2176
- }
2177
- ]
2178
- }
2179
- },
2180
- {
2181
- "name": "GetAssetsUnderManagementParams",
2182
- "type": {
2183
- "kind": "struct",
2184
- "fields": []
2185
- }
2186
- },
2187
- {
2188
- "name": "GetEntryPriceAndFeeParams",
2189
- "type": {
2190
- "kind": "struct",
2191
- "fields": [
2192
- {
2193
- "name": "collateral",
2194
- "type": "u64"
2195
- },
2196
- {
2197
- "name": "size",
2198
- "type": "u64"
2199
- },
2200
- {
2201
- "name": "side",
2202
- "type": {
2203
- "defined": "Side"
2204
- }
2205
- }
2206
- ]
2207
- }
2208
- },
2209
- {
2210
- "name": "GetExitPriceAndFeeParams",
2211
- "type": {
2212
- "kind": "struct",
2213
- "fields": []
2214
- }
2215
- },
2216
- {
2217
- "name": "GetLiquidationPriceParams",
2218
- "type": {
2219
- "kind": "struct",
2220
- "fields": [
2221
- {
2222
- "name": "addCollateral",
2223
- "type": "u64"
2224
- },
2225
- {
2226
- "name": "removeCollateral",
2227
- "type": "u64"
2228
- }
2229
- ]
2230
- }
2231
- },
2232
- {
2233
- "name": "GetLiquidationStateParams",
2234
- "type": {
2235
- "kind": "struct",
2236
- "fields": []
2237
- }
2238
- },
2239
- {
2240
- "name": "GetOraclePriceParams",
2241
- "type": {
2242
- "kind": "struct",
2243
- "fields": [
2244
- {
2245
- "name": "ema",
2246
- "type": "bool"
2247
- }
2248
- ]
2249
- }
2250
- },
2251
- {
2252
- "name": "GetPnlParams",
2253
- "type": {
2254
- "kind": "struct",
2255
- "fields": []
2256
- }
2257
- },
2258
- {
2259
- "name": "GetRemoveLiquidityAmountAndFeeParams",
2260
- "type": {
2261
- "kind": "struct",
2262
- "fields": [
2263
- {
2264
- "name": "lpAmountIn",
2265
- "type": "u64"
2266
- }
2267
- ]
2268
- }
2269
- },
2270
- {
2271
- "name": "GetSwapAmountAndFeesParams",
2272
- "type": {
2273
- "kind": "struct",
2274
- "fields": [
2275
- {
2276
- "name": "amountIn",
2277
- "type": "u64"
2278
- }
2279
- ]
2280
- }
2281
- },
2282
- {
2283
- "name": "InitParams",
2284
- "type": {
2285
- "kind": "struct",
2286
- "fields": [
2287
- {
2288
- "name": "minSignatures",
2289
- "type": "u8"
2290
- },
2291
- {
2292
- "name": "allowSwap",
2293
- "type": "bool"
2294
- },
2295
- {
2296
- "name": "allowAddLiquidity",
2297
- "type": "bool"
2298
- },
2299
- {
2300
- "name": "allowRemoveLiquidity",
2301
- "type": "bool"
2302
- },
2303
- {
2304
- "name": "allowOpenPosition",
2305
- "type": "bool"
2306
- },
2307
- {
2308
- "name": "allowClosePosition",
2309
- "type": "bool"
2310
- },
2311
- {
2312
- "name": "allowPnlWithdrawal",
2313
- "type": "bool"
2314
- },
2315
- {
2316
- "name": "allowCollateralWithdrawal",
2317
- "type": "bool"
2318
- },
2319
- {
2320
- "name": "allowSizeChange",
2321
- "type": "bool"
2322
- }
2323
- ]
2324
- }
2325
- },
2326
- {
2327
- "name": "LiquidateParams",
2328
- "type": {
2329
- "kind": "struct",
2330
- "fields": []
2331
- }
2332
- },
2333
- {
2334
- "name": "OpenPositionParams",
2335
- "type": {
2336
- "kind": "struct",
2337
- "fields": [
2338
- {
2339
- "name": "price",
2340
- "type": "u64"
2341
- },
2342
- {
2343
- "name": "collateral",
2344
- "type": "u64"
2345
- },
2346
- {
2347
- "name": "size",
2348
- "type": "u64"
2349
- },
2350
- {
2351
- "name": "side",
2352
- "type": {
2353
- "defined": "Side"
2354
- }
2355
- }
2356
- ]
2357
- }
2358
- },
2359
- {
2360
- "name": "RemoveCollateralParams",
2361
- "type": {
2362
- "kind": "struct",
2363
- "fields": [
2364
- {
2365
- "name": "collateralUsd",
2366
- "type": "u64"
2367
- }
2368
- ]
2369
- }
2370
- },
2371
- {
2372
- "name": "RemoveCustodyParams",
2373
- "type": {
2374
- "kind": "struct",
2375
- "fields": [
2376
- {
2377
- "name": "ratios",
2378
- "type": {
2379
- "vec": {
2380
- "defined": "TokenRatios"
2381
- }
2382
- }
2383
- }
2384
- ]
2385
- }
2386
- },
2387
- {
2388
- "name": "RemoveLiquidityParams",
2389
- "type": {
2390
- "kind": "struct",
2391
- "fields": [
2392
- {
2393
- "name": "lpAmountIn",
2394
- "type": "u64"
2395
- },
2396
- {
2397
- "name": "minAmountOut",
2398
- "type": "u64"
2399
- }
2400
- ]
2401
- }
2402
- },
2403
- {
2404
- "name": "RemovePoolParams",
2405
- "type": {
2406
- "kind": "struct",
2407
- "fields": []
2408
- }
2409
- },
2410
- {
2411
- "name": "SetAdminSignersParams",
2412
- "type": {
2413
- "kind": "struct",
2414
- "fields": [
2415
- {
2416
- "name": "minSignatures",
2417
- "type": "u8"
2418
- }
2419
- ]
2420
- }
2421
- },
2422
- {
2423
- "name": "SetCustodyConfigParams",
2424
- "type": {
2425
- "kind": "struct",
2426
- "fields": [
2427
- {
2428
- "name": "isStable",
2429
- "type": "bool"
2430
- },
2431
- {
2432
- "name": "oracle",
2433
- "type": {
2434
- "defined": "OracleParams"
2435
- }
2436
- },
2437
- {
2438
- "name": "pricing",
2439
- "type": {
2440
- "defined": "PricingParams"
2441
- }
2442
- },
2443
- {
2444
- "name": "permissions",
2445
- "type": {
2446
- "defined": "Permissions"
2447
- }
2448
- },
2449
- {
2450
- "name": "fees",
2451
- "type": {
2452
- "defined": "Fees"
2453
- }
2454
- },
2455
- {
2456
- "name": "borrowRate",
2457
- "type": {
2458
- "defined": "BorrowRateParams"
2459
- }
2460
- },
2461
- {
2462
- "name": "ratios",
2463
- "type": {
2464
- "vec": {
2465
- "defined": "TokenRatios"
2466
- }
2467
- }
2468
- }
2469
- ]
2470
- }
2471
- },
2472
- {
2473
- "name": "SetPermissionsParams",
2474
- "type": {
2475
- "kind": "struct",
2476
- "fields": [
2477
- {
2478
- "name": "allowSwap",
2479
- "type": "bool"
2480
- },
2481
- {
2482
- "name": "allowAddLiquidity",
2483
- "type": "bool"
2484
- },
2485
- {
2486
- "name": "allowRemoveLiquidity",
2487
- "type": "bool"
2488
- },
2489
- {
2490
- "name": "allowOpenPosition",
2491
- "type": "bool"
2492
- },
2493
- {
2494
- "name": "allowClosePosition",
2495
- "type": "bool"
2496
- },
2497
- {
2498
- "name": "allowPnlWithdrawal",
2499
- "type": "bool"
2500
- },
2501
- {
2502
- "name": "allowCollateralWithdrawal",
2503
- "type": "bool"
2504
- },
2505
- {
2506
- "name": "allowSizeChange",
2507
- "type": "bool"
2508
- }
2509
- ]
2510
- }
2511
- },
2512
- {
2513
- "name": "SetTestOraclePriceParams",
2514
- "type": {
2515
- "kind": "struct",
2516
- "fields": [
2517
- {
2518
- "name": "price",
2519
- "type": "u64"
2520
- },
2521
- {
2522
- "name": "expo",
2523
- "type": "i32"
2524
- },
2525
- {
2526
- "name": "conf",
2527
- "type": "u64"
2528
- },
2529
- {
2530
- "name": "publishTime",
2531
- "type": "i64"
2532
- }
2533
- ]
2534
- }
2535
- },
2536
- {
2537
- "name": "SetTestTimeParams",
2538
- "type": {
2539
- "kind": "struct",
2540
- "fields": [
2541
- {
2542
- "name": "time",
2543
- "type": "i64"
2544
- }
2545
- ]
2546
- }
2547
- },
2548
- {
2549
- "name": "SwapParams",
2550
- "type": {
2551
- "kind": "struct",
2552
- "fields": [
2553
- {
2554
- "name": "amountIn",
2555
- "type": "u64"
2556
- },
2557
- {
2558
- "name": "minAmountOut",
2559
- "type": "u64"
2560
- }
2561
- ]
2562
- }
2563
- },
2564
- {
2565
- "name": "TestInitParams",
2566
- "type": {
2567
- "kind": "struct",
2568
- "fields": [
2569
- {
2570
- "name": "minSignatures",
2571
- "type": "u8"
2572
- },
2573
- {
2574
- "name": "allowSwap",
2575
- "type": "bool"
2576
- },
2577
- {
2578
- "name": "allowAddLiquidity",
2579
- "type": "bool"
2580
- },
2581
- {
2582
- "name": "allowRemoveLiquidity",
2583
- "type": "bool"
2584
- },
2585
- {
2586
- "name": "allowOpenPosition",
2587
- "type": "bool"
2588
- },
2589
- {
2590
- "name": "allowClosePosition",
2591
- "type": "bool"
2592
- },
2593
- {
2594
- "name": "allowPnlWithdrawal",
2595
- "type": "bool"
2596
- },
2597
- {
2598
- "name": "allowCollateralWithdrawal",
2599
- "type": "bool"
2600
- },
2601
- {
2602
- "name": "allowSizeChange",
2603
- "type": "bool"
2604
- }
2605
- ]
2606
- }
2607
- },
2608
- {
2609
- "name": "EditCustodyParams",
2610
- "type": {
2611
- "kind": "struct",
2612
- "fields": [
2613
- {
2614
- "name": "isStable",
2615
- "type": "bool"
2616
- },
2617
- {
2618
- "name": "oracle",
2619
- "type": {
2620
- "defined": "OracleParams"
2621
- }
2622
- },
2623
- {
2624
- "name": "pricing",
2625
- "type": {
2626
- "defined": "PricingParams"
2627
- }
2628
- },
2629
- {
2630
- "name": "permissions",
2631
- "type": {
2632
- "defined": "Permissions"
2633
- }
2634
- },
2635
- {
2636
- "name": "fees",
2637
- "type": {
2638
- "defined": "Fees"
2639
- }
2640
- },
2641
- {
2642
- "name": "borrowRate",
2643
- "type": {
2644
- "defined": "BorrowRateParams"
2645
- }
2646
- },
2647
- {
2648
- "name": "ratios",
2649
- "type": {
2650
- "vec": {
2651
- "defined": "TokenRatios"
2652
- }
2653
- }
2654
- }
2655
- ]
2656
- }
2657
- },
2658
- {
2659
- "name": "UpgradeCustodyParams",
2660
- "type": {
2661
- "kind": "struct",
2662
- "fields": []
2663
- }
2664
- },
2665
- {
2666
- "name": "WithdrawFeesParams",
2667
- "type": {
2668
- "kind": "struct",
2669
- "fields": [
2670
- {
2671
- "name": "amount",
2672
- "type": "u64"
2673
- }
2674
- ]
2675
- }
2676
- },
2677
- {
2678
- "name": "WithdrawSolFeesParams",
2679
- "type": {
2680
- "kind": "struct",
2681
- "fields": [
2682
- {
2683
- "name": "amount",
2684
- "type": "u64"
2685
- }
2686
- ]
2687
- }
2688
- },
2689
- {
2690
- "name": "Fees",
2691
- "type": {
2692
- "kind": "struct",
2693
- "fields": [
2694
- {
2695
- "name": "mode",
2696
- "type": {
2697
- "defined": "FeesMode"
2698
- }
2699
- },
2700
- {
2701
- "name": "ratioMult",
2702
- "type": "u64"
2703
- },
2704
- {
2705
- "name": "utilizationMult",
2706
- "type": "u64"
2707
- },
2708
- {
2709
- "name": "swapIn",
2710
- "type": "u64"
2711
- },
2712
- {
2713
- "name": "swapOut",
2714
- "type": "u64"
2715
- },
2716
- {
2717
- "name": "stableSwapIn",
2718
- "type": "u64"
2719
- },
2720
- {
2721
- "name": "stableSwapOut",
2722
- "type": "u64"
2723
- },
2724
- {
2725
- "name": "addLiquidity",
2726
- "type": "u64"
2727
- },
2728
- {
2729
- "name": "removeLiquidity",
2730
- "type": "u64"
2731
- },
2732
- {
2733
- "name": "openPosition",
2734
- "type": "u64"
2735
- },
2736
- {
2737
- "name": "closePosition",
2738
- "type": "u64"
2739
- },
2740
- {
2741
- "name": "liquidation",
2742
- "type": "u64"
2743
- },
2744
- {
2745
- "name": "protocolShare",
2746
- "type": "u64"
2747
- }
2748
- ]
2749
- }
2750
- },
2751
- {
2752
- "name": "FeesStats",
2753
- "type": {
2754
- "kind": "struct",
2755
- "fields": [
2756
- {
2757
- "name": "swapUsd",
2758
- "type": "u64"
2759
- },
2760
- {
2761
- "name": "addLiquidityUsd",
2762
- "type": "u64"
2763
- },
2764
- {
2765
- "name": "removeLiquidityUsd",
2766
- "type": "u64"
2767
- },
2768
- {
2769
- "name": "openPositionUsd",
2770
- "type": "u64"
2771
- },
2772
- {
2773
- "name": "closePositionUsd",
2774
- "type": "u64"
2775
- },
2776
- {
2777
- "name": "liquidationUsd",
2778
- "type": "u64"
2779
- }
2780
- ]
2781
- }
2782
- },
2783
- {
2784
- "name": "VolumeStats",
2785
- "type": {
2786
- "kind": "struct",
2787
- "fields": [
2788
- {
2789
- "name": "swapUsd",
2790
- "type": "u64"
2791
- },
2792
- {
2793
- "name": "addLiquidityUsd",
2794
- "type": "u64"
2795
- },
2796
- {
2797
- "name": "removeLiquidityUsd",
2798
- "type": "u64"
2799
- },
2800
- {
2801
- "name": "openPositionUsd",
2802
- "type": "u64"
2803
- },
2804
- {
2805
- "name": "closePositionUsd",
2806
- "type": "u64"
2807
- },
2808
- {
2809
- "name": "liquidationUsd",
2810
- "type": "u64"
2811
- }
2812
- ]
2813
- }
2814
- },
2815
- {
2816
- "name": "TradeStats",
2817
- "type": {
2818
- "kind": "struct",
2819
- "fields": [
2820
- {
2821
- "name": "profitUsd",
2822
- "type": "u64"
2823
- },
2824
- {
2825
- "name": "lossUsd",
2826
- "type": "u64"
2827
- },
2828
- {
2829
- "name": "oiLongUsd",
2830
- "type": "u64"
2831
- },
2832
- {
2833
- "name": "oiShortUsd",
2834
- "type": "u64"
2835
- }
2836
- ]
2837
- }
2838
- },
2839
- {
2840
- "name": "Assets",
2841
- "type": {
2842
- "kind": "struct",
2843
- "fields": [
2844
- {
2845
- "name": "collateral",
2846
- "type": "u64"
2847
- },
2848
- {
2849
- "name": "protocolFees",
2850
- "type": "u64"
2851
- },
2852
- {
2853
- "name": "owned",
2854
- "type": "u64"
2855
- },
2856
- {
2857
- "name": "locked",
2858
- "type": "u64"
2859
- }
2860
- ]
2861
- }
2862
- },
2863
- {
2864
- "name": "OracleParams",
2865
- "type": {
2866
- "kind": "struct",
2867
- "fields": [
2868
- {
2869
- "name": "oracleAccount",
2870
- "type": "publicKey"
2871
- },
2872
- {
2873
- "name": "oracleType",
2874
- "type": {
2875
- "defined": "OracleType"
2876
- }
2877
- },
2878
- {
2879
- "name": "maxPriceError",
2880
- "type": "u64"
2881
- },
2882
- {
2883
- "name": "maxPriceAgeSec",
2884
- "type": "u32"
2885
- }
2886
- ]
2887
- }
2888
- },
2889
- {
2890
- "name": "PricingParams",
2891
- "type": {
2892
- "kind": "struct",
2893
- "fields": [
2894
- {
2895
- "name": "useEma",
2896
- "type": "bool"
2897
- },
2898
- {
2899
- "name": "useUnrealizedPnlInAum",
2900
- "type": "bool"
2901
- },
2902
- {
2903
- "name": "tradeSpreadLong",
2904
- "type": "u64"
2905
- },
2906
- {
2907
- "name": "tradeSpreadShort",
2908
- "type": "u64"
2909
- },
2910
- {
2911
- "name": "swapSpread",
2912
- "type": "u64"
2913
- },
2914
- {
2915
- "name": "minInitialLeverage",
2916
- "type": "u64"
2917
- },
2918
- {
2919
- "name": "maxInitialLeverage",
2920
- "type": "u64"
2921
- },
2922
- {
2923
- "name": "maxLeverage",
2924
- "type": "u64"
2925
- },
2926
- {
2927
- "name": "maxPayoffMult",
2928
- "type": "u64"
2929
- },
2930
- {
2931
- "name": "maxUtilization",
2932
- "type": "u64"
2933
- },
2934
- {
2935
- "name": "maxPositionLockedUsd",
2936
- "type": "u64"
2937
- },
2938
- {
2939
- "name": "maxTotalLockedUsd",
2940
- "type": "u64"
2941
- }
2942
- ]
2943
- }
2944
- },
2945
- {
2946
- "name": "BorrowRateParams",
2947
- "type": {
2948
- "kind": "struct",
2949
- "fields": [
2950
- {
2951
- "name": "baseRate",
2952
- "type": "u64"
2953
- },
2954
- {
2955
- "name": "slope1",
2956
- "type": "u64"
2957
- },
2958
- {
2959
- "name": "slope2",
2960
- "type": "u64"
2961
- },
2962
- {
2963
- "name": "optimalUtilization",
2964
- "type": "u64"
2965
- }
2966
- ]
2967
- }
2968
- },
2969
- {
2970
- "name": "BorrowRateState",
2971
- "type": {
2972
- "kind": "struct",
2973
- "fields": [
2974
- {
2975
- "name": "currentRate",
2976
- "type": "u64"
2977
- },
2978
- {
2979
- "name": "cumulativeInterest",
2980
- "type": "u128"
2981
- },
2982
- {
2983
- "name": "lastUpdate",
2984
- "type": "i64"
2985
- }
2986
- ]
2987
- }
2988
- },
2989
- {
2990
- "name": "PositionStats",
2991
- "type": {
2992
- "kind": "struct",
2993
- "fields": [
2994
- {
2995
- "name": "openPositions",
2996
- "type": "u64"
2997
- },
2998
- {
2999
- "name": "collateralUsd",
3000
- "type": "u64"
3001
- },
3002
- {
3003
- "name": "sizeUsd",
3004
- "type": "u64"
3005
- },
3006
- {
3007
- "name": "lockedAmount",
3008
- "type": "u64"
3009
- },
3010
- {
3011
- "name": "weightedPrice",
3012
- "type": "u128"
3013
- },
3014
- {
3015
- "name": "totalQuantity",
3016
- "type": "u128"
3017
- },
3018
- {
3019
- "name": "cumulativeInterestUsd",
3020
- "type": "u64"
3021
- },
3022
- {
3023
- "name": "cumulativeInterestSnapshot",
3024
- "type": "u128"
3025
- }
3026
- ]
3027
- }
3028
- },
3029
- {
3030
- "name": "DeprecatedPricingParams",
3031
- "type": {
3032
- "kind": "struct",
3033
- "fields": [
3034
- {
3035
- "name": "useEma",
3036
- "type": "bool"
3037
- },
3038
- {
3039
- "name": "useUnrealizedPnlInAum",
3040
- "type": "bool"
3041
- },
3042
- {
3043
- "name": "tradeSpreadLong",
3044
- "type": "u64"
3045
- },
3046
- {
3047
- "name": "tradeSpreadShort",
3048
- "type": "u64"
3049
- },
3050
- {
3051
- "name": "swapSpread",
3052
- "type": "u64"
3053
- },
3054
- {
3055
- "name": "minInitialLeverage",
3056
- "type": "u64"
3057
- },
3058
- {
3059
- "name": "maxLeverage",
3060
- "type": "u64"
3061
- },
3062
- {
3063
- "name": "maxPayoffMult",
3064
- "type": "u64"
3065
- }
3066
- ]
3067
- }
3068
- },
3069
- {
3070
- "name": "OraclePrice",
3071
- "type": {
3072
- "kind": "struct",
3073
- "fields": [
3074
- {
3075
- "name": "price",
3076
- "type": "u64"
3077
- },
3078
- {
3079
- "name": "exponent",
3080
- "type": "i32"
3081
- }
3082
- ]
3083
- }
3084
- },
3085
- {
3086
- "name": "PriceAndFee",
3087
- "type": {
3088
- "kind": "struct",
3089
- "fields": [
3090
- {
3091
- "name": "price",
3092
- "type": "u64"
3093
- },
3094
- {
3095
- "name": "fee",
3096
- "type": "u64"
3097
- }
3098
- ]
3099
- }
3100
- },
3101
- {
3102
- "name": "AmountAndFee",
3103
- "type": {
3104
- "kind": "struct",
3105
- "fields": [
3106
- {
3107
- "name": "amount",
3108
- "type": "u64"
3109
- },
3110
- {
3111
- "name": "fee",
3112
- "type": "u64"
3113
- }
3114
- ]
3115
- }
3116
- },
3117
- {
3118
- "name": "NewPositionPricesAndFee",
3119
- "type": {
3120
- "kind": "struct",
3121
- "fields": [
3122
- {
3123
- "name": "entryPrice",
3124
- "type": "u64"
3125
- },
3126
- {
3127
- "name": "liquidationPrice",
3128
- "type": "u64"
3129
- },
3130
- {
3131
- "name": "fee",
3132
- "type": "u64"
3133
- }
3134
- ]
3135
- }
3136
- },
3137
- {
3138
- "name": "SwapAmountAndFees",
3139
- "type": {
3140
- "kind": "struct",
3141
- "fields": [
3142
- {
3143
- "name": "amountOut",
3144
- "type": "u64"
3145
- },
3146
- {
3147
- "name": "feeIn",
3148
- "type": "u64"
3149
- },
3150
- {
3151
- "name": "feeOut",
3152
- "type": "u64"
3153
- }
3154
- ]
3155
- }
3156
- },
3157
- {
3158
- "name": "ProfitAndLoss",
3159
- "type": {
3160
- "kind": "struct",
3161
- "fields": [
3162
- {
3163
- "name": "profit",
3164
- "type": "u64"
3165
- },
3166
- {
3167
- "name": "loss",
3168
- "type": "u64"
3169
- }
3170
- ]
3171
- }
3172
- },
3173
- {
3174
- "name": "Permissions",
3175
- "type": {
3176
- "kind": "struct",
3177
- "fields": [
3178
- {
3179
- "name": "allowSwap",
3180
- "type": "bool"
3181
- },
3182
- {
3183
- "name": "allowAddLiquidity",
3184
- "type": "bool"
3185
- },
3186
- {
3187
- "name": "allowRemoveLiquidity",
3188
- "type": "bool"
3189
- },
3190
- {
3191
- "name": "allowOpenPosition",
3192
- "type": "bool"
3193
- },
3194
- {
3195
- "name": "allowClosePosition",
3196
- "type": "bool"
3197
- },
3198
- {
3199
- "name": "allowPnlWithdrawal",
3200
- "type": "bool"
3201
- },
3202
- {
3203
- "name": "allowCollateralWithdrawal",
3204
- "type": "bool"
3205
- },
3206
- {
3207
- "name": "allowSizeChange",
3208
- "type": "bool"
3209
- }
3210
- ]
3211
- }
3212
- },
3213
- {
3214
- "name": "TokenRatios",
3215
- "type": {
3216
- "kind": "struct",
3217
- "fields": [
3218
- {
3219
- "name": "target",
3220
- "type": "u64"
3221
- },
3222
- {
3223
- "name": "min",
3224
- "type": "u64"
3225
- },
3226
- {
3227
- "name": "max",
3228
- "type": "u64"
3229
- }
3230
- ]
3231
- }
3232
- },
3233
- {
3234
- "name": "FeesMode",
3235
- "type": {
3236
- "kind": "enum",
3237
- "variants": [
3238
- {
3239
- "name": "Fixed"
3240
- },
3241
- {
3242
- "name": "Linear"
3243
- }
3244
- ]
3245
- }
3246
- },
3247
- {
3248
- "name": "AdminInstruction",
3249
- "type": {
3250
- "kind": "enum",
3251
- "variants": [
3252
- {
3253
- "name": "AddPool"
3254
- },
3255
- {
3256
- "name": "RemovePool"
3257
- },
3258
- {
3259
- "name": "AddCustody"
3260
- },
3261
- {
3262
- "name": "RemoveCustody"
3263
- },
3264
- {
3265
- "name": "SetAdminSigners"
3266
- },
3267
- {
3268
- "name": "SetCustodyConfig"
3269
- },
3270
- {
3271
- "name": "SetPermissions"
3272
- },
3273
- {
3274
- "name": "SetBorrowRate"
3275
- },
3276
- {
3277
- "name": "WithdrawFees"
3278
- },
3279
- {
3280
- "name": "WithdrawSolFees"
3281
- },
3282
- {
3283
- "name": "SetTestOraclePrice"
3284
- },
3285
- {
3286
- "name": "SetTestTime"
3287
- },
3288
- {
3289
- "name": "UpgradeCustody"
3290
- }
3291
- ]
3292
- }
3293
- },
3294
- {
3295
- "name": "OracleType",
3296
- "type": {
3297
- "kind": "enum",
3298
- "variants": [
3299
- {
3300
- "name": "None"
3301
- },
3302
- {
3303
- "name": "Test"
3304
- },
3305
- {
3306
- "name": "Pyth"
3307
- }
3308
- ]
3309
- }
3310
- },
3311
- {
3312
- "name": "AumCalcMode",
3313
- "type": {
3314
- "kind": "enum",
3315
- "variants": [
3316
- {
3317
- "name": "Min"
3318
- },
3319
- {
3320
- "name": "Max"
3321
- },
3322
- {
3323
- "name": "Last"
3324
- },
3325
- {
3326
- "name": "EMA"
3327
- }
3328
- ]
3329
- }
3330
- },
3331
- {
3332
- "name": "Side",
3333
- "type": {
3334
- "kind": "enum",
3335
- "variants": [
3336
- {
3337
- "name": "None"
3338
- },
3339
- {
3340
- "name": "Long"
3341
- },
3342
- {
3343
- "name": "Short"
3344
- }
3345
- ]
3346
- }
3347
- },
3348
- {
3349
- "name": "CollateralChange",
3350
- "type": {
3351
- "kind": "enum",
3352
- "variants": [
3353
- {
3354
- "name": "None"
3355
- },
3356
- {
3357
- "name": "Add"
3358
- },
3359
- {
3360
- "name": "Remove"
3361
- }
3362
- ]
3363
- }
3364
- }
3365
- ],
3366
- "events": [
3367
- {
3368
- "name": "OpenPositionLog",
3369
- "fields": [
3370
- {
3371
- "name": "postion",
3372
- "type": "publicKey",
3373
- "index": false
3374
- },
3375
- {
3376
- "name": "owner",
3377
- "type": "publicKey",
3378
- "index": false
3379
- },
3380
- {
3381
- "name": "tokenId",
3382
- "type": "u64",
3383
- "index": false
3384
- },
3385
- {
3386
- "name": "price",
3387
- "type": "u64",
3388
- "index": false
3389
- },
3390
- {
3391
- "name": "collateral",
3392
- "type": "u64",
3393
- "index": false
3394
- },
3395
- {
3396
- "name": "size",
3397
- "type": "u64",
3398
- "index": false
3399
- },
3400
- {
3401
- "name": "side",
3402
- "type": {
3403
- "defined": "Side"
3404
- },
3405
- "index": false
3406
- }
3407
- ]
3408
- }
3409
- ],
3410
- "errors": [
3411
- {
3412
- "code": 6000,
3413
- "name": "MultisigAccountNotAuthorized",
3414
- "msg": "Account is not authorized to sign this instruction"
3415
- },
3416
- {
3417
- "code": 6001,
3418
- "name": "MultisigAlreadySigned",
3419
- "msg": "Account has already signed this instruction"
3420
- },
3421
- {
3422
- "code": 6002,
3423
- "name": "MultisigAlreadyExecuted",
3424
- "msg": "This instruction has already been executed"
3425
- },
3426
- {
3427
- "code": 6003,
3428
- "name": "MathOverflow",
3429
- "msg": "Overflow in arithmetic operation"
3430
- },
3431
- {
3432
- "code": 6004,
3433
- "name": "UnsupportedOracle",
3434
- "msg": "Unsupported price oracle"
3435
- },
3436
- {
3437
- "code": 6005,
3438
- "name": "InvalidOracleAccount",
3439
- "msg": "Invalid oracle account"
3440
- },
3441
- {
3442
- "code": 6006,
3443
- "name": "InvalidOracleState",
3444
- "msg": "Invalid oracle state"
3445
- },
3446
- {
3447
- "code": 6007,
3448
- "name": "StaleOraclePrice",
3449
- "msg": "Stale oracle price"
3450
- },
3451
- {
3452
- "code": 6008,
3453
- "name": "InvalidOraclePrice",
3454
- "msg": "Invalid oracle price"
3455
- },
3456
- {
3457
- "code": 6009,
3458
- "name": "InvalidEnvironment",
3459
- "msg": "Instruction is not allowed in production"
3460
- },
3461
- {
3462
- "code": 6010,
3463
- "name": "InvalidPoolState",
3464
- "msg": "Invalid pool state"
3465
- },
3466
- {
3467
- "code": 6011,
3468
- "name": "InvalidCustodyState",
3469
- "msg": "Invalid custody state"
3470
- },
3471
- {
3472
- "code": 6012,
3473
- "name": "InvalidPositionState",
3474
- "msg": "Invalid position state"
3475
- },
3476
- {
3477
- "code": 6013,
3478
- "name": "InvalidPerpetualsConfig",
3479
- "msg": "Invalid perpetuals config"
3480
- },
3481
- {
3482
- "code": 6014,
3483
- "name": "InvalidPoolConfig",
3484
- "msg": "Invalid pool config"
3485
- },
3486
- {
3487
- "code": 6015,
3488
- "name": "InvalidCustodyConfig",
3489
- "msg": "Invalid custody config"
3490
- },
3491
- {
3492
- "code": 6016,
3493
- "name": "InsufficientAmountReturned",
3494
- "msg": "Insufficient token amount returned"
3495
- },
3496
- {
3497
- "code": 6017,
3498
- "name": "MaxPriceSlippage",
3499
- "msg": "Price slippage limit exceeded"
3500
- },
3501
- {
3502
- "code": 6018,
3503
- "name": "MaxLeverage",
3504
- "msg": "Position leverage limit exceeded"
3505
- },
3506
- {
3507
- "code": 6019,
3508
- "name": "CustodyAmountLimit",
3509
- "msg": "Custody amount limit exceeded"
3510
- },
3511
- {
3512
- "code": 6020,
3513
- "name": "PositionAmountLimit",
3514
- "msg": "Position amount limit exceeded"
3515
- },
3516
- {
3517
- "code": 6021,
3518
- "name": "TokenRatioOutOfRange",
3519
- "msg": "Token ratio out of range"
3520
- },
3521
- {
3522
- "code": 6022,
3523
- "name": "UnsupportedToken",
3524
- "msg": "Token is not supported"
3525
- },
3526
- {
3527
- "code": 6023,
3528
- "name": "InstructionNotAllowed",
3529
- "msg": "Instruction is not allowed at this time"
3530
- },
3531
- {
3532
- "code": 6024,
3533
- "name": "MaxUtilization",
3534
- "msg": "Token utilization limit exceeded"
3535
- }
3536
- ]
3537
- }