flash-sdk 9.0.0-alpha.2 → 9.0.0-alpha.20

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.
@@ -2,7 +2,7 @@ import { Program, AnchorProvider, BN } from "@coral-xyz/anchor";
2
2
  import { PublicKey, TransactionInstruction, Commitment, Signer, AddressLookupTableAccount, VersionedTransaction } from "@solana/web3.js";
3
3
  import { PoolAccount } from "./PoolAccount";
4
4
  import { PositionAccount } from "./PositionAccount";
5
- import { AddLiquidityAmountAndFee, InternalPrice, BorrowRateParams, ExitPriceAndFee, Fees, OracleParams, Permissions, PricingParams, RemoveCollateralData, RemoveLiquidityAmountAndFee, Side, TokenRatios, MinAndMaxPrice, FeesAction, ContractOraclePrice, Privilege, PerpetualsAccount, Trading, EntryPriceAndFeeV2, EntryPriceAndFee, TokenPermissions, TokenStake, InternalEmaPrice } from "./types";
5
+ import { AddLiquidityAmountAndFee, InternalPrice, BorrowRateParams, ExitPriceAndFee, Fees, OracleParams, Permissions, PricingParams, RemoveCollateralData, RemoveLiquidityAmountAndFee, Side, TokenRatios, MinAndMaxPrice, FeesAction, ContractOraclePrice, Privilege, PerpetualsAccount, EntryPriceAndFeeV2, TokenPermissions, TokenStake, InternalEmaPrice } from "./types";
6
6
  import { OraclePrice } from "./OraclePrice";
7
7
  import { CustodyAccount } from "./CustodyAccount";
8
8
  import { Perpetuals } from "./idl/perpetuals";
@@ -109,7 +109,7 @@ export declare class PerpetualsClient {
109
109
  maxUtilization: number;
110
110
  degenPositionFactor: number;
111
111
  degenExposureFactor: number;
112
- maxPositionLockedUsd: BN;
112
+ maxPositionSizeUsd: BN;
113
113
  maxExposureUsd: BN;
114
114
  };
