flash-sdk 1.0.13 → 1.0.15

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,3538 +0,0 @@
1
- export type Perpetuals = {
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": "custody";
3382
- "type": "publicKey";
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
- };
3538
- export declare const IDL: Perpetuals;