115
115
  permissions: {
@@ -202,7 +202,7 @@ export declare class PerpetualsClient {
202
202
  reservedAmount: BN;
203
203
  minReserveUsd: BN;
204
204
  limitPriceBufferBps: BN;
205
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
205
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
206
206
  owner: PublicKey;
207
207
  stakeStats: {
208
208
  pendingActivation: BN;
@@ -259,6 +259,7 @@ export declare class PerpetualsClient {
259
259
  conf: BN;
260
260
  ema: BN;
261
261
  publishTime: BN;
262
+ extOracleAccount: PublicKey;
262
263
  market: PublicKey;
263
264
  limitOrders: unknown;
264
265
  takeProfitOrders: unknown;
@@ -301,7 +302,7 @@ export declare class PerpetualsClient {
301
302
  }[];
302
303
  markets: PublicKey[];
303
304
  maxAumUsd: BN;
304
- buffer: BN;
305
+ buffer: number | BN;
305
306
  rawAumUsd: BN;
306
307
  equityUsd: BN;
307
308
  totalStaked: {
@@ -348,15 +349,22 @@ export declare class PerpetualsClient {
348
349
  lockedUsd: BN;
349
350
  collateralAmount: BN;
350
351
  collateralUsd: BN;
351
- unsettledValue: BN;
352
+ unsettledValueUsd: BN;
352
353
  unsettledFeesUsd: BN;
353
354
  cumulativeLockFeeSnapshot: BN;
354
355
  degenSizeUsd: BN;
356
+ referencePrice: {
357
+ price: BN;
358
+ exponent: number;
359
+ };
355
360
  sizeDecimals: number;
356
361
  lockedDecimals: number;
357
362
  collateralDecimals: number;
358
363
  key: PublicKey;
359
364
  feeAmount: BN;
365
+ allowPayout: boolean;
366
+ availableUsd: BN;
367
+ availableAmount: BN;
360
368
  refererTokenStakeAccount: PublicKey;
361
369
  refererBoosterAccount: PublicKey;
362
370
  level: number;
@@ -454,7 +462,7 @@ export declare class PerpetualsClient {
454
462
  maxUtilization: number;
455
463
  degenPositionFactor: number;
456
464
  degenExposureFactor: number;
457
- maxPositionLockedUsd: BN;
465
+ maxPositionSizeUsd: BN;
458
466
  maxExposureUsd: BN;
459
467
  };
460
468
  permissions: {
@@ -547,7 +555,7 @@ export declare class PerpetualsClient {
547
555
  reservedAmount: BN;
548
556
  minReserveUsd: BN;
549
557
  limitPriceBufferBps: BN;
550
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
558
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
551
559
  owner: PublicKey;
552
560
  stakeStats: {
553
561
  pendingActivation: BN;
@@ -604,6 +612,7 @@ export declare class PerpetualsClient {
604
612
  conf: BN;
605
613
  ema: BN;
606
614
  publishTime: BN;
615
+ extOracleAccount: PublicKey;
607
616
  market: PublicKey;
608
617
  limitOrders: unknown;
609
618
  takeProfitOrders: unknown;
@@ -646,7 +655,7 @@ export declare class PerpetualsClient {
646
655
  }[];
647
656
  markets: PublicKey[];
648
657
  maxAumUsd: BN;
649
- buffer: BN;
658
+ buffer: number | BN;
650
659
  rawAumUsd: BN;
651
660
  equityUsd: BN;
652
661
  totalStaked: {
@@ -693,15 +702,22 @@ export declare class PerpetualsClient {
693
702
  lockedUsd: BN;
694
703
  collateralAmount: BN;
695
704
  collateralUsd: BN;
696
- unsettledValue: BN;
705
+ unsettledValueUsd: BN;
697
706
  unsettledFeesUsd: BN;
698
707
  cumulativeLockFeeSnapshot: BN;
699
708
  degenSizeUsd: BN;
709
+ referencePrice: {
710
+ price: BN;
711
+ exponent: number;
712
+ };
700
713
  sizeDecimals: number;
701
714
  lockedDecimals: number;
702
715
  collateralDecimals: number;
703
716
  key: PublicKey;
704
717
  feeAmount: BN;
718
+ allowPayout: boolean;
719
+ availableUsd: BN;
720
+ availableAmount: BN;
705
721
  refererTokenStakeAccount: PublicKey;
706
722
  refererBoosterAccount: PublicKey;
707
723
  level: number;
@@ -798,7 +814,7 @@ export declare class PerpetualsClient {
798
814
  maxUtilization: number;
799
815
  degenPositionFactor: number;
800
816
  degenExposureFactor: number;
801
- maxPositionLockedUsd: BN;
817
+ maxPositionSizeUsd: BN;
802
818
  maxExposureUsd: BN;
803
819
  };
804
820
  permissions: {
@@ -891,7 +907,7 @@ export declare class PerpetualsClient {
891
907
  reservedAmount: BN;
892
908
  minReserveUsd: BN;
893
909
  limitPriceBufferBps: BN;
894
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
910
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
895
911
  owner: PublicKey;
896
912
  stakeStats: {
897
913
  pendingActivation: BN;
@@ -948,6 +964,7 @@ export declare class PerpetualsClient {
948
964
  conf: BN;
949
965
  ema: BN;
950
966
  publishTime: BN;
967
+ extOracleAccount: PublicKey;
951
968
  market: PublicKey;
952
969
  limitOrders: unknown;
953
970
  takeProfitOrders: unknown;
@@ -990,7 +1007,7 @@ export declare class PerpetualsClient {
990
1007
  }[];
991
1008
  markets: PublicKey[];
992
1009
  maxAumUsd: BN;
993
- buffer: BN;
1010
+ buffer: number | BN;
994
1011
  rawAumUsd: BN;
995
1012
  equityUsd: BN;
996
1013
  totalStaked: {
@@ -1037,15 +1054,22 @@ export declare class PerpetualsClient {
1037
1054
  lockedUsd: BN;
1038
1055
  collateralAmount: BN;
1039
1056
  collateralUsd: BN;
1040
- unsettledValue: BN;
1057
+ unsettledValueUsd: BN;
1041
1058
  unsettledFeesUsd: BN;
1042
1059
  cumulativeLockFeeSnapshot: BN;
1043
1060
  degenSizeUsd: BN;
1061
+ referencePrice: {
1062
+ price: BN;
1063
+ exponent: number;
1064
+ };
1044
1065
  sizeDecimals: number;
1045
1066
  lockedDecimals: number;
1046
1067
  collateralDecimals: number;
1047
1068
  key: PublicKey;
1048
1069
  feeAmount: BN;
1070
+ allowPayout: boolean;
1071
+ availableUsd: BN;
1072
+ availableAmount: BN;
1049
1073
  refererTokenStakeAccount: PublicKey;
1050
1074
  refererBoosterAccount: PublicKey;
1051
1075
  level: number;
@@ -1146,7 +1170,7 @@ export declare class PerpetualsClient {
1146
1170
  maxUtilization: number;
1147
1171
  degenPositionFactor: number;
1148
1172
  degenExposureFactor: number;
1149
- maxPositionLockedUsd: BN;
1173
+ maxPositionSizeUsd: BN;
1150
1174
  maxExposureUsd: BN;
1151
1175
  };
1152
1176
  permissions: {
@@ -1239,7 +1263,7 @@ export declare class PerpetualsClient {
1239
1263
  reservedAmount: BN;
1240
1264
  minReserveUsd: BN;
1241
1265
  limitPriceBufferBps: BN;
1242
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
1266
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
1243
1267
  owner: PublicKey;
1244
1268
  stakeStats: {
1245
1269
  pendingActivation: BN;
@@ -1296,6 +1320,7 @@ export declare class PerpetualsClient {
1296
1320
  conf: BN;
1297
1321
  ema: BN;
1298
1322
  publishTime: BN;
1323
+ extOracleAccount: PublicKey;
1299
1324
  market: PublicKey;
1300
1325
  limitOrders: unknown;
1301
1326
  takeProfitOrders: unknown;
@@ -1338,7 +1363,7 @@ export declare class PerpetualsClient {
1338
1363
  }[];
1339
1364
  markets: PublicKey[];
1340
1365
  maxAumUsd: BN;
1341
- buffer: BN;
1366
+ buffer: number | BN;
1342
1367
  rawAumUsd: BN;
1343
1368
  equityUsd: BN;
1344
1369
  totalStaked: {
@@ -1385,15 +1410,22 @@ export declare class PerpetualsClient {
1385
1410
  lockedUsd: BN;
1386
1411
  collateralAmount: BN;
1387
1412
  collateralUsd: BN;
1388
- unsettledValue: BN;
1413
+ unsettledValueUsd: BN;
1389
1414
  unsettledFeesUsd: BN;
1390
1415
  cumulativeLockFeeSnapshot: BN;
1391
1416
  degenSizeUsd: BN;
1417
+ referencePrice: {
1418
+ price: BN;
1419
+ exponent: number;
1420
+ };
1392
1421
  sizeDecimals: number;
1393
1422
  lockedDecimals: number;
1394
1423
  collateralDecimals: number;
1395
1424
  key: PublicKey;
1396
1425
  feeAmount: BN;
1426
+ allowPayout: boolean;
1427
+ availableUsd: BN;
1428
+ availableAmount: BN;
1397
1429
  refererTokenStakeAccount: PublicKey;
1398
1430
  refererBoosterAccount: PublicKey;
1399
1431
  level: number;
@@ -1493,7 +1525,7 @@ export declare class PerpetualsClient {
1493
1525
  maxUtilization: number;
1494
1526
  degenPositionFactor: number;
1495
1527
  degenExposureFactor: number;
1496
- maxPositionLockedUsd: BN;
1528
+ maxPositionSizeUsd: BN;
1497
1529
  maxExposureUsd: BN;
1498
1530
  };
1499
1531
  permissions: {
@@ -1586,7 +1618,7 @@ export declare class PerpetualsClient {
1586
1618
  reservedAmount: BN;
1587
1619
  minReserveUsd: BN;
1588
1620
  limitPriceBufferBps: BN;
1589
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
1621
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
1590
1622
  owner: PublicKey;
1591
1623
  stakeStats: {
1592
1624
  pendingActivation: BN;
@@ -1643,6 +1675,7 @@ export declare class PerpetualsClient {
1643
1675
  conf: BN;
1644
1676
  ema: BN;
1645
1677
  publishTime: BN;
1678
+ extOracleAccount: PublicKey;
1646
1679
  market: PublicKey;
1647
1680
  limitOrders: unknown;
1648
1681
  takeProfitOrders: unknown;
@@ -1685,7 +1718,7 @@ export declare class PerpetualsClient {
1685
1718
  }[];
1686
1719
  markets: PublicKey[];
1687
1720
  maxAumUsd: BN;
1688
- buffer: BN;
1721
+ buffer: number | BN;
1689
1722
  rawAumUsd: BN;
1690
1723
  equityUsd: BN;
1691
1724
  totalStaked: {
@@ -1732,15 +1765,22 @@ export declare class PerpetualsClient {
1732
1765
  lockedUsd: BN;
1733
1766
  collateralAmount: BN;
1734
1767
  collateralUsd: BN;
1735
- unsettledValue: BN;
1768
+ unsettledValueUsd: BN;
1736
1769
  unsettledFeesUsd: BN;
1737
1770
  cumulativeLockFeeSnapshot: BN;
1738
1771
  degenSizeUsd: BN;
1772
+ referencePrice: {
1773
+ price: BN;
1774
+ exponent: number;
1775
+ };
1739
1776
  sizeDecimals: number;
1740
1777
  lockedDecimals: number;
1741
1778
  collateralDecimals: number;
1742
1779
  key: PublicKey;
1743
1780
  feeAmount: BN;
1781
+ allowPayout: boolean;
1782
+ availableUsd: BN;
1783
+ availableAmount: BN;
1744
1784
  refererTokenStakeAccount: PublicKey;
1745
1785
  refererBoosterAccount: PublicKey;
1746
1786
  level: number;
@@ -1838,7 +1878,7 @@ export declare class PerpetualsClient {
1838
1878
  maxUtilization: number;
1839
1879
  degenPositionFactor: number;
1840
1880
  degenExposureFactor: number;
1841
- maxPositionLockedUsd: BN;
1881
+ maxPositionSizeUsd: BN;
1842
1882
  maxExposureUsd: BN;
1843
1883
  };
1844
1884
  permissions: {
@@ -1931,7 +1971,7 @@ export declare class PerpetualsClient {
1931
1971
  reservedAmount: BN;
1932
1972
  minReserveUsd: BN;
1933
1973
  limitPriceBufferBps: BN;
1934
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
1974
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
1935
1975
  owner: PublicKey;
1936
1976
  stakeStats: {
1937
1977
  pendingActivation: BN;
@@ -1988,6 +2028,7 @@ export declare class PerpetualsClient {
1988
2028
  conf: BN;
1989
2029
  ema: BN;
1990
2030
  publishTime: BN;
2031
+ extOracleAccount: PublicKey;
1991
2032
  market: PublicKey;
1992
2033
  limitOrders: unknown;
1993
2034
  takeProfitOrders: unknown;
@@ -2030,7 +2071,7 @@ export declare class PerpetualsClient {
2030
2071
  }[];
2031
2072
  markets: PublicKey[];
2032
2073
  maxAumUsd: BN;
2033
- buffer: BN;
2074
+ buffer: number | BN;
2034
2075
  rawAumUsd: BN;
2035
2076
  equityUsd: BN;
2036
2077
  totalStaked: {
@@ -2077,15 +2118,22 @@ export declare class PerpetualsClient {
2077
2118
  lockedUsd: BN;
2078
2119
  collateralAmount: BN;
2079
2120
  collateralUsd: BN;
2080
- unsettledValue: BN;
2121
+ unsettledValueUsd: BN;
2081
2122
  unsettledFeesUsd: BN;
2082
2123
  cumulativeLockFeeSnapshot: BN;
2083
2124
  degenSizeUsd: BN;
2125
+ referencePrice: {
2126
+ price: BN;
2127
+ exponent: number;
2128
+ };
2084
2129
  sizeDecimals: number;
2085
2130
  lockedDecimals: number;
2086
2131
  collateralDecimals: number;
2087
2132
  key: PublicKey;
2088
2133
  feeAmount: BN;
2134
+ allowPayout: boolean;
2135
+ availableUsd: BN;
2136
+ availableAmount: BN;
2089
2137
  refererTokenStakeAccount: PublicKey;
2090
2138
  refererBoosterAccount: PublicKey;
2091
2139
  level: number;
@@ -2182,7 +2230,7 @@ export declare class PerpetualsClient {
2182
2230
  maxUtilization: number;
2183
2231
  degenPositionFactor: number;
2184
2232
  degenExposureFactor: number;
2185
- maxPositionLockedUsd: BN;
2233
+ maxPositionSizeUsd: BN;
2186
2234
  maxExposureUsd: BN;
2187
2235
  };
2188
2236
  permissions: {
@@ -2275,7 +2323,7 @@ export declare class PerpetualsClient {
2275
2323
  reservedAmount: BN;
2276
2324
  minReserveUsd: BN;
2277
2325
  limitPriceBufferBps: BN;
2278
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
2326
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
2279
2327
  owner: PublicKey;
2280
2328
  stakeStats: {
2281
2329
  pendingActivation: BN;
@@ -2332,6 +2380,7 @@ export declare class PerpetualsClient {
2332
2380
  conf: BN;
2333
2381
  ema: BN;
2334
2382
  publishTime: BN;
2383
+ extOracleAccount: PublicKey;
2335
2384
  market: PublicKey;
2336
2385
  limitOrders: unknown;
2337
2386
  takeProfitOrders: unknown;
@@ -2374,7 +2423,7 @@ export declare class PerpetualsClient {
2374
2423
  }[];
2375
2424
  markets: PublicKey[];
2376
2425
  maxAumUsd: BN;
2377
- buffer: BN;
2426
+ buffer: number | BN;
2378
2427
  rawAumUsd: BN;
2379
2428
  equityUsd: BN;
2380
2429
  totalStaked: {
@@ -2421,15 +2470,22 @@ export declare class PerpetualsClient {
2421
2470
  lockedUsd: BN;
2422
2471
  collateralAmount: BN;
2423
2472
  collateralUsd: BN;
2424
- unsettledValue: BN;
2473
+ unsettledValueUsd: BN;
2425
2474
  unsettledFeesUsd: BN;
2426
2475
  cumulativeLockFeeSnapshot: BN;
2427
2476
  degenSizeUsd: BN;
2477
+ referencePrice: {
2478
+ price: BN;
2479
+ exponent: number;
2480
+ };
2428
2481
  sizeDecimals: number;
2429
2482
  lockedDecimals: number;
2430
2483
  collateralDecimals: number;
2431
2484
  key: PublicKey;
2432
2485
  feeAmount: BN;
2486
+ allowPayout: boolean;
2487
+ availableUsd: BN;
2488
+ availableAmount: BN;
2433
2489
  refererTokenStakeAccount: PublicKey;
2434
2490
  refererBoosterAccount: PublicKey;
2435
2491
  level: number;
@@ -2526,7 +2582,7 @@ export declare class PerpetualsClient {
2526
2582
  maxUtilization: number;
2527
2583
  degenPositionFactor: number;
2528
2584
  degenExposureFactor: number;
2529
- maxPositionLockedUsd: BN;
2585
+ maxPositionSizeUsd: BN;
2530
2586
  maxExposureUsd: BN;
2531
2587
  };
2532
2588
  permissions: {
@@ -2619,7 +2675,7 @@ export declare class PerpetualsClient {
2619
2675
  reservedAmount: BN;
2620
2676
  minReserveUsd: BN;
2621
2677
  limitPriceBufferBps: BN;
2622
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
2678
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
2623
2679
  owner: PublicKey;
2624
2680
  stakeStats: {
2625
2681
  pendingActivation: BN;
@@ -2676,6 +2732,7 @@ export declare class PerpetualsClient {
2676
2732
  conf: BN;
2677
2733
  ema: BN;
2678
2734
  publishTime: BN;
2735
+ extOracleAccount: PublicKey;
2679
2736
  market: PublicKey;
2680
2737
  limitOrders: unknown;
2681
2738
  takeProfitOrders: unknown;
@@ -2718,7 +2775,7 @@ export declare class PerpetualsClient {
2718
2775
  }[];
2719
2776
  markets: PublicKey[];
2720
2777
  maxAumUsd: BN;
2721
- buffer: BN;
2778
+ buffer: number | BN;
2722
2779
  rawAumUsd: BN;
2723
2780
  equityUsd: BN;
2724
2781
  totalStaked: {
@@ -2765,15 +2822,22 @@ export declare class PerpetualsClient {
2765
2822
  lockedUsd: BN;
2766
2823
  collateralAmount: BN;
2767
2824
  collateralUsd: BN;
2768
- unsettledValue: BN;
2825
+ unsettledValueUsd: BN;
2769
2826
  unsettledFeesUsd: BN;
2770
2827
  cumulativeLockFeeSnapshot: BN;
2771
2828
  degenSizeUsd: BN;
2829
+ referencePrice: {
2830
+ price: BN;
2831
+ exponent: number;
2832
+ };
2772
2833
  sizeDecimals: number;
2773
2834
  lockedDecimals: number;
2774
2835
  collateralDecimals: number;
2775
2836
  key: PublicKey;
2776
2837
  feeAmount: BN;
2838
+ allowPayout: boolean;
2839
+ availableUsd: BN;
2840
+ availableAmount: BN;
2777
2841
  refererTokenStakeAccount: PublicKey;
2778
2842
  refererBoosterAccount: PublicKey;
2779
2843
  level: number;
@@ -2848,11 +2912,15 @@ export declare class PerpetualsClient {
2848
2912
  lockedUsd: BN;
2849
2913
  collateralAmount: BN;
2850
2914
  collateralUsd: BN;
2851
- unsettledValue: BN;
2915
+ unsettledValueUsd: BN;
2852
2916
  unsettledFeesUsd: BN;
2853
2917
  cumulativeLockFeeSnapshot: BN;
2854
2918
  degenSizeUsd: BN;
2855
- buffer: BN;
2919
+ referencePrice: {
2920
+ price: BN;
2921
+ exponent: number;
2922
+ };
2923
+ buffer: number;
2856
2924
  sizeDecimals: number;
2857
2925
  lockedDecimals: number;
2858
2926
  collateralDecimals: number;
@@ -2917,7 +2985,7 @@ export declare class PerpetualsClient {
2917
2985
  maxUtilization: number;
2918
2986
  degenPositionFactor: number;
2919
2987
  degenExposureFactor: number;
2920
- maxPositionLockedUsd: BN;
2988
+ maxPositionSizeUsd: BN;
2921
2989
  maxExposureUsd: BN;
2922
2990
  };
2923
2991
  permissions: {
@@ -3010,7 +3078,7 @@ export declare class PerpetualsClient {
3010
3078
  reservedAmount: BN;
3011
3079
  minReserveUsd: BN;
3012
3080
  limitPriceBufferBps: BN;
3013
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
3081
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3014
3082
  owner: PublicKey;
3015
3083
  stakeStats: {
3016
3084
  pendingActivation: BN;
@@ -3067,6 +3135,7 @@ export declare class PerpetualsClient {
3067
3135
  conf: BN;
3068
3136
  ema: BN;
3069
3137
  publishTime: BN;
3138
+ extOracleAccount: PublicKey;
3070
3139
  market: PublicKey;
3071
3140
  limitOrders: unknown;
3072
3141
  takeProfitOrders: unknown;
@@ -3109,7 +3178,7 @@ export declare class PerpetualsClient {
3109
3178
  }[];
3110
3179
  markets: PublicKey[];
3111
3180
  maxAumUsd: BN;
3112
- buffer: BN;
3181
+ buffer: number | BN;
3113
3182
  rawAumUsd: BN;
3114
3183
  equityUsd: BN;
3115
3184
  totalStaked: {
@@ -3156,15 +3225,22 @@ export declare class PerpetualsClient {
3156
3225
  lockedUsd: BN;
3157
3226
  collateralAmount: BN;
3158
3227
  collateralUsd: BN;
3159
- unsettledValue: BN;
3228
+ unsettledValueUsd: BN;
3160
3229
  unsettledFeesUsd: BN;
3161
3230
  cumulativeLockFeeSnapshot: BN;
3162
3231
  degenSizeUsd: BN;
3232
+ referencePrice: {
3233
+ price: BN;
3234
+ exponent: number;
3235
+ };
3163
3236
  sizeDecimals: number;
3164
3237
  lockedDecimals: number;
3165
3238
  collateralDecimals: number;
3166
3239
  key: PublicKey;
3167
3240
  feeAmount: BN;
3241
+ allowPayout: boolean;
3242
+ availableUsd: BN;
3243
+ availableAmount: BN;
3168
3244
  refererTokenStakeAccount: PublicKey;
3169
3245
  refererBoosterAccount: PublicKey;
3170
3246
  level: number;
@@ -3261,7 +3337,7 @@ export declare class PerpetualsClient {
3261
3337
  maxUtilization: number;
3262
3338
  degenPositionFactor: number;
3263
3339
  degenExposureFactor: number;
3264
- maxPositionLockedUsd: BN;
3340
+ maxPositionSizeUsd: BN;
3265
3341
  maxExposureUsd: BN;
3266
3342
  };
3267
3343
  permissions: {
@@ -3354,7 +3430,7 @@ export declare class PerpetualsClient {
3354
3430
  reservedAmount: BN;
3355
3431
  minReserveUsd: BN;
3356
3432
  limitPriceBufferBps: BN;
3357
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
3433
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3358
3434
  owner: PublicKey;
3359
3435
  stakeStats: {
3360
3436
  pendingActivation: BN;
@@ -3411,6 +3487,7 @@ export declare class PerpetualsClient {
3411
3487
  conf: BN;
3412
3488
  ema: BN;
3413
3489
  publishTime: BN;
3490
+ extOracleAccount: PublicKey;
3414
3491
  market: PublicKey;
3415
3492
  limitOrders: unknown;
3416
3493
  takeProfitOrders: unknown;
@@ -3453,7 +3530,7 @@ export declare class PerpetualsClient {
3453
3530
  }[];
3454
3531
  markets: PublicKey[];
3455
3532
  maxAumUsd: BN;
3456
- buffer: BN;
3533
+ buffer: number | BN;
3457
3534
  rawAumUsd: BN;
3458
3535
  equityUsd: BN;
3459
3536
  totalStaked: {
@@ -3500,15 +3577,22 @@ export declare class PerpetualsClient {
3500
3577
  lockedUsd: BN;
3501
3578
  collateralAmount: BN;
3502
3579
  collateralUsd: BN;
3503
- unsettledValue: BN;
3580
+ unsettledValueUsd: BN;
3504
3581
  unsettledFeesUsd: BN;
3505
3582
  cumulativeLockFeeSnapshot: BN;
3506
3583
  degenSizeUsd: BN;
3584
+ referencePrice: {
3585
+ price: BN;
3586
+ exponent: number;
3587
+ };
3507
3588
  sizeDecimals: number;
3508
3589
  lockedDecimals: number;
3509
3590
  collateralDecimals: number;
3510
3591
  key: PublicKey;
3511
3592
  feeAmount: BN;
3593
+ allowPayout: boolean;
3594
+ availableUsd: BN;
3595
+ availableAmount: BN;
3512
3596
  refererTokenStakeAccount: PublicKey;
3513
3597
  refererBoosterAccount: PublicKey;
3514
3598
  level: number;
@@ -3605,7 +3689,7 @@ export declare class PerpetualsClient {
3605
3689
  maxUtilization: number;
3606
3690
  degenPositionFactor: number;
3607
3691
  degenExposureFactor: number;
3608
- maxPositionLockedUsd: BN;
3692
+ maxPositionSizeUsd: BN;
3609
3693
  maxExposureUsd: BN;
3610
3694
  };
3611
3695
  permissions: {
@@ -3698,7 +3782,7 @@ export declare class PerpetualsClient {
3698
3782
  reservedAmount: BN;
3699
3783
  minReserveUsd: BN;
3700
3784
  limitPriceBufferBps: BN;
3701
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
3785
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3702
3786
  owner: PublicKey;
3703
3787
  stakeStats: {
3704
3788
  pendingActivation: BN;
@@ -3755,6 +3839,7 @@ export declare class PerpetualsClient {
3755
3839
  conf: BN;
3756
3840
  ema: BN;
3757
3841
  publishTime: BN;
3842
+ extOracleAccount: PublicKey;
3758
3843
  market: PublicKey;
3759
3844
  limitOrders: unknown;
3760
3845
  takeProfitOrders: unknown;
@@ -3797,7 +3882,7 @@ export declare class PerpetualsClient {
3797
3882
  }[];
3798
3883
  markets: PublicKey[];
3799
3884
  maxAumUsd: BN;
3800
- buffer: BN;
3885
+ buffer: number | BN;
3801
3886
  rawAumUsd: BN;
3802
3887
  equityUsd: BN;
3803
3888
  totalStaked: {
@@ -3844,15 +3929,22 @@ export declare class PerpetualsClient {
3844
3929
  lockedUsd: BN;
3845
3930
  collateralAmount: BN;
3846
3931
  collateralUsd: BN;
3847
- unsettledValue: BN;
3932
+ unsettledValueUsd: BN;
3848
3933
  unsettledFeesUsd: BN;
3849
3934
  cumulativeLockFeeSnapshot: BN;
3850
3935
  degenSizeUsd: BN;
3936
+ referencePrice: {
3937
+ price: BN;
3938
+ exponent: number;
3939
+ };
3851
3940
  sizeDecimals: number;
3852
3941
  lockedDecimals: number;
3853
3942
  collateralDecimals: number;
3854
3943
  key: PublicKey;
3855
3944
  feeAmount: BN;
3945
+ allowPayout: boolean;
3946
+ availableUsd: BN;
3947
+ availableAmount: BN;
3856
3948
  refererTokenStakeAccount: PublicKey;
3857
3949
  refererBoosterAccount: PublicKey;
3858
3950
  level: number;
@@ -3949,7 +4041,7 @@ export declare class PerpetualsClient {
3949
4041
  maxUtilization: number;
3950
4042
  degenPositionFactor: number;
3951
4043
  degenExposureFactor: number;
3952
- maxPositionLockedUsd: BN;
4044
+ maxPositionSizeUsd: BN;
3953
4045
  maxExposureUsd: BN;
3954
4046
  };
3955
4047
  permissions: {
@@ -4042,7 +4134,7 @@ export declare class PerpetualsClient {
4042
4134
  reservedAmount: BN;
4043
4135
  minReserveUsd: BN;
4044
4136
  limitPriceBufferBps: BN;
4045
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
4137
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
4046
4138
  owner: PublicKey;
4047
4139
  stakeStats: {
4048
4140
  pendingActivation: BN;
@@ -4099,6 +4191,7 @@ export declare class PerpetualsClient {
4099
4191
  conf: BN;
4100
4192
  ema: BN;
4101
4193
  publishTime: BN;
4194
+ extOracleAccount: PublicKey;
4102
4195
  market: PublicKey;
4103
4196
  limitOrders: unknown;
4104
4197
  takeProfitOrders: unknown;
@@ -4141,7 +4234,7 @@ export declare class PerpetualsClient {
4141
4234
  }[];
4142
4235
  markets: PublicKey[];
4143
4236
  maxAumUsd: BN;
4144
- buffer: BN;
4237
+ buffer: number | BN;
4145
4238
  rawAumUsd: BN;
4146
4239
  equityUsd: BN;
4147
4240
  totalStaked: {
@@ -4188,15 +4281,22 @@ export declare class PerpetualsClient {
4188
4281
  lockedUsd: BN;
4189
4282
  collateralAmount: BN;
4190
4283
  collateralUsd: BN;
4191
- unsettledValue: BN;
4284
+ unsettledValueUsd: BN;
4192
4285
  unsettledFeesUsd: BN;
4193
4286
  cumulativeLockFeeSnapshot: BN;
4194
4287
  degenSizeUsd: BN;
4288
+ referencePrice: {
4289
+ price: BN;
4290
+ exponent: number;
4291
+ };
4195
4292
  sizeDecimals: number;
4196
4293
  lockedDecimals: number;
4197
4294
  collateralDecimals: number;
4198
4295
  key: PublicKey;
4199
4296
  feeAmount: BN;
4297
+ allowPayout: boolean;
4298
+ availableUsd: BN;
4299
+ availableAmount: BN;
4200
4300
  refererTokenStakeAccount: PublicKey;
4201
4301
  refererBoosterAccount: PublicKey;
4202
4302
  level: number;
@@ -4293,7 +4393,7 @@ export declare class PerpetualsClient {
4293
4393
  maxUtilization: number;
4294
4394
  degenPositionFactor: number;
4295
4395
  degenExposureFactor: number;
4296
- maxPositionLockedUsd: BN;
4396
+ maxPositionSizeUsd: BN;
4297
4397
  maxExposureUsd: BN;
4298
4398
  };
4299
4399
  permissions: {
@@ -4386,7 +4486,7 @@ export declare class PerpetualsClient {
4386
4486
  reservedAmount: BN;
4387
4487
  minReserveUsd: BN;
4388
4488
  limitPriceBufferBps: BN;
4389
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | number[] | BN[] | BN[];
4489
+ padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
4390
4490
  owner: PublicKey;
4391
4491
  stakeStats: {
4392
4492
  pendingActivation: BN;
@@ -4443,6 +4543,7 @@ export declare class PerpetualsClient {
4443
4543
  conf: BN;
4444
4544
  ema: BN;
4445
4545
  publishTime: BN;
4546
+ extOracleAccount: PublicKey;
4446
4547
  market: PublicKey;
4447
4548
  limitOrders: unknown;
4448
4549
  takeProfitOrders: unknown;
@@ -4485,7 +4586,7 @@ export declare class PerpetualsClient {
4485
4586
  }[];
4486
4587
  markets: PublicKey[];
4487
4588
  maxAumUsd: BN;
4488
- buffer: BN;
4589
+ buffer: number | BN;
4489
4590
  rawAumUsd: BN;
4490
4591
  equityUsd: BN;
4491
4592
  totalStaked: {
@@ -4532,15 +4633,22 @@ export declare class PerpetualsClient {
4532
4633
  lockedUsd: BN;
4533
4634
  collateralAmount: BN;
4534
4635
  collateralUsd: BN;
4535
- unsettledValue: BN;
4636
+ unsettledValueUsd: BN;
4536
4637
  unsettledFeesUsd: BN;
4537
4638
  cumulativeLockFeeSnapshot: BN;
4538
4639
  degenSizeUsd: BN;
4640
+ referencePrice: {
4641
+ price: BN;
4642
+ exponent: number;
4643
+ };
4539
4644
  sizeDecimals: number;
4540
4645
  lockedDecimals: number;
4541
4646
  collateralDecimals: number;
4542
4647
  key: PublicKey;
4543
4648
  feeAmount: BN;
4649
+ allowPayout: boolean;
4650
+ availableUsd: BN;
4651
+ availableAmount: BN;
4544
4652
  refererTokenStakeAccount: PublicKey;
4545
4653
  refererBoosterAccount: PublicKey;
4546
4654
  level: number;
@@ -4618,9 +4726,9 @@ export declare class PerpetualsClient {
4618
4726
  getMinAndMaxPriceSync: (price: OraclePrice, emaPrice: OraclePrice, custodyAccount: CustodyAccount) => MinAndMaxPrice;
4619
4727
  checkIfPriceStaleOrCustom: (price: OraclePrice, emaPrice: OraclePrice, custodyAccount: CustodyAccount, timestampInSeconds: BN) => boolean;
4620
4728
  getAveragePriceSync: (price1: BN, size1: BN, price2: BN, size2: BN) => BN;
4621
- getLeverageSync: (sizeUsd: BN, collateralAmount: BN, collateralMinOraclePrice: OraclePrice, collateralTokenDecimals: number, pnlUsd: BN) => BN;
4622
- getLeverageAtAmountEntryWithSwapSync: (positionAccount: PositionAccount | null, inputDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfigPosition: PoolConfig, poolConfigSwap: PoolConfig, pnlUsd: BN) => BN;
4623
- getEntryPriceAndFeeSync: (positionAccount: PositionAccount | null, marketCorrelation: boolean, collateralDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, discountBps?: BN) => EntryPriceAndFee;
4729
+ getLeverageContractHelper: (positionAccount: PositionAccount, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, isInitial: boolean, poolConfig: PoolConfig) => BN;
4730
+ getLeverageSync: (positionAccount: PositionAccount, finalCollateralUsd: BN, finalSizeUsd: BN, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, isInitial: boolean, poolConfig: PoolConfig) => BN;
4731
+ getLeverageAtAmountEntryWithSwapSync: (positionAccount: PositionAccount | null, inputDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfig: PoolConfig, pnlUsd: BN) => BN;
4624
4732
  getEntryPriceAndFeeSyncV2: (positionAccount: PositionAccount | null, marketCorrelation: boolean, collateralDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, discountBps?: BN, enableLogs?: boolean) => EntryPriceAndFeeV2;
4625
4733
  getEntryPriceUsdSync: (side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, sizeUsd: BN) => OraclePrice;
4626
4734
  getPriceAfterSlippage(isEntry: boolean, slippageBps: BN, targetPrice: OraclePrice, side: Side): ContractOraclePrice;
@@ -4631,20 +4739,19 @@ export declare class PerpetualsClient {
4631
4739
  getExitPriceAndFeeSync: (positionAccount: PositionAccount, marketCorrelation: boolean, collateralDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, discountBps?: BN) => ExitPriceAndFee;
4632
4740
  getTradeSpread: (targetCustodyAccount: CustodyAccount, sizeUsd: BN) => BN;
4633
4741
  getExitOraclePriceSync: (side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, sizeUsd: BN) => OraclePrice;
4634
- getExitOraclePriceWithoutSpreadSync: (side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount) => OraclePrice;
4635
4742
  getSizeAmountFromLeverageAndCollateral: (collateralAmtWithFee: BN, leverage: string, marketToken: Token, collateralToken: Token, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, discountBps?: BN) => BN;
4636
- getSizeAmountWithSwapSync: (amountIn: BN, leverage: string, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfigSwap: PoolConfig, discountBps?: BN) => BN;
4743
+ getSizeAmountWithSwapSync: (amountIn: BN, leverage: string, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfig: PoolConfig, discountBps?: BN) => BN;
4637
4744
  getCollateralAmountWithFeeFromLeverageAndSize: (sizeAmount: BN, leverage: string, marketToken: Token, collateralToken: Token, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, discountBps?: BN) => BN;
4638
- getCollateralAmountWithSwapSync: (sizeAmount: BN, leverage: string, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfigPosition: PoolConfig, poolConfigSwap: PoolConfig) => BN;
4745
+ getCollateralAmountWithSwapSync: (sizeAmount: BN, leverage: string, side: Side, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, swapOutTokenPrice: OraclePrice, swapOutTokenEmaPrice: OraclePrice, swapOutTokenCustodyAccount: CustodyAccount, collateralTokenPrice: OraclePrice, collateralTokenEmaPrice: OraclePrice, collateralTokenCustodyAccount: CustodyAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetTokenCustodyAccount: CustodyAccount, swapPoolAumUsdMax: BN, poolConfig: PoolConfig) => BN;
4639
4746
  getDecreaseSizeCollateralAndFeeSync: (positionAccount: PositionAccount, marketCorrelation: boolean, sizeDeltaUsd: BN, keepLevSame: boolean, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, marketConfig: MarketConfig, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, side: Side, poolConfig: PoolConfig, discountBps?: BN, debugLogs?: boolean) => RemoveCollateralData;
4640
- getMaxWithdrawableAmountSyncInternal: (positionAccount: PositionAccount, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig, closeAmount?: BN, errorBandwidthPercentageUi?: number) => {
4747
+ getMaxWithdrawableAmountSyncInternal: (positionAccount: PositionAccount, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig, closeAmountUsd?: BN, errorBandwidthPercentageUi?: number) => {
4641
4748
  maxWithdrawableAmount: BN;
4642
4749
  maxWithdrawableAmountUsd: BN;
4643
4750
  diff: BN;
4644
4751
  };
4645
- getFinalCloseAmountSync: (positionAccount: PositionAccount, marketCorrelation: boolean, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig) => {
4646
- closeAmount: BN;
4647
- feesAmount: BN;
4752
+ getFinalCloseAmountUsdSync: (positionAccount: PositionAccount, marketCorrelation: boolean, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig) => {
4753
+ closeAmountUsd: BN;
4754
+ feesAmountUsd: BN;
4648
4755
  };
4649
4756
  getMaxWithdrawableAmountSync: (positionAccount: PositionAccount, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, poolConfig: PoolConfig, errorBandwidthPercentageUi?: number) => {
4650
4757
  maxWithdrawableAmount: BN;
@@ -4654,8 +4761,9 @@ export declare class PerpetualsClient {
4654
4761
  getBorrowRateSync: (custodyAccount: CustodyAccount, currentUtilization: BN) => BN;
4655
4762
  getLockFeeAndUnsettledUsdForPosition: (position: PositionAccount, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN) => BN;
4656
4763
  getLockedUsd: (sideUsd: BN, side: Side, marketCorrelation: boolean, maxPayOffBps: BN) => BN;
4657
- getLiquidationPriceSync: (collateralAmount: BN, sizeAmount: BN, entryOraclePrice: OraclePrice, lockAndUnsettledFeeUsd: BN, marketCorrelation: boolean, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, positionAccount: PositionAccount) => OraclePrice;
4658
- getLiquidationPriceWithOrder: (collateralAmount: BN, collateralUsd: BN, sizeAmount: BN, sizeUsd: BN, sizeDecimals: number, limitOraclePrice: OraclePrice, marketCorrelation: boolean, side: Side, targetPrice: OraclePrice, targetEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount) => OraclePrice;
4764
+ getLiquidationPriceContractHelper: (entryOraclePrice: OraclePrice, lockAndUnsettledFeeUsd: BN, side: Side, targetCustodyAccount: CustodyAccount, positionAccount: PositionAccount) => OraclePrice;
4765
+ getLiquidationPriceSync: (collateralUsd: BN, sizeAmount: BN, entryOraclePrice: OraclePrice, lockAndUnsettledFeeUsd: BN, side: Side, targetPrice: OraclePrice, targetCustodyAccount: CustodyAccount, positionAccount: PositionAccount) => OraclePrice;
4766
+ getLiquidationPriceWithOrder: (collateralUsd: BN, sizeAmount: BN, sizeUsd: BN, sizeDecimals: number, limitOraclePrice: OraclePrice, side: Side, targetCustodyAccount: CustodyAccount) => OraclePrice;
4659
4767
  getMaxProfitPriceSync: (entryPrice: OraclePrice, marketCorrelation: boolean, side: Side, positionAccount: PositionAccount) => OraclePrice;
4660
4768
  getEstimateProfitLossforTpSlEntry: (positionAccount: PositionAccount | null, isTakeProfit: boolean, userEntrytpSlOraclePrice: OraclePrice, collateralDeltaAmount: BN, sizeDeltaAmount: BN, side: Side, marketAccountPk: PublicKey, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, poolConfig: PoolConfig) => {
4661
4769
  pnlUsd: BN;
@@ -4667,6 +4775,10 @@ export declare class PerpetualsClient {
4667
4775
  profitUsd: BN;
4668
4776
  lossUsd: BN;
4669
4777
  };
4778
+ getPnlContractHelper: (positionAccount: PositionAccount, targetTokenPrice: OraclePrice, targetTokenEmaPrice: OraclePrice, targetCustodyAccount: CustodyAccount, collateralPrice: OraclePrice, collateralEmaPrice: OraclePrice, collateralCustodyAccount: CustodyAccount, currentTimestamp: BN, delay: BN, poolConfig: PoolConfig) => {
4779
+ profitUsd: BN;
4780
+ lossUsd: BN;
4781
+ };
4670
4782
  getSwapAmountAndFeesSync: (amountIn: BN, amountOut: BN, poolAccount: PoolAccount, inputTokenPrice: OraclePrice, inputTokenEmaPrice: OraclePrice, inputTokenCustodyAccount: CustodyAccount, outputTokenPrice: OraclePrice, outputTokenEmaPrice: OraclePrice, outputTokenCustodyAccount: CustodyAccount, poolAumUsdMax: BN, poolConfig: PoolConfig) => {
4671
4783
  minAmountOut: BN;
4672
4784
  minAmountIn: BN;
@@ -4677,8 +4789,9 @@ export declare class PerpetualsClient {
4677
4789
  poolAmountUsd: BN;
4678
4790
  poolEquityUsd: BN;
4679
4791
  };
4680
- getNftFinalDiscount: (perpetualsAccount: PerpetualsAccount, nftTradingAccount: Trading, currentTime: BN) => {
4681
- discountBn: BN;
4792
+ getAssetsUnderManagementUsdContractHelper: (poolAccount: PoolAccount, tokenPrices: OraclePrice[], tokenEmaPrices: OraclePrice[], custodies: CustodyAccount[], markets: MarketAccount[], aumCalcMode: "includePnl" | "excludePnl", currentTime: BN, poolConfig: PoolConfig) => {
4793
+ poolAmountUsd: BN;
4794
+ poolEquityUsd: BN;
4682
4795
  };
4683
4796
  getFeeDiscount: (perpetualsAccount: PerpetualsAccount, tokenStakeAccount: TokenStake, currentTime: BN) => {
4684
4797
  discountBn: BN;
@@ -4688,12 +4801,14 @@ export declare class PerpetualsClient {
4688
4801
  getStakedLpTokenPrice: (poolKey: PublicKey, POOL_CONFIG: PoolConfig) => Promise<string>;
4689
4802
  getAssetsUnderManagement: (poolKey: PublicKey, POOL_CONFIG: PoolConfig) => Promise<string>;
4690
4803
  getAddLiquidityAmountAndFeeView: (amount: BN, poolKey: PublicKey, depositCustodyKey: PublicKey, POOL_CONFIG: PoolConfig, userPublicKey?: PublicKey | undefined, enableBackupOracle?: boolean) => Promise<{
4691
- amount: BN;
4692
- fee: BN;
4804
+ amount: BN | undefined;
4805
+ fee: BN | undefined;
4806
+ error?: string;
4693
4807
  }>;
4694
4808
  getRemoveLiquidityAmountAndFeeView: (amount: BN, poolKey: PublicKey, removeTokenCustodyKey: PublicKey, POOL_CONFIG: PoolConfig, userPublicKey?: PublicKey | undefined, enableBackupOracle?: boolean) => Promise<{
4695
4809
  amount: BN;
4696
4810
  fee: BN;
4811
+ error?: string;
4697
4812
  }>;
4698
4813
  getCompoundingLPTokenPrice: (poolKey: PublicKey, POOL_CONFIG: PoolConfig) => Promise<string>;
4699
4814
  getAddCompoundingLiquidityAmountAndFeeView: (amount: BN, poolKey: PublicKey, depositCustodyKey: PublicKey, POOL_CONFIG: PoolConfig, userPublicKey?: PublicKey | undefined, enableBackupOracle?: boolean) => Promise<{
@@ -4708,19 +4823,19 @@ export declare class PerpetualsClient {
4708
4823
  getLiquidationStateView: (positionAccount: PublicKey, poolName: string, tokenMint: PublicKey, collateralMint: PublicKey, poolConfig: PoolConfig) => Promise<any>;
4709
4824
  getCompoundingTokenDataView: (poolConfig: PoolConfig) => Promise<any>;
4710
4825
  getLpTokenPriceView: (poolConfig: PoolConfig) => Promise<any>;
4711
- openPosition: (targetSymbol: string, collateralSymbol: string, priceWithSlippage: ContractOraclePrice, collateralWithfee: BN, size: BN, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey, skipBalanceChecks?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4826
+ openPosition: (targetSymbol: string, collateralSymbol: string, priceWithSlippage: ContractOraclePrice, collateralWithfee: BN, size: BN, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, skipBalanceChecks?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4712
4827
  instructions: TransactionInstruction[];
4713
4828
  additionalSigners: Signer[];
4714
4829
  }>;
4715
- closePosition: (marketSymbol: string, collateralSymbol: string, priceWithSlippage: ContractOraclePrice, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey, createUserATA?: boolean, closeUsersWSOLATA?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4830
+ closePosition: (marketSymbol: string, collateralSymbol: string, priceWithSlippage: ContractOraclePrice, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, createUserATA?: boolean, closeUsersWSOLATA?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4716
4831
  instructions: TransactionInstruction[];
4717
4832
  additionalSigners: Signer[];
4718
4833
  }>;
4719
- swapAndOpen: (targetTokenSymbol: string, collateralTokenSymbol: string, userInputTokenSymbol: string, amountIn: BN, priceWithSlippage: ContractOraclePrice, sizeAmount: BN, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey, skipBalanceChecks?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4834
+ swapAndOpen: (targetTokenSymbol: string, collateralTokenSymbol: string, userInputTokenSymbol: string, amountIn: BN, priceWithSlippage: ContractOraclePrice, sizeAmount: BN, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, skipBalanceChecks?: boolean, ephemeralSignerPubkey?: any) => Promise<{
4720
4835
  instructions: TransactionInstruction[];
4721
4836
  additionalSigners: Signer[];
4722
4837
  }>;
4723
- closeAndSwap: (targetTokenSymbol: string, userOutputTokenSymbol: string, collateralTokenSymbol: string, minSwapAmountOut: BN, priceWithSlippage: ContractOraclePrice, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey, ephemeralSignerPubkey?: any) => Promise<{
4838
+ closeAndSwap: (targetTokenSymbol: string, userOutputTokenSymbol: string, collateralTokenSymbol: string, priceWithSlippage: ContractOraclePrice, side: Side, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, ephemeralSignerPubkey?: any) => Promise<{
4724
4839
  instructions: TransactionInstruction[];
4725
4840
  additionalSigners: Signer[];
4726
4841
  }>;
@@ -4740,11 +4855,11 @@ export declare class PerpetualsClient {
4740
4855
  instructions: TransactionInstruction[];
4741
4856
  additionalSigners: Signer[];
4742
4857
  }>;
4743
- increaseSize: (targetSymbol: string, collateralSymbol: string, positionPubKey: PublicKey, side: Side, poolConfig: PoolConfig, priceWithSlippage: ContractOraclePrice, sizeDelta: BN, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4858
+ increaseSize: (targetSymbol: string, collateralSymbol: string, positionPubKey: PublicKey, side: Side, poolConfig: PoolConfig, priceWithSlippage: ContractOraclePrice, sizeDelta: BN, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4744
4859
  instructions: TransactionInstruction[];
4745
4860
  additionalSigners: Signer[];
4746
4861
  }>;
4747
- decreaseSize: (targetSymbol: string, collateralSymbol: string, side: Side, positionPubKey: PublicKey, poolConfig: PoolConfig, priceWithSlippage: ContractOraclePrice, sizeDelta: BN, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4862
+ decreaseSize: (targetSymbol: string, collateralSymbol: string, side: Side, positionPubKey: PublicKey, poolConfig: PoolConfig, priceWithSlippage: ContractOraclePrice, sizeDelta: BN, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4748
4863
  instructions: TransactionInstruction[];
4749
4864
  additionalSigners: Signer[];
4750
4865
  }>;
@@ -4764,14 +4879,6 @@ export declare class PerpetualsClient {
4764
4879
  instructions: TransactionInstruction[];
4765
4880
  additionalSigners: Signer[];
4766
4881
  }>;
4767
- updateNftAccount: (nftMint: PublicKey, updateReferer: boolean, updateBooster: boolean, flpStakeAccounts: PublicKey[]) => Promise<{
4768
- instructions: TransactionInstruction[];
4769
- additionalSigners: Signer[];
4770
- }>;
4771
- levelUp: (poolConfig: PoolConfig, nftMint: PublicKey, authorizationRulesAccount: PublicKey) => Promise<{
4772
- instructions: TransactionInstruction[];
4773
- additionalSigners: Signer[];
4774
- }>;
4775
4882
  depositStake: (owner: PublicKey, feePayer: PublicKey, depositAmount: BN, poolConfig: PoolConfig) => Promise<{
4776
4883
  instructions: TransactionInstruction[];
4777
4884
  additionalSigners: Signer[];
@@ -4815,14 +4922,6 @@ export declare class PerpetualsClient {
4815
4922
  instructions: TransactionInstruction[];
4816
4923
  additionalSigners: Signer[];
4817
4924
  }>;
4818
- burnAndClaim: (owner: PublicKey, nftMint: PublicKey, poolConfig: PoolConfig, createAta: boolean) => Promise<{
4819
- instructions: TransactionInstruction[];
4820
- additionalSigners: Signer[];
4821
- }>;
4822
- burnAndStake: (owner: PublicKey, feePayer: PublicKey, nftMint: PublicKey, poolConfig: PoolConfig) => Promise<{
4823
- instructions: TransactionInstruction[];
4824
- additionalSigners: Signer[];
4825
- }>;
4826
4925
  depositTokenStake: (owner: PublicKey, feePayer: PublicKey, depositAmount: BN, poolConfig: PoolConfig) => Promise<{
4827
4926
  instructions: TransactionInstruction[];
4828
4927
  additionalSigners: Signer[];
@@ -4851,19 +4950,11 @@ export declare class PerpetualsClient {
4851
4950
  instructions: TransactionInstruction[];
4852
4951
  additionalSigners: Signer[];
4853
4952
  }>;
4854
- initRewardVault: (nftCount: BN, rewardSymbol: string, collectionMint: PublicKey, poolConfig: PoolConfig) => Promise<{
4855
- instructions: TransactionInstruction[];
4856
- additionalSigners: Signer[];
4857
- }>;
4858
- distributeReward: (rewardAmount: BN, rewardSymbol: string, poolConfig: PoolConfig) => Promise<{
4953
+ collectRebate: (owner: PublicKey, rebateSymbol: string, poolConfig: PoolConfig, createUserATA?: boolean) => Promise<{
4859
4954
  instructions: TransactionInstruction[];
4860
4955
  additionalSigners: Signer[];
4861
4956
  }>;
4862
- collectNftReward: (rewardSymbol: string, poolConfig: PoolConfig, nftMint: PublicKey, createUserATA?: boolean) => Promise<{
4863
- instructions: TransactionInstruction[];
4864
- additionalSigners: Signer[];
4865
- }>;
4866
- collectAndDistributeFee: (rewardSymbol: string, poolConfig: PoolConfig, createUserATA?: boolean, nftTradingAccount?: PublicKey) => Promise<{
4957
+ settleRebates: (owner: PublicKey, rebateSymbol: string, rewardSymbol: string, poolConfig: PoolConfig, createUserATA?: boolean) => Promise<{
4867
4958
  instructions: TransactionInstruction[];
4868
4959
  additionalSigners: Signer[];
4869
4960
  }>;
@@ -4875,11 +4966,11 @@ export declare class PerpetualsClient {
4875
4966
  instructions: TransactionInstruction[];
4876
4967
  additionalSigners: Signer[];
4877
4968
  }>;
4878
- executeLimitOrder: (userPubkey: PublicKey, targetSymbol: string, collateralSymbol: string, side: Side, orderId: number, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4969
+ executeLimitOrder: (userPubkey: PublicKey, targetSymbol: string, collateralSymbol: string, side: Side, orderId: number, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4879
4970
  instructions: TransactionInstruction[];
4880
4971
  additionalSigners: Signer[];
4881
4972
  }>;
4882
- executeLimitWithSwap: (userPubkey: PublicKey, targetSymbol: string, collateralSymbol: string, reserveSymbol: string, side: Side, orderId: number, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4973
+ executeLimitWithSwap: (userPubkey: PublicKey, targetSymbol: string, collateralSymbol: string, reserveSymbol: string, side: Side, orderId: number, poolConfig: PoolConfig, privilege: Privilege, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4883
4974
  instructions: TransactionInstruction[];
4884
4975
  additionalSigners: Signer[];
4885
4976
  }>;
@@ -4899,11 +4990,11 @@ export declare class PerpetualsClient {
4899
4990
  instructions: TransactionInstruction[];
4900
4991
  additionalSigners: Signer[];
4901
4992
  }>;
4902
- executeTriggerWithSwap: (owner: PublicKey, targetSymbol: string, collateralSymbol: string, receivingSymbol: string, side: Side, orderId: number, isStopLoss: boolean, privilege: Privilege, poolConfig: PoolConfig, createUserATA?: boolean, ephemeralSignerPubkey?: any, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4993
+ executeTriggerWithSwap: (owner: PublicKey, targetSymbol: string, collateralSymbol: string, receivingSymbol: string, side: Side, orderId: number, isStopLoss: boolean, privilege: Privilege, poolConfig: PoolConfig, createUserATA?: boolean, ephemeralSignerPubkey?: any, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4903
4994
  instructions: TransactionInstruction[];
4904
4995
  additionalSigners: Signer[];
4905
4996
  }>;
4906
- executeTriggerOrder: (owner: PublicKey, targetSymbol: string, collateralSymbol: string, side: Side, orderId: number, isStopLoss: boolean, privilege: Privilege, poolConfig: PoolConfig, createUserATA?: boolean, ephemeralSignerPubkey?: any, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey, rebateTokenAccount?: PublicKey) => Promise<{
4997
+ executeTriggerOrder: (owner: PublicKey, targetSymbol: string, collateralSymbol: string, side: Side, orderId: number, isStopLoss: boolean, privilege: Privilege, poolConfig: PoolConfig, createUserATA?: boolean, ephemeralSignerPubkey?: any, tokenStakeAccount?: PublicKey, userReferralAccount?: PublicKey) => Promise<{
4907
4998
  instructions: TransactionInstruction[];
4908
4999
  additionalSigners: Signer[];
4909
5000
  }>;
@@ -4948,11 +5039,11 @@ export declare class PerpetualsClient {
4948
5039
  instructions: TransactionInstruction[];
4949
5040
  additionalSigners: Signer[];
4950
5041
  }>;
4951
- setInternalOraclePrice: (tokenMint: PublicKey, price: BN, expo: number, conf: BN, ema: BN, publishTime: BN, poolConfig: PoolConfig) => Promise<{
5042
+ setInternalOraclePrice: (tokenMint: PublicKey, useCurrentTime: number, price: BN, expo: number, conf: BN, ema: BN, publishTime: BN, poolConfig: PoolConfig) => Promise<{
4952
5043
  instructions: TransactionInstruction[];
4953
5044
  additionalSigners: Signer[];
4954
5045
  }>;
4955
- setInternalOraclePriceBatch: (tokenMintList: PublicKey[], tokenInternalPrices: InternalPrice[], POOL_CONFIGS: PoolConfig[]) => Promise<{
5046
+ setInternalOraclePriceBatch: (useCurrentTime: number, tokenMintList: PublicKey[], tokenInternalPrices: InternalPrice[], POOL_CONFIGS: PoolConfig[]) => Promise<{
4956
5047
  instructions: TransactionInstruction[];
4957
5048
  additionalSigners: Signer[];
4958
5049
  }>;
@@ -4984,6 +5075,10 @@ export declare class PerpetualsClient {
4984
5075
  instructions: TransactionInstruction[];
4985
5076
  additionalSigners: Signer[];
4986
5077
  }>;
5078
+ withdrawUnclaimedTokens: (poolConfig: PoolConfig) => Promise<{
5079
+ instructions: TransactionInstruction[];
5080
+ additionalSigners: Signer[];
5081
+ }>;
4987
5082
  initRevenueTokenAccount: (feeShareBps: BN, rewardSymbol: string, poolConfig: PoolConfig) => Promise<{
4988
5083
  instructions: TransactionInstruction[];
4989
5084
  additionalSigners: Signer[];
@@ -5000,4 +5095,8 @@ export declare class PerpetualsClient {
5000
5095
  instructions: TransactionInstruction[];
5001
5096
  additionalSigners: Signer[];
5002
5097
  }>;
5098
+ resizeInternalOracle: (extOracle: PublicKey, tokenMint: PublicKey, intOracleAccount: PublicKey) => Promise<{
5099
+ instructions: TransactionInstruction[];
5100
+ additionalSigners: Signer[];
5101
+ }>;
5003
5102
  }