flash-sdk 11.11.4 → 11.11.7-alpha.0

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,5 +1,3 @@
1
- /// <reference types="bn.js" />
2
- /// <reference types="node" />
3
1
  import { Program, AnchorProvider, BN } from "@coral-xyz/anchor";
4
2
  import { PublicKey, TransactionInstruction, Commitment, Signer, AddressLookupTableAccount, VersionedTransaction } from "@solana/web3.js";
5
3
  import { PoolAccount } from "./PoolAccount";
@@ -7,7 +5,7 @@ import { PositionAccount } from "./PositionAccount";
7
5
  import { AddLiquidityAmountAndFee, InternalPrice, BorrowRateParams, ExitPriceAndFee, Fees, OracleParams, Permissions, PricingParams, RemoveCollateralData, RemoveLiquidityAmountAndFee, Side, TokenRatios, MinAndMaxPrice, FeesAction, ContractOraclePrice, Privilege, PerpetualsAccount, EntryPriceAndFeeV2, TokenPermissions, TokenStake, InternalEmaPrice, Whitelist } from "./types";
8
6
  import { OraclePrice } from "./OraclePrice";
9
7
  import { CustodyAccount } from "./CustodyAccount";
10
- import { Perpetuals } from "./idl/perpetuals";
8
+ import type { Perpetuals } from './idl/perpetuals';
11
9
  import { SendTransactionOpts } from "./utils/rpc";
12
10
  import { MarketConfig, PoolConfig, Token } from "./PoolConfig";
13
11
  import { MarketAccount } from "./MarketAccount";
@@ -78,52 +76,8 @@ export declare class PerpetualsClient {
78
76
  publicKey: PublicKey;
79
77
  bump: number;
80
78
  };
81
- adjustTokenRatios: (ratios: TokenRatios[]) => {
82
- target: BN;
83
- min: BN;
84
- max: BN;
85
- }[];
79
+ adjustTokenRatios: (ratios: TokenRatios[]) => TokenRatios[];
86
80
  getPerpetuals: () => Promise<{
87
- pool: PublicKey;
88
- mint: PublicKey;
89
- tokenAccount: PublicKey;
90
- decimals: number;
91
- isStable: boolean;
92
- depegAdjustment: boolean;
93
- isVirtual: boolean;
94
- distributeRewards: boolean;
95
- oracle: {
96
- intOracleAccount: PublicKey;
97
- extOracleAccount: PublicKey;
98
- oracleType: {
99
- none?: Record<string, never>;
100
- custom?: Record<string, never>;
101
- pyth?: Record<string, never>;
102
- };
103
- maxDivergenceBps: BN;
104
- maxConfBps: BN;
105
- maxPriceAgeSec: number;
106
- maxBackupAgeSec: number;
107
- };
108
- pricing: {
109
- tradeSpreadMin: BN;
110
- tradeSpreadMax: BN;
111
- swapSpread: BN;
112
- minInitLeverage: number;
113
- minInitDegenLeverage: number;
114
- maxInitLeverage: number;
115
- maxInitDegenLeverage: number;
116
- maxLeverage: number;
117
- maxDegenLeverage: number;
118
- minCollateralUsd: number;
119
- minDegenCollateralUsd: number;
120
- delaySeconds: BN;
121
- maxUtilization: number;
122
- degenPositionFactor: number;
123
- degenExposureFactor: number;
124
- maxPositionSizeUsd: BN;
125
- maxExposureUsd: BN;
126
- };
127
81
  permissions: {
128
82
  allowSwap: boolean;
129
83
  allowAddLiquidity: boolean;
@@ -138,153 +92,7 @@ export declare class PerpetualsClient {
138
92
  allowUngatedTrading: boolean;
139
93
  allowFeeDiscounts: boolean;
140
94
  allowReferralRebates: boolean;
141
- } | {
142
- allowOpenPosition: boolean;
143
- allowClosePosition: boolean;
144
- allowCollateralWithdrawal: boolean;
145
- allowSizeChange: boolean;
146
- };
147
- fees: {
148
- mode: {
149
- fixed?: Record<string, never>;
150
- linear?: Record<string, never>;
151
- };
152
- swapIn: {
153
- minFee: BN;
154
- targetFee: BN;
155
- maxFee: BN;
156
- };
157
- swapOut: {
158
- minFee: BN;
159
- targetFee: BN;
160
- maxFee: BN;
161
- };
162
- stableSwapIn: {
163
- minFee: BN;
164
- targetFee: BN;
165
- maxFee: BN;
166
- };
167
- stableSwapOut: {
168
- minFee: BN;
169
- targetFee: BN;
170
- maxFee: BN;
171
- };
172
- addLiquidity: {
173
- minFee: BN;
174
- targetFee: BN;
175
- maxFee: BN;
176
- };
177
- removeLiquidity: {
178
- minFee: BN;
179
- targetFee: BN;
180
- maxFee: BN;
181
- };
182
- openPosition: BN;
183
- closePosition: BN;
184
- volatility: BN;
185
- };
186
- borrowRate: {
187
- baseRate: BN;
188
- slope1: BN;
189
- slope2: BN;
190
- optimalUtilization: BN;
191
- };
192
- rewardThreshold: BN;
193
- assets: {
194
- collateral: BN;
195
- owned: BN;
196
- locked: BN;
197
- };
198
- feesStats: {
199
- accrued: BN;
200
- distributed: BN;
201
- paid: BN;
202
- rewardPerLpStaked: BN;
203
- protocolFee: BN;
204
- };
205
- borrowRateState: {
206
- currentRate: BN;
207
- cumulativeLockFee: BN;
208
- lastUpdate: BN;
209
- };
210
- bump: number;
211
- tokenAccountBump: number;
212
- token22: boolean;
213
- uid: number;
214
- reservedAmount: BN;
215
- minReserveUsd: BN;
216
- limitPriceBufferBps: BN;
217
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
218
- owner: PublicKey;
219
- stakeStats: {
220
- pendingActivation: BN;
221
- activeAmount: BN;
222
- pendingDeactivation: BN;
223
- deactivatedAmount: BN;
224
- };
225
- rewardSnapshot: BN;
226
- unclaimedRewards: BN;
227
- feeShareBps: BN;
228
- isInitialized: number | boolean;
229
- targetCustody: PublicKey;
230
- collateralCustody: PublicKey;
231
- side: {
232
- none?: Record<string, never>;
233
- long?: Record<string, never>;
234
- short?: Record<string, never>;
235
- };
236
- correlation: boolean;
237
- maxPayoffBps: BN;
238
- degenExposureUsd: BN;
239
- collectivePosition: {
240
- openPositions: BN;
241
- updateTime: BN;
242
- averageEntryPrice: {
243
- price: BN;
244
- exponent: number;
245
- };
246
- sizeAmount: BN;
247
- sizeUsd: BN;
248
- lockedAmount: BN;
249
- lockedUsd: BN;
250
- collateralAmount: BN;
251
- collateralLiabilityUsd: BN;
252
- unsettledFeeUsd: BN;
253
- cumulativeLockFeeSnapshot: BN;
254
- sizeDecimals: number;
255
- lockedDecimals: number;
256
- collateralDecimals: number;
257
95
  };
258
- targetCustodyUid: number;
259
- collateralCustodyUid: number;
260
- padding2: number[] | BN[];
261
- numSigners: number;
262
- numSigned: number;
263
- minSignatures: number;
264
- instructionAccountsLen: number;
265
- instructionDataLen: number;
266
- instructionHash: BN;
267
- signers: PublicKey[];
268
- signed: number[];
269
- price: BN;
270
- expo: number;
271
- conf: BN;
272
- ema: BN;
273
- publishTime: BN;
274
- extOracleAccount: PublicKey;
275
- market: PublicKey;
276
- limitOrders: unknown;
277
- takeProfitOrders: unknown;
278
- stopLossOrders: unknown;
279
- isInitialised: boolean;
280
- openOrders: number;
281
- openSl: number;
282
- openTp: number;
283
- inactiveSl: number;
284
- inactiveTp: number;
285
- activeOrders: number;
286
- referenceTimestamp: BN;
287
- executionCount: BN;
288
96
  pools: PublicKey[];
289
97
  collections: PublicKey[];
290
98
  voltageMultiplier: {
@@ -301,7 +109,26 @@ export declare class PerpetualsClient {
301
109
  tradeLimit: number;
302
110
  triggerOrderLimit: number;
303
111
  rebateLimitUsd: number;
112
+ }>;
113
+ getPoolKey: (name: string) => PublicKey;
114
+ getPool: (name: string) => Promise<{
304
115
  name: string;
116
+ permissions: {
117
+ allowSwap: boolean;
118
+ allowAddLiquidity: boolean;
119
+ allowRemoveLiquidity: boolean;
120
+ allowOpenPosition: boolean;
121
+ allowClosePosition: boolean;
122
+ allowCollateralWithdrawal: boolean;
123
+ allowSizeChange: boolean;
124
+ allowLiquidation: boolean;
125
+ allowLpStaking: boolean;
126
+ allowFeeDistribution: boolean;
127
+ allowUngatedTrading: boolean;
128
+ allowFeeDiscounts: boolean;
129
+ allowReferralRebates: boolean;
130
+ };
131
+ inceptionTime: BN;
305
132
  lpMint: PublicKey;
306
133
  oracleAuthority: PublicKey;
307
134
  stakedLpVault: PublicKey;
@@ -314,7 +141,7 @@ export declare class PerpetualsClient {
314
141
  }[];
315
142
  markets: PublicKey[];
316
143
  maxAumUsd: BN;
317
- buffer: BN | number[] | number[];
144
+ buffer: BN;
318
145
  rawAumUsd: BN;
319
146
  equityUsd: BN;
320
147
  totalStaked: {
@@ -324,10 +151,12 @@ export declare class PerpetualsClient {
324
151
  deactivatedAmount: BN;
325
152
  };
326
153
  stakingFeeShareBps: BN;
154
+ bump: number;
327
155
  lpMintBump: number;
328
156
  stakedLpVaultBump: number;
329
157
  vpVolumeFactor: number;
330
158
  uniqueCustodyCount: number;
159
+ padding: number[];
331
160
  stakingFeeBoostBps: BN[];
332
161
  compoundingMint: PublicKey;
333
162
  compoundingLpVault: PublicKey;
@@ -348,139 +177,9 @@ export declare class PerpetualsClient {
348
177
  feesObligationUsd: BN;
349
178
  rebateObligationUsd: BN;
350
179
  thresholdUsd: BN;
351
- delegate: PublicKey;
352
- openTime: BN;
353
- updateTime: BN;
354
- entryPrice: {
355
- price: BN;
356
- exponent: number;
357
- };
358
- sizeAmount: BN;
359
- sizeUsd: BN;
360
- lockedAmount: BN;
361
- lockedUsd: BN;
362
- priceImpactUsd: BN;
363
- collateralUsd: BN;
364
- unsettledValueUsd: BN;
365
- unsettledFeesUsd: BN;
366
- cumulativeLockFeeSnapshot: BN;
367
- degenSizeUsd: BN;
368
- referencePrice: {
369
- price: BN;
370
- exponent: number;
371
- };
372
- priceImpactSet: number;
373
- sizeDecimals: number;
374
- lockedDecimals: number;
375
- collateralDecimals: number;
376
- key: PublicKey;
377
- feeAmount: BN;
378
- allowPayout: boolean;
379
- availableUsd: BN;
380
- availableAmount: BN;
381
- refererTokenStakeAccount: PublicKey;
382
- refererBoosterAccount: PublicKey;
383
- level: number;
384
- withdrawRequestCount: number;
385
- withdrawRequest: unknown;
386
- activeStakeAmount: BN;
387
- updateTimestamp: BN;
388
- tradeTimestamp: BN;
389
- tradeCounter: number;
390
- lastRewardEpochCount: number;
391
- rewardTokens: BN;
392
- unclaimedRevenueAmount: BN;
393
- revenueSnapshot: BN;
394
- claimableRebateUsd: BN;
395
- tokenMint: PublicKey;
396
- tokenVaultTokenAccount: PublicKey;
397
- tokenPermissions: {
398
- allowDeposits: boolean;
399
- allowWithdrawal: boolean;
400
- allowRewardWithdrawal: boolean;
401
- };
402
- withdrawTimeLimit: BN;
403
- withdrawInstantFee: BN;
404
- withdrawInstantFeeEarned: BN;
405
- stakeLevel: BN[];
406
- tokensStaked: {
407
- pendingActivation: BN;
408
- activeAmount: BN;
409
- pendingDeactivation: BN;
410
- deactivatedAmount: BN;
411
- };
412
- rewardTokensToDistribute: BN;
413
- rewardTokensPaid: BN;
414
- tokensToDistribute: BN;
415
- tokensDistributed: BN;
416
- rewardTokensDistributed: BN;
417
- revenueTokenAccountBump: number;
418
- revenuePerFafStaked: BN;
419
- revenueAccrued: BN;
420
- revenueDistributed: BN;
421
- revenuePaid: BN;
422
- nftMint: PublicKey;
423
- voltagePoints: BN;
424
- stats: {
425
- volumeUsd: BN;
426
- lpRewardsUsd: BN;
427
- referralRebateUsd: BN;
428
- };
429
- snapshot: {
430
- volumeUsd: BN;
431
- lpRewardsUsd: BN;
432
- referralRebateUsd: BN;
433
- };
434
- timestamp: BN;
435
- counter: BN;
436
- tokenStakeAccount: PublicKey;
437
- burnt: boolean;
438
- isSwapFeeExempt: boolean;
439
- isDepositFeeExempt: boolean;
440
- isWithdrawalFeeExempt: boolean;
441
180
  }>;
442
- getPoolKey: (name: string) => PublicKey;
443
- getPool: (name: string) => Promise<{
444
- pool: PublicKey;
445
- mint: PublicKey;
446
- tokenAccount: PublicKey;
447
- decimals: number;
448
- isStable: boolean;
449
- depegAdjustment: boolean;
450
- isVirtual: boolean;
451
- distributeRewards: boolean;
452
- oracle: {
453
- intOracleAccount: PublicKey;
454
- extOracleAccount: PublicKey;
455
- oracleType: {
456
- none?: Record<string, never>;
457
- custom?: Record<string, never>;
458
- pyth?: Record<string, never>;
459
- };
460
- maxDivergenceBps: BN;
461
- maxConfBps: BN;
462
- maxPriceAgeSec: number;
463
- maxBackupAgeSec: number;
464
- };
465
- pricing: {
466
- tradeSpreadMin: BN;
467
- tradeSpreadMax: BN;
468
- swapSpread: BN;
469
- minInitLeverage: number;
470
- minInitDegenLeverage: number;
471
- maxInitLeverage: number;
472
- maxInitDegenLeverage: number;
473
- maxLeverage: number;
474
- maxDegenLeverage: number;
475
- minCollateralUsd: number;
476
- minDegenCollateralUsd: number;
477
- delaySeconds: BN;
478
- maxUtilization: number;
479
- degenPositionFactor: number;
480
- degenExposureFactor: number;
481
- maxPositionSizeUsd: BN;
482
- maxExposureUsd: BN;
483
- };
181
+ getPools: () => Promise<{
182
+ name: string;
484
183
  permissions: {
485
184
  allowSwap: boolean;
486
185
  allowAddLiquidity: boolean;
@@ -495,170 +194,8 @@ export declare class PerpetualsClient {
495
194
  allowUngatedTrading: boolean;
496
195
  allowFeeDiscounts: boolean;
497
196
  allowReferralRebates: boolean;
498
- } | {
499
- allowOpenPosition: boolean;
500
- allowClosePosition: boolean;
501
- allowCollateralWithdrawal: boolean;
502
- allowSizeChange: boolean;
503
- };
504
- fees: {
505
- mode: {
506
- fixed?: Record<string, never>;
507
- linear?: Record<string, never>;
508
- };
509
- swapIn: {
510
- minFee: BN;
511
- targetFee: BN;
512
- maxFee: BN;
513
- };
514
- swapOut: {
515
- minFee: BN;
516
- targetFee: BN;
517
- maxFee: BN;
518
- };
519
- stableSwapIn: {
520
- minFee: BN;
521
- targetFee: BN;
522
- maxFee: BN;
523
- };
524
- stableSwapOut: {
525
- minFee: BN;
526
- targetFee: BN;
527
- maxFee: BN;
528
- };
529
- addLiquidity: {
530
- minFee: BN;
531
- targetFee: BN;
532
- maxFee: BN;
533
- };
534
- removeLiquidity: {
535
- minFee: BN;
536
- targetFee: BN;
537
- maxFee: BN;
538
- };
539
- openPosition: BN;
540
- closePosition: BN;
541
- volatility: BN;
542
- };
543
- borrowRate: {
544
- baseRate: BN;
545
- slope1: BN;
546
- slope2: BN;
547
- optimalUtilization: BN;
548
- };
549
- rewardThreshold: BN;
550
- assets: {
551
- collateral: BN;
552
- owned: BN;
553
- locked: BN;
554
- };
555
- feesStats: {
556
- accrued: BN;
557
- distributed: BN;
558
- paid: BN;
559
- rewardPerLpStaked: BN;
560
- protocolFee: BN;
561
- };
562
- borrowRateState: {
563
- currentRate: BN;
564
- cumulativeLockFee: BN;
565
- lastUpdate: BN;
566
- };
567
- bump: number;
568
- tokenAccountBump: number;
569
- token22: boolean;
570
- uid: number;
571
- reservedAmount: BN;
572
- minReserveUsd: BN;
573
- limitPriceBufferBps: BN;
574
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
575
- owner: PublicKey;
576
- stakeStats: {
577
- pendingActivation: BN;
578
- activeAmount: BN;
579
- pendingDeactivation: BN;
580
- deactivatedAmount: BN;
581
- };
582
- rewardSnapshot: BN;
583
- unclaimedRewards: BN;
584
- feeShareBps: BN;
585
- isInitialized: number | boolean;
586
- targetCustody: PublicKey;
587
- collateralCustody: PublicKey;
588
- side: {
589
- none?: Record<string, never>;
590
- long?: Record<string, never>;
591
- short?: Record<string, never>;
592
197
  };
593
- correlation: boolean;
594
- maxPayoffBps: BN;
595
- degenExposureUsd: BN;
596
- collectivePosition: {
597
- openPositions: BN;
598
- updateTime: BN;
599
- averageEntryPrice: {
600
- price: BN;
601
- exponent: number;
602
- };
603
- sizeAmount: BN;
604
- sizeUsd: BN;
605
- lockedAmount: BN;
606
- lockedUsd: BN;
607
- collateralAmount: BN;
608
- collateralLiabilityUsd: BN;
609
- unsettledFeeUsd: BN;
610
- cumulativeLockFeeSnapshot: BN;
611
- sizeDecimals: number;
612
- lockedDecimals: number;
613
- collateralDecimals: number;
614
- };
615
- targetCustodyUid: number;
616
- collateralCustodyUid: number;
617
- padding2: number[] | BN[];
618
- numSigners: number;
619
- numSigned: number;
620
- minSignatures: number;
621
- instructionAccountsLen: number;
622
- instructionDataLen: number;
623
- instructionHash: BN;
624
- signers: PublicKey[];
625
- signed: number[];
626
- price: BN;
627
- expo: number;
628
- conf: BN;
629
- ema: BN;
630
- publishTime: BN;
631
- extOracleAccount: PublicKey;
632
- market: PublicKey;
633
- limitOrders: unknown;
634
- takeProfitOrders: unknown;
635
- stopLossOrders: unknown;
636
- isInitialised: boolean;
637
- openOrders: number;
638
- openSl: number;
639
- openTp: number;
640
- inactiveSl: number;
641
- inactiveTp: number;
642
- activeOrders: number;
643
- referenceTimestamp: BN;
644
- executionCount: BN;
645
- pools: PublicKey[];
646
- collections: PublicKey[];
647
- voltageMultiplier: {
648
- volume: BN;
649
- rewards: BN;
650
- rebates: BN;
651
- };
652
- tradingDiscount: BN[];
653
- referralRebate: BN[];
654
- defaultRebate: BN;
655
198
  inceptionTime: BN;
656
- transferAuthorityBump: number;
657
- perpetualsBump: number;
658
- tradeLimit: number;
659
- triggerOrderLimit: number;
660
- rebateLimitUsd: number;
661
- name: string;
662
199
  lpMint: PublicKey;
663
200
  oracleAuthority: PublicKey;
664
201
  stakedLpVault: PublicKey;
@@ -671,7 +208,7 @@ export declare class PerpetualsClient {
671
208
  }[];
672
209
  markets: PublicKey[];
673
210
  maxAumUsd: BN;
674
- buffer: BN | number[] | number[];
211
+ buffer: BN;
675
212
  rawAumUsd: BN;
676
213
  equityUsd: BN;
677
214
  totalStaked: {
@@ -681,10 +218,12 @@ export declare class PerpetualsClient {
681
218
  deactivatedAmount: BN;
682
219
  };
683
220
  stakingFeeShareBps: BN;
221
+ bump: number;
684
222
  lpMintBump: number;
685
223
  stakedLpVaultBump: number;
686
224
  vpVolumeFactor: number;
687
225
  uniqueCustodyCount: number;
226
+ padding: number[];
688
227
  stakingFeeBoostBps: BN[];
689
228
  compoundingMint: PublicKey;
690
229
  compoundingLpVault: PublicKey;
@@ -705,6 +244,17 @@ export declare class PerpetualsClient {
705
244
  feesObligationUsd: BN;
706
245
  rebateObligationUsd: BN;
707
246
  thresholdUsd: BN;
247
+ }[]>;
248
+ getPoolLpTokenKey: (name: string) => PublicKey;
249
+ getPoolCompoundingTokenKey: (name: string) => PublicKey;
250
+ getCustodyKey: (poolName: string, tokenMint: PublicKey) => PublicKey;
251
+ getCustodyTokenAccountKey: (poolName: string, tokenMint: PublicKey) => PublicKey;
252
+ getMarketPk(targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
253
+ getPositionKey(owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
254
+ getOrderAccountKey(owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
255
+ getPosition: (postionKey: PublicKey) => Promise<{
256
+ owner: PublicKey;
257
+ market: PublicKey;
708
258
  delegate: PublicKey;
709
259
  openTime: BN;
710
260
  updateTime: BN;
@@ -726,269 +276,52 @@ export declare class PerpetualsClient {
726
276
  price: BN;
727
277
  exponent: number;
728
278
  };
279
+ buffer: number[];
729
280
  priceImpactSet: number;
730
281
  sizeDecimals: number;
731
282
  lockedDecimals: number;
732
283
  collateralDecimals: number;
733
- key: PublicKey;
734
- feeAmount: BN;
735
- allowPayout: boolean;
736
- availableUsd: BN;
737
- availableAmount: BN;
738
- refererTokenStakeAccount: PublicKey;
739
- refererBoosterAccount: PublicKey;
740
- level: number;
741
- withdrawRequestCount: number;
742
- withdrawRequest: unknown;
743
- activeStakeAmount: BN;
744
- updateTimestamp: BN;
745
- tradeTimestamp: BN;
746
- tradeCounter: number;
747
- lastRewardEpochCount: number;
748
- rewardTokens: BN;
749
- unclaimedRevenueAmount: BN;
750
- revenueSnapshot: BN;
751
- claimableRebateUsd: BN;
752
- tokenMint: PublicKey;
753
- tokenVaultTokenAccount: PublicKey;
754
- tokenPermissions: {
755
- allowDeposits: boolean;
756
- allowWithdrawal: boolean;
757
- allowRewardWithdrawal: boolean;
758
- };
759
- withdrawTimeLimit: BN;
760
- withdrawInstantFee: BN;
761
- withdrawInstantFeeEarned: BN;
762
- stakeLevel: BN[];
763
- tokensStaked: {
764
- pendingActivation: BN;
765
- activeAmount: BN;
766
- pendingDeactivation: BN;
767
- deactivatedAmount: BN;
768
- };
769
- rewardTokensToDistribute: BN;
770
- rewardTokensPaid: BN;
771
- tokensToDistribute: BN;
772
- tokensDistributed: BN;
773
- rewardTokensDistributed: BN;
774
- revenueTokenAccountBump: number;
775
- revenuePerFafStaked: BN;
776
- revenueAccrued: BN;
777
- revenueDistributed: BN;
778
- revenuePaid: BN;
779
- nftMint: PublicKey;
780
- voltagePoints: BN;
781
- stats: {
782
- volumeUsd: BN;
783
- lpRewardsUsd: BN;
784
- referralRebateUsd: BN;
785
- };
786
- snapshot: {
787
- volumeUsd: BN;
788
- lpRewardsUsd: BN;
789
- referralRebateUsd: BN;
790
- };
791
- timestamp: BN;
792
- counter: BN;
793
- tokenStakeAccount: PublicKey;
794
- burnt: boolean;
795
- isSwapFeeExempt: boolean;
796
- isDepositFeeExempt: boolean;
797
- isWithdrawalFeeExempt: boolean;
284
+ bump: number;
285
+ padding: number[];
798
286
  }>;
799
- getPools: () => Promise<{
800
- pool: PublicKey;
801
- mint: PublicKey;
802
- tokenAccount: PublicKey;
803
- decimals: number;
804
- isStable: boolean;
805
- depegAdjustment: boolean;
806
- isVirtual: boolean;
807
- distributeRewards: boolean;
808
- oracle: {
809
- intOracleAccount: PublicKey;
810
- extOracleAccount: PublicKey;
811
- oracleType: {
812
- none?: Record<string, never>;
813
- custom?: Record<string, never>;
814
- pyth?: Record<string, never>;
815
- };
816
- maxDivergenceBps: BN;
817
- maxConfBps: BN;
818
- maxPriceAgeSec: number;
819
- maxBackupAgeSec: number;
820
- };
821
- pricing: {
822
- tradeSpreadMin: BN;
823
- tradeSpreadMax: BN;
824
- swapSpread: BN;
825
- minInitLeverage: number;
826
- minInitDegenLeverage: number;
827
- maxInitLeverage: number;
828
- maxInitDegenLeverage: number;
829
- maxLeverage: number;
830
- maxDegenLeverage: number;
831
- minCollateralUsd: number;
832
- minDegenCollateralUsd: number;
833
- delaySeconds: BN;
834
- maxUtilization: number;
835
- degenPositionFactor: number;
836
- degenExposureFactor: number;
837
- maxPositionSizeUsd: BN;
838
- maxExposureUsd: BN;
839
- };
840
- permissions: {
841
- allowSwap: boolean;
842
- allowAddLiquidity: boolean;
843
- allowRemoveLiquidity: boolean;
844
- allowOpenPosition: boolean;
845
- allowClosePosition: boolean;
846
- allowCollateralWithdrawal: boolean;
847
- allowSizeChange: boolean;
848
- allowLiquidation: boolean;
849
- allowLpStaking: boolean;
850
- allowFeeDistribution: boolean;
851
- allowUngatedTrading: boolean;
852
- allowFeeDiscounts: boolean;
853
- allowReferralRebates: boolean;
854
- } | {
855
- allowOpenPosition: boolean;
856
- allowClosePosition: boolean;
857
- allowCollateralWithdrawal: boolean;
858
- allowSizeChange: boolean;
859
- };
860
- fees: {
861
- mode: {
862
- fixed?: Record<string, never>;
863
- linear?: Record<string, never>;
864
- };
865
- swapIn: {
866
- minFee: BN;
867
- targetFee: BN;
868
- maxFee: BN;
869
- };
870
- swapOut: {
871
- minFee: BN;
872
- targetFee: BN;
873
- maxFee: BN;
874
- };
875
- stableSwapIn: {
876
- minFee: BN;
877
- targetFee: BN;
878
- maxFee: BN;
287
+ getPositionData: (position: PositionAccount, poolConfig: PoolConfig) => Promise<any>;
288
+ getOrderAccount: (orderAccountKey: PublicKey) => Promise<{
289
+ owner: PublicKey;
290
+ market: PublicKey;
291
+ limitOrders: {
292
+ limitPrice: {
293
+ price: BN;
294
+ exponent: number;
879
295
  };
880
- stableSwapOut: {
881
- minFee: BN;
882
- targetFee: BN;
883
- maxFee: BN;
296
+ reserveAmount: BN;
297
+ reserveCustodyUid: number;
298
+ receiveCustodyUid: number;
299
+ sizeAmount: BN;
300
+ stopLossPrice: {
301
+ price: BN;
302
+ exponent: number;
884
303
  };
885
- addLiquidity: {
886
- minFee: BN;
887
- targetFee: BN;
888
- maxFee: BN;
304
+ takeProfitPrice: {
305
+ price: BN;
306
+ exponent: number;
889
307
  };
890
- removeLiquidity: {
891
- minFee: BN;
892
- targetFee: BN;
893
- maxFee: BN;
308
+ }[];
309
+ takeProfitOrders: {
310
+ triggerPrice: {
311
+ price: BN;
312
+ exponent: number;
894
313
  };
895
- openPosition: BN;
896
- closePosition: BN;
897
- volatility: BN;
898
- };
899
- borrowRate: {
900
- baseRate: BN;
901
- slope1: BN;
902
- slope2: BN;
903
- optimalUtilization: BN;
904
- };
905
- rewardThreshold: BN;
906
- assets: {
907
- collateral: BN;
908
- owned: BN;
909
- locked: BN;
910
- };
911
- feesStats: {
912
- accrued: BN;
913
- distributed: BN;
914
- paid: BN;
915
- rewardPerLpStaked: BN;
916
- protocolFee: BN;
917
- };
918
- borrowRateState: {
919
- currentRate: BN;
920
- cumulativeLockFee: BN;
921
- lastUpdate: BN;
922
- };
923
- bump: number;
924
- tokenAccountBump: number;
925
- token22: boolean;
926
- uid: number;
927
- reservedAmount: BN;
928
- minReserveUsd: BN;
929
- limitPriceBufferBps: BN;
930
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
931
- owner: PublicKey;
932
- stakeStats: {
933
- pendingActivation: BN;
934
- activeAmount: BN;
935
- pendingDeactivation: BN;
936
- deactivatedAmount: BN;
937
- };
938
- rewardSnapshot: BN;
939
- unclaimedRewards: BN;
940
- feeShareBps: BN;
941
- isInitialized: number | boolean;
942
- targetCustody: PublicKey;
943
- collateralCustody: PublicKey;
944
- side: {
945
- none?: Record<string, never>;
946
- long?: Record<string, never>;
947
- short?: Record<string, never>;
948
- };
949
- correlation: boolean;
950
- maxPayoffBps: BN;
951
- degenExposureUsd: BN;
952
- collectivePosition: {
953
- openPositions: BN;
954
- updateTime: BN;
955
- averageEntryPrice: {
314
+ triggerSize: BN;
315
+ receiveCustodyUid: number;
316
+ }[];
317
+ stopLossOrders: {
318
+ triggerPrice: {
956
319
  price: BN;
957
320
  exponent: number;
958
321
  };
959
- sizeAmount: BN;
960
- sizeUsd: BN;
961
- lockedAmount: BN;
962
- lockedUsd: BN;
963
- collateralAmount: BN;
964
- collateralLiabilityUsd: BN;
965
- unsettledFeeUsd: BN;
966
- cumulativeLockFeeSnapshot: BN;
967
- sizeDecimals: number;
968
- lockedDecimals: number;
969
- collateralDecimals: number;
970
- };
971
- targetCustodyUid: number;
972
- collateralCustodyUid: number;
973
- padding2: number[] | BN[];
974
- numSigners: number;
975
- numSigned: number;
976
- minSignatures: number;
977
- instructionAccountsLen: number;
978
- instructionDataLen: number;
979
- instructionHash: BN;
980
- signers: PublicKey[];
981
- signed: number[];
982
- price: BN;
983
- expo: number;
984
- conf: BN;
985
- ema: BN;
986
- publishTime: BN;
987
- extOracleAccount: PublicKey;
988
- market: PublicKey;
989
- limitOrders: unknown;
990
- takeProfitOrders: unknown;
991
- stopLossOrders: unknown;
322
+ triggerSize: BN;
323
+ receiveCustodyUid: number;
324
+ }[];
992
325
  isInitialised: boolean;
993
326
  openOrders: number;
994
327
  openSl: number;
@@ -996,71 +329,14 @@ export declare class PerpetualsClient {
996
329
  inactiveSl: number;
997
330
  inactiveTp: number;
998
331
  activeOrders: number;
332
+ bump: number;
999
333
  referenceTimestamp: BN;
1000
334
  executionCount: BN;
1001
- pools: PublicKey[];
1002
- collections: PublicKey[];
1003
- voltageMultiplier: {
1004
- volume: BN;
1005
- rewards: BN;
1006
- rebates: BN;
1007
- };
1008
- tradingDiscount: BN[];
1009
- referralRebate: BN[];
1010
- defaultRebate: BN;
1011
- inceptionTime: BN;
1012
- transferAuthorityBump: number;
1013
- perpetualsBump: number;
1014
- tradeLimit: number;
1015
- triggerOrderLimit: number;
1016
- rebateLimitUsd: number;
1017
- name: string;
1018
- lpMint: PublicKey;
1019
- oracleAuthority: PublicKey;
1020
- stakedLpVault: PublicKey;
1021
- rewardCustody: PublicKey;
1022
- custodies: PublicKey[];
1023
- ratios: {
1024
- target: BN;
1025
- min: BN;
1026
- max: BN;
1027
- }[];
1028
- markets: PublicKey[];
1029
- maxAumUsd: BN;
1030
- buffer: BN | number[] | number[];
1031
- rawAumUsd: BN;
1032
- equityUsd: BN;
1033
- totalStaked: {
1034
- pendingActivation: BN;
1035
- activeAmount: BN;
1036
- pendingDeactivation: BN;
1037
- deactivatedAmount: BN;
1038
- };
1039
- stakingFeeShareBps: BN;
1040
- lpMintBump: number;
1041
- stakedLpVaultBump: number;
1042
- vpVolumeFactor: number;
1043
- uniqueCustodyCount: number;
1044
- stakingFeeBoostBps: BN[];
1045
- compoundingMint: PublicKey;
1046
- compoundingLpVault: PublicKey;
1047
- compoundingStats: {
1048
- activeAmount: BN;
1049
- totalSupply: BN;
1050
- rewardSnapshot: BN;
1051
- feeShareBps: BN;
1052
- lastCompoundTime: BN;
1053
- };
1054
- compoundingMintBump: number;
1055
- compoundingLpVaultBump: number;
1056
- minLpPriceUsd: BN;
1057
- maxLpPriceUsd: BN;
1058
- lpPrice: BN;
1059
- compoundingLpPrice: BN;
1060
- lastUpdatedTimestamp: BN;
1061
- feesObligationUsd: BN;
1062
- rebateObligationUsd: BN;
1063
- thresholdUsd: BN;
335
+ padding: BN[];
336
+ }>;
337
+ getUserPosition: (owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side) => Promise<{
338
+ owner: PublicKey;
339
+ market: PublicKey;
1064
340
  delegate: PublicKey;
1065
341
  openTime: BN;
1066
342
  updateTime: BN;
@@ -1082,273 +358,79 @@ export declare class PerpetualsClient {
1082
358
  price: BN;
1083
359
  exponent: number;
1084
360
  };
361
+ buffer: number[];
1085
362
  priceImpactSet: number;
1086
363
  sizeDecimals: number;
1087
364
  lockedDecimals: number;
1088
365
  collateralDecimals: number;
1089
- key: PublicKey;
1090
- feeAmount: BN;
1091
- allowPayout: boolean;
1092
- availableUsd: BN;
1093
- availableAmount: BN;
1094
- refererTokenStakeAccount: PublicKey;
1095
- refererBoosterAccount: PublicKey;
1096
- level: number;
1097
- withdrawRequestCount: number;
1098
- withdrawRequest: unknown;
1099
- activeStakeAmount: BN;
1100
- updateTimestamp: BN;
1101
- tradeTimestamp: BN;
1102
- tradeCounter: number;
1103
- lastRewardEpochCount: number;
1104
- rewardTokens: BN;
1105
- unclaimedRevenueAmount: BN;
1106
- revenueSnapshot: BN;
1107
- claimableRebateUsd: BN;
1108
- tokenMint: PublicKey;
1109
- tokenVaultTokenAccount: PublicKey;
1110
- tokenPermissions: {
1111
- allowDeposits: boolean;
1112
- allowWithdrawal: boolean;
1113
- allowRewardWithdrawal: boolean;
1114
- };
1115
- withdrawTimeLimit: BN;
1116
- withdrawInstantFee: BN;
1117
- withdrawInstantFeeEarned: BN;
1118
- stakeLevel: BN[];
1119
- tokensStaked: {
1120
- pendingActivation: BN;
1121
- activeAmount: BN;
1122
- pendingDeactivation: BN;
1123
- deactivatedAmount: BN;
1124
- };
1125
- rewardTokensToDistribute: BN;
1126
- rewardTokensPaid: BN;
1127
- tokensToDistribute: BN;
1128
- tokensDistributed: BN;
1129
- rewardTokensDistributed: BN;
1130
- revenueTokenAccountBump: number;
1131
- revenuePerFafStaked: BN;
1132
- revenueAccrued: BN;
1133
- revenueDistributed: BN;
1134
- revenuePaid: BN;
1135
- nftMint: PublicKey;
1136
- voltagePoints: BN;
1137
- stats: {
1138
- volumeUsd: BN;
1139
- lpRewardsUsd: BN;
1140
- referralRebateUsd: BN;
1141
- };
1142
- snapshot: {
1143
- volumeUsd: BN;
1144
- lpRewardsUsd: BN;
1145
- referralRebateUsd: BN;
1146
- };
1147
- timestamp: BN;
1148
- counter: BN;
1149
- tokenStakeAccount: PublicKey;
1150
- burnt: boolean;
1151
- isSwapFeeExempt: boolean;
1152
- isDepositFeeExempt: boolean;
1153
- isWithdrawalFeeExempt: boolean;
1154
- }[]>;
1155
- getPoolLpTokenKey: (name: string) => PublicKey;
1156
- getPoolCompoundingTokenKey: (name: string) => PublicKey;
1157
- getCustodyKey: (poolName: string, tokenMint: PublicKey) => PublicKey;
1158
- getCustodyTokenAccountKey: (poolName: string, tokenMint: PublicKey) => PublicKey;
1159
- getTradingAccount: (tradingAccount: PublicKey) => Promise<{
1160
- pool: PublicKey;
1161
- mint: PublicKey;
1162
- tokenAccount: PublicKey;
1163
- decimals: number;
1164
- isStable: boolean;
1165
- depegAdjustment: boolean;
1166
- isVirtual: boolean;
1167
- distributeRewards: boolean;
1168
- oracle: {
1169
- intOracleAccount: PublicKey;
1170
- extOracleAccount: PublicKey;
1171
- oracleType: {
1172
- none?: Record<string, never>;
1173
- custom?: Record<string, never>;
1174
- pyth?: Record<string, never>;
1175
- };
1176
- maxDivergenceBps: BN;
1177
- maxConfBps: BN;
1178
- maxPriceAgeSec: number;
1179
- maxBackupAgeSec: number;
1180
- };
1181
- pricing: {
1182
- tradeSpreadMin: BN;
1183
- tradeSpreadMax: BN;
1184
- swapSpread: BN;
1185
- minInitLeverage: number;
1186
- minInitDegenLeverage: number;
1187
- maxInitLeverage: number;
1188
- maxInitDegenLeverage: number;
1189
- maxLeverage: number;
1190
- maxDegenLeverage: number;
1191
- minCollateralUsd: number;
1192
- minDegenCollateralUsd: number;
1193
- delaySeconds: BN;
1194
- maxUtilization: number;
1195
- degenPositionFactor: number;
1196
- degenExposureFactor: number;
1197
- maxPositionSizeUsd: BN;
1198
- maxExposureUsd: BN;
1199
- };
1200
- permissions: {
1201
- allowSwap: boolean;
1202
- allowAddLiquidity: boolean;
1203
- allowRemoveLiquidity: boolean;
1204
- allowOpenPosition: boolean;
1205
- allowClosePosition: boolean;
1206
- allowCollateralWithdrawal: boolean;
1207
- allowSizeChange: boolean;
1208
- allowLiquidation: boolean;
1209
- allowLpStaking: boolean;
1210
- allowFeeDistribution: boolean;
1211
- allowUngatedTrading: boolean;
1212
- allowFeeDiscounts: boolean;
1213
- allowReferralRebates: boolean;
1214
- } | {
1215
- allowOpenPosition: boolean;
1216
- allowClosePosition: boolean;
1217
- allowCollateralWithdrawal: boolean;
1218
- allowSizeChange: boolean;
1219
- };
1220
- fees: {
1221
- mode: {
1222
- fixed?: Record<string, never>;
1223
- linear?: Record<string, never>;
1224
- };
1225
- swapIn: {
1226
- minFee: BN;
1227
- targetFee: BN;
1228
- maxFee: BN;
1229
- };
1230
- swapOut: {
1231
- minFee: BN;
1232
- targetFee: BN;
1233
- maxFee: BN;
1234
- };
1235
- stableSwapIn: {
1236
- minFee: BN;
1237
- targetFee: BN;
1238
- maxFee: BN;
1239
- };
1240
- stableSwapOut: {
1241
- minFee: BN;
1242
- targetFee: BN;
1243
- maxFee: BN;
1244
- };
1245
- addLiquidity: {
1246
- minFee: BN;
1247
- targetFee: BN;
1248
- maxFee: BN;
1249
- };
1250
- removeLiquidity: {
1251
- minFee: BN;
1252
- targetFee: BN;
1253
- maxFee: BN;
1254
- };
1255
- openPosition: BN;
1256
- closePosition: BN;
1257
- volatility: BN;
1258
- };
1259
- borrowRate: {
1260
- baseRate: BN;
1261
- slope1: BN;
1262
- slope2: BN;
1263
- optimalUtilization: BN;
1264
- };
1265
- rewardThreshold: BN;
1266
- assets: {
1267
- collateral: BN;
1268
- owned: BN;
1269
- locked: BN;
1270
- };
1271
- feesStats: {
1272
- accrued: BN;
1273
- distributed: BN;
1274
- paid: BN;
1275
- rewardPerLpStaked: BN;
1276
- protocolFee: BN;
1277
- };
1278
- borrowRateState: {
1279
- currentRate: BN;
1280
- cumulativeLockFee: BN;
1281
- lastUpdate: BN;
1282
- };
1283
366
  bump: number;
1284
- tokenAccountBump: number;
1285
- token22: boolean;
1286
- uid: number;
1287
- reservedAmount: BN;
1288
- minReserveUsd: BN;
1289
- limitPriceBufferBps: BN;
1290
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
367
+ padding: number[];
368
+ }>;
369
+ getUserOrderAccount: (owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side) => Promise<{
1291
370
  owner: PublicKey;
1292
- stakeStats: {
1293
- pendingActivation: BN;
1294
- activeAmount: BN;
1295
- pendingDeactivation: BN;
1296
- deactivatedAmount: BN;
1297
- };
1298
- rewardSnapshot: BN;
1299
- unclaimedRewards: BN;
1300
- feeShareBps: BN;
1301
- isInitialized: number | boolean;
1302
- targetCustody: PublicKey;
1303
- collateralCustody: PublicKey;
1304
- side: {
1305
- none?: Record<string, never>;
1306
- long?: Record<string, never>;
1307
- short?: Record<string, never>;
371
+ market: PublicKey;
372
+ delegate: PublicKey;
373
+ openTime: BN;
374
+ updateTime: BN;
375
+ entryPrice: {
376
+ price: BN;
377
+ exponent: number;
1308
378
  };
1309
- correlation: boolean;
1310
- maxPayoffBps: BN;
1311
- degenExposureUsd: BN;
1312
- collectivePosition: {
1313
- openPositions: BN;
1314
- updateTime: BN;
1315
- averageEntryPrice: {
1316
- price: BN;
1317
- exponent: number;
1318
- };
1319
- sizeAmount: BN;
1320
- sizeUsd: BN;
1321
- lockedAmount: BN;
1322
- lockedUsd: BN;
1323
- collateralAmount: BN;
1324
- collateralLiabilityUsd: BN;
1325
- unsettledFeeUsd: BN;
1326
- cumulativeLockFeeSnapshot: BN;
1327
- sizeDecimals: number;
1328
- lockedDecimals: number;
1329
- collateralDecimals: number;
379
+ sizeAmount: BN;
380
+ sizeUsd: BN;
381
+ lockedAmount: BN;
382
+ lockedUsd: BN;
383
+ priceImpactUsd: BN;
384
+ collateralUsd: BN;
385
+ unsettledValueUsd: BN;
386
+ unsettledFeesUsd: BN;
387
+ cumulativeLockFeeSnapshot: BN;
388
+ degenSizeUsd: BN;
389
+ referencePrice: {
390
+ price: BN;
391
+ exponent: number;
1330
392
  };
1331
- targetCustodyUid: number;
1332
- collateralCustodyUid: number;
1333
- padding2: number[] | BN[];
1334
- numSigners: number;
1335
- numSigned: number;
1336
- minSignatures: number;
1337
- instructionAccountsLen: number;
1338
- instructionDataLen: number;
1339
- instructionHash: BN;
1340
- signers: PublicKey[];
1341
- signed: number[];
1342
- price: BN;
1343
- expo: number;
1344
- conf: BN;
1345
- ema: BN;
1346
- publishTime: BN;
1347
- extOracleAccount: PublicKey;
393
+ buffer: number[];
394
+ priceImpactSet: number;
395
+ sizeDecimals: number;
396
+ lockedDecimals: number;
397
+ collateralDecimals: number;
398
+ bump: number;
399
+ padding: number[];
400
+ }>;
401
+ getUserPositions: (wallet: PublicKey, poolConfig: PoolConfig) => Promise<{
402
+ owner: PublicKey;
403
+ market: PublicKey;
404
+ delegate: PublicKey;
405
+ openTime: BN;
406
+ updateTime: BN;
407
+ entryPrice: ContractOraclePrice;
408
+ sizeAmount: BN;
409
+ sizeUsd: BN;
410
+ lockedAmount: BN;
411
+ lockedUsd: BN;
412
+ priceImpactUsd: BN;
413
+ collateralUsd: BN;
414
+ unsettledValueUsd: BN;
415
+ unsettledFeesUsd: BN;
416
+ cumulativeLockFeeSnapshot: BN;
417
+ degenSizeUsd: BN;
418
+ referencePrice: ContractOraclePrice;
419
+ buffer: number[];
420
+ priceImpactSet: number;
421
+ sizeDecimals: number;
422
+ lockedDecimals: number;
423
+ collateralDecimals: number;
424
+ bump: number;
425
+ padding: number[];
426
+ pubkey: PublicKey;
427
+ }[]>;
428
+ getUserOrderAccounts: (wallet: PublicKey, poolConfig: PoolConfig) => Promise<{
429
+ owner: PublicKey;
1348
430
  market: PublicKey;
1349
- limitOrders: unknown;
1350
- takeProfitOrders: unknown;
1351
- stopLossOrders: unknown;
431
+ limitOrders: import("./types").LimitOrder[];
432
+ takeProfitOrders: import("./types").TriggerOrder[];
433
+ stopLossOrders: import("./types").TriggerOrder[];
1352
434
  isInitialised: boolean;
1353
435
  openOrders: number;
1354
436
  openSl: number;
@@ -1356,71 +438,15 @@ export declare class PerpetualsClient {
1356
438
  inactiveSl: number;
1357
439
  inactiveTp: number;
1358
440
  activeOrders: number;
441
+ bump: number;
1359
442
  referenceTimestamp: BN;
1360
443
  executionCount: BN;
1361
- pools: PublicKey[];
1362
- collections: PublicKey[];
1363
- voltageMultiplier: {
1364
- volume: BN;
1365
- rewards: BN;
1366
- rebates: BN;
1367
- };
1368
- tradingDiscount: BN[];
1369
- referralRebate: BN[];
1370
- defaultRebate: BN;
1371
- inceptionTime: BN;
1372
- transferAuthorityBump: number;
1373
- perpetualsBump: number;
1374
- tradeLimit: number;
1375
- triggerOrderLimit: number;
1376
- rebateLimitUsd: number;
1377
- name: string;
1378
- lpMint: PublicKey;
1379
- oracleAuthority: PublicKey;
1380
- stakedLpVault: PublicKey;
1381
- rewardCustody: PublicKey;
1382
- custodies: PublicKey[];
1383
- ratios: {
1384
- target: BN;
1385
- min: BN;
1386
- max: BN;
1387
- }[];
1388
- markets: PublicKey[];
1389
- maxAumUsd: BN;
1390
- buffer: BN | number[] | number[];
1391
- rawAumUsd: BN;
1392
- equityUsd: BN;
1393
- totalStaked: {
1394
- pendingActivation: BN;
1395
- activeAmount: BN;
1396
- pendingDeactivation: BN;
1397
- deactivatedAmount: BN;
1398
- };
1399
- stakingFeeShareBps: BN;
1400
- lpMintBump: number;
1401
- stakedLpVaultBump: number;
1402
- vpVolumeFactor: number;
1403
- uniqueCustodyCount: number;
1404
- stakingFeeBoostBps: BN[];
1405
- compoundingMint: PublicKey;
1406
- compoundingLpVault: PublicKey;
1407
- compoundingStats: {
1408
- activeAmount: BN;
1409
- totalSupply: BN;
1410
- rewardSnapshot: BN;
1411
- feeShareBps: BN;
1412
- lastCompoundTime: BN;
1413
- };
1414
- compoundingMintBump: number;
1415
- compoundingLpVaultBump: number;
1416
- minLpPriceUsd: BN;
1417
- maxLpPriceUsd: BN;
1418
- lpPrice: BN;
1419
- compoundingLpPrice: BN;
1420
- lastUpdatedTimestamp: BN;
1421
- feesObligationUsd: BN;
1422
- rebateObligationUsd: BN;
1423
- thresholdUsd: BN;
444
+ padding: BN[];
445
+ pubkey: PublicKey;
446
+ }[]>;
447
+ getAllPositions: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
448
+ owner: PublicKey;
449
+ market: PublicKey;
1424
450
  delegate: PublicKey;
1425
451
  openTime: BN;
1426
452
  updateTime: BN;
@@ -1442,2889 +468,49 @@ export declare class PerpetualsClient {
1442
468
  price: BN;
1443
469
  exponent: number;
1444
470
  };
471
+ buffer: number[];
1445
472
  priceImpactSet: number;
1446
473
  sizeDecimals: number;
1447
474
  lockedDecimals: number;
1448
475
  collateralDecimals: number;
1449
- key: PublicKey;
1450
- feeAmount: BN;
1451
- allowPayout: boolean;
1452
- availableUsd: BN;
1453
- availableAmount: BN;
1454
- refererTokenStakeAccount: PublicKey;
1455
- refererBoosterAccount: PublicKey;
1456
- level: number;
1457
- withdrawRequestCount: number;
1458
- withdrawRequest: unknown;
1459
- activeStakeAmount: BN;
1460
- updateTimestamp: BN;
1461
- tradeTimestamp: BN;
1462
- tradeCounter: number;
1463
- lastRewardEpochCount: number;
1464
- rewardTokens: BN;
1465
- unclaimedRevenueAmount: BN;
1466
- revenueSnapshot: BN;
1467
- claimableRebateUsd: BN;
1468
- tokenMint: PublicKey;
1469
- tokenVaultTokenAccount: PublicKey;
1470
- tokenPermissions: {
1471
- allowDeposits: boolean;
1472
- allowWithdrawal: boolean;
1473
- allowRewardWithdrawal: boolean;
476
+ bump: number;
477
+ padding: number[];
478
+ }>[]>;
479
+ getAllActivePositions: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
480
+ owner: PublicKey;
481
+ market: PublicKey;
482
+ delegate: PublicKey;
483
+ openTime: BN;
484
+ updateTime: BN;
485
+ entryPrice: {
486
+ price: BN;
487
+ exponent: number;
1474
488
  };
1475
- withdrawTimeLimit: BN;
1476
- withdrawInstantFee: BN;
1477
- withdrawInstantFeeEarned: BN;
1478
- stakeLevel: BN[];
1479
- tokensStaked: {
1480
- pendingActivation: BN;
1481
- activeAmount: BN;
1482
- pendingDeactivation: BN;
1483
- deactivatedAmount: BN;
1484
- };
1485
- rewardTokensToDistribute: BN;
1486
- rewardTokensPaid: BN;
1487
- tokensToDistribute: BN;
1488
- tokensDistributed: BN;
1489
- rewardTokensDistributed: BN;
1490
- revenueTokenAccountBump: number;
1491
- revenuePerFafStaked: BN;
1492
- revenueAccrued: BN;
1493
- revenueDistributed: BN;
1494
- revenuePaid: BN;
1495
- nftMint: PublicKey;
1496
- voltagePoints: BN;
1497
- stats: {
1498
- volumeUsd: BN;
1499
- lpRewardsUsd: BN;
1500
- referralRebateUsd: BN;
1501
- };
1502
- snapshot: {
1503
- volumeUsd: BN;
1504
- lpRewardsUsd: BN;
1505
- referralRebateUsd: BN;
1506
- };
1507
- timestamp: BN;
1508
- counter: BN;
1509
- tokenStakeAccount: PublicKey;
1510
- burnt: boolean;
1511
- isSwapFeeExempt: boolean;
1512
- isDepositFeeExempt: boolean;
1513
- isWithdrawalFeeExempt: boolean;
1514
- }>;
1515
- getMarketPk(targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
1516
- getPositionKey(owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
1517
- getOrderAccountKey(owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side): PublicKey;
1518
- getPosition: (postionKey: PublicKey) => Promise<{
1519
- pool: PublicKey;
1520
- mint: PublicKey;
1521
- tokenAccount: PublicKey;
1522
- decimals: number;
1523
- isStable: boolean;
1524
- depegAdjustment: boolean;
1525
- isVirtual: boolean;
1526
- distributeRewards: boolean;
1527
- oracle: {
1528
- intOracleAccount: PublicKey;
1529
- extOracleAccount: PublicKey;
1530
- oracleType: {
1531
- none?: Record<string, never>;
1532
- custom?: Record<string, never>;
1533
- pyth?: Record<string, never>;
1534
- };
1535
- maxDivergenceBps: BN;
1536
- maxConfBps: BN;
1537
- maxPriceAgeSec: number;
1538
- maxBackupAgeSec: number;
1539
- };
1540
- pricing: {
1541
- tradeSpreadMin: BN;
1542
- tradeSpreadMax: BN;
1543
- swapSpread: BN;
1544
- minInitLeverage: number;
1545
- minInitDegenLeverage: number;
1546
- maxInitLeverage: number;
1547
- maxInitDegenLeverage: number;
1548
- maxLeverage: number;
1549
- maxDegenLeverage: number;
1550
- minCollateralUsd: number;
1551
- minDegenCollateralUsd: number;
1552
- delaySeconds: BN;
1553
- maxUtilization: number;
1554
- degenPositionFactor: number;
1555
- degenExposureFactor: number;
1556
- maxPositionSizeUsd: BN;
1557
- maxExposureUsd: BN;
1558
- };
1559
- permissions: {
1560
- allowSwap: boolean;
1561
- allowAddLiquidity: boolean;
1562
- allowRemoveLiquidity: boolean;
1563
- allowOpenPosition: boolean;
1564
- allowClosePosition: boolean;
1565
- allowCollateralWithdrawal: boolean;
1566
- allowSizeChange: boolean;
1567
- allowLiquidation: boolean;
1568
- allowLpStaking: boolean;
1569
- allowFeeDistribution: boolean;
1570
- allowUngatedTrading: boolean;
1571
- allowFeeDiscounts: boolean;
1572
- allowReferralRebates: boolean;
1573
- } | {
1574
- allowOpenPosition: boolean;
1575
- allowClosePosition: boolean;
1576
- allowCollateralWithdrawal: boolean;
1577
- allowSizeChange: boolean;
1578
- };
1579
- fees: {
1580
- mode: {
1581
- fixed?: Record<string, never>;
1582
- linear?: Record<string, never>;
1583
- };
1584
- swapIn: {
1585
- minFee: BN;
1586
- targetFee: BN;
1587
- maxFee: BN;
1588
- };
1589
- swapOut: {
1590
- minFee: BN;
1591
- targetFee: BN;
1592
- maxFee: BN;
1593
- };
1594
- stableSwapIn: {
1595
- minFee: BN;
1596
- targetFee: BN;
1597
- maxFee: BN;
1598
- };
1599
- stableSwapOut: {
1600
- minFee: BN;
1601
- targetFee: BN;
1602
- maxFee: BN;
1603
- };
1604
- addLiquidity: {
1605
- minFee: BN;
1606
- targetFee: BN;
1607
- maxFee: BN;
1608
- };
1609
- removeLiquidity: {
1610
- minFee: BN;
1611
- targetFee: BN;
1612
- maxFee: BN;
1613
- };
1614
- openPosition: BN;
1615
- closePosition: BN;
1616
- volatility: BN;
1617
- };
1618
- borrowRate: {
1619
- baseRate: BN;
1620
- slope1: BN;
1621
- slope2: BN;
1622
- optimalUtilization: BN;
1623
- };
1624
- rewardThreshold: BN;
1625
- assets: {
1626
- collateral: BN;
1627
- owned: BN;
1628
- locked: BN;
1629
- };
1630
- feesStats: {
1631
- accrued: BN;
1632
- distributed: BN;
1633
- paid: BN;
1634
- rewardPerLpStaked: BN;
1635
- protocolFee: BN;
1636
- };
1637
- borrowRateState: {
1638
- currentRate: BN;
1639
- cumulativeLockFee: BN;
1640
- lastUpdate: BN;
1641
- };
1642
- bump: number;
1643
- tokenAccountBump: number;
1644
- token22: boolean;
1645
- uid: number;
1646
- reservedAmount: BN;
1647
- minReserveUsd: BN;
1648
- limitPriceBufferBps: BN;
1649
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
1650
- owner: PublicKey;
1651
- stakeStats: {
1652
- pendingActivation: BN;
1653
- activeAmount: BN;
1654
- pendingDeactivation: BN;
1655
- deactivatedAmount: BN;
1656
- };
1657
- rewardSnapshot: BN;
1658
- unclaimedRewards: BN;
1659
- feeShareBps: BN;
1660
- isInitialized: number | boolean;
1661
- targetCustody: PublicKey;
1662
- collateralCustody: PublicKey;
1663
- side: {
1664
- none?: Record<string, never>;
1665
- long?: Record<string, never>;
1666
- short?: Record<string, never>;
1667
- };
1668
- correlation: boolean;
1669
- maxPayoffBps: BN;
1670
- degenExposureUsd: BN;
1671
- collectivePosition: {
1672
- openPositions: BN;
1673
- updateTime: BN;
1674
- averageEntryPrice: {
1675
- price: BN;
1676
- exponent: number;
1677
- };
1678
- sizeAmount: BN;
1679
- sizeUsd: BN;
1680
- lockedAmount: BN;
1681
- lockedUsd: BN;
1682
- collateralAmount: BN;
1683
- collateralLiabilityUsd: BN;
1684
- unsettledFeeUsd: BN;
1685
- cumulativeLockFeeSnapshot: BN;
1686
- sizeDecimals: number;
1687
- lockedDecimals: number;
1688
- collateralDecimals: number;
1689
- };
1690
- targetCustodyUid: number;
1691
- collateralCustodyUid: number;
1692
- padding2: number[] | BN[];
1693
- numSigners: number;
1694
- numSigned: number;
1695
- minSignatures: number;
1696
- instructionAccountsLen: number;
1697
- instructionDataLen: number;
1698
- instructionHash: BN;
1699
- signers: PublicKey[];
1700
- signed: number[];
1701
- price: BN;
1702
- expo: number;
1703
- conf: BN;
1704
- ema: BN;
1705
- publishTime: BN;
1706
- extOracleAccount: PublicKey;
1707
- market: PublicKey;
1708
- limitOrders: unknown;
1709
- takeProfitOrders: unknown;
1710
- stopLossOrders: unknown;
1711
- isInitialised: boolean;
1712
- openOrders: number;
1713
- openSl: number;
1714
- openTp: number;
1715
- inactiveSl: number;
1716
- inactiveTp: number;
1717
- activeOrders: number;
1718
- referenceTimestamp: BN;
1719
- executionCount: BN;
1720
- pools: PublicKey[];
1721
- collections: PublicKey[];
1722
- voltageMultiplier: {
1723
- volume: BN;
1724
- rewards: BN;
1725
- rebates: BN;
1726
- };
1727
- tradingDiscount: BN[];
1728
- referralRebate: BN[];
1729
- defaultRebate: BN;
1730
- inceptionTime: BN;
1731
- transferAuthorityBump: number;
1732
- perpetualsBump: number;
1733
- tradeLimit: number;
1734
- triggerOrderLimit: number;
1735
- rebateLimitUsd: number;
1736
- name: string;
1737
- lpMint: PublicKey;
1738
- oracleAuthority: PublicKey;
1739
- stakedLpVault: PublicKey;
1740
- rewardCustody: PublicKey;
1741
- custodies: PublicKey[];
1742
- ratios: {
1743
- target: BN;
1744
- min: BN;
1745
- max: BN;
1746
- }[];
1747
- markets: PublicKey[];
1748
- maxAumUsd: BN;
1749
- buffer: BN | number[] | number[];
1750
- rawAumUsd: BN;
1751
- equityUsd: BN;
1752
- totalStaked: {
1753
- pendingActivation: BN;
1754
- activeAmount: BN;
1755
- pendingDeactivation: BN;
1756
- deactivatedAmount: BN;
1757
- };
1758
- stakingFeeShareBps: BN;
1759
- lpMintBump: number;
1760
- stakedLpVaultBump: number;
1761
- vpVolumeFactor: number;
1762
- uniqueCustodyCount: number;
1763
- stakingFeeBoostBps: BN[];
1764
- compoundingMint: PublicKey;
1765
- compoundingLpVault: PublicKey;
1766
- compoundingStats: {
1767
- activeAmount: BN;
1768
- totalSupply: BN;
1769
- rewardSnapshot: BN;
1770
- feeShareBps: BN;
1771
- lastCompoundTime: BN;
1772
- };
1773
- compoundingMintBump: number;
1774
- compoundingLpVaultBump: number;
1775
- minLpPriceUsd: BN;
1776
- maxLpPriceUsd: BN;
1777
- lpPrice: BN;
1778
- compoundingLpPrice: BN;
1779
- lastUpdatedTimestamp: BN;
1780
- feesObligationUsd: BN;
1781
- rebateObligationUsd: BN;
1782
- thresholdUsd: BN;
1783
- delegate: PublicKey;
1784
- openTime: BN;
1785
- updateTime: BN;
1786
- entryPrice: {
1787
- price: BN;
1788
- exponent: number;
1789
- };
1790
- sizeAmount: BN;
1791
- sizeUsd: BN;
1792
- lockedAmount: BN;
1793
- lockedUsd: BN;
1794
- priceImpactUsd: BN;
1795
- collateralUsd: BN;
1796
- unsettledValueUsd: BN;
1797
- unsettledFeesUsd: BN;
1798
- cumulativeLockFeeSnapshot: BN;
1799
- degenSizeUsd: BN;
1800
- referencePrice: {
1801
- price: BN;
1802
- exponent: number;
1803
- };
1804
- priceImpactSet: number;
1805
- sizeDecimals: number;
1806
- lockedDecimals: number;
1807
- collateralDecimals: number;
1808
- key: PublicKey;
1809
- feeAmount: BN;
1810
- allowPayout: boolean;
1811
- availableUsd: BN;
1812
- availableAmount: BN;
1813
- refererTokenStakeAccount: PublicKey;
1814
- refererBoosterAccount: PublicKey;
1815
- level: number;
1816
- withdrawRequestCount: number;
1817
- withdrawRequest: unknown;
1818
- activeStakeAmount: BN;
1819
- updateTimestamp: BN;
1820
- tradeTimestamp: BN;
1821
- tradeCounter: number;
1822
- lastRewardEpochCount: number;
1823
- rewardTokens: BN;
1824
- unclaimedRevenueAmount: BN;
1825
- revenueSnapshot: BN;
1826
- claimableRebateUsd: BN;
1827
- tokenMint: PublicKey;
1828
- tokenVaultTokenAccount: PublicKey;
1829
- tokenPermissions: {
1830
- allowDeposits: boolean;
1831
- allowWithdrawal: boolean;
1832
- allowRewardWithdrawal: boolean;
1833
- };
1834
- withdrawTimeLimit: BN;
1835
- withdrawInstantFee: BN;
1836
- withdrawInstantFeeEarned: BN;
1837
- stakeLevel: BN[];
1838
- tokensStaked: {
1839
- pendingActivation: BN;
1840
- activeAmount: BN;
1841
- pendingDeactivation: BN;
1842
- deactivatedAmount: BN;
1843
- };
1844
- rewardTokensToDistribute: BN;
1845
- rewardTokensPaid: BN;
1846
- tokensToDistribute: BN;
1847
- tokensDistributed: BN;
1848
- rewardTokensDistributed: BN;
1849
- revenueTokenAccountBump: number;
1850
- revenuePerFafStaked: BN;
1851
- revenueAccrued: BN;
1852
- revenueDistributed: BN;
1853
- revenuePaid: BN;
1854
- nftMint: PublicKey;
1855
- voltagePoints: BN;
1856
- stats: {
1857
- volumeUsd: BN;
1858
- lpRewardsUsd: BN;
1859
- referralRebateUsd: BN;
1860
- };
1861
- snapshot: {
1862
- volumeUsd: BN;
1863
- lpRewardsUsd: BN;
1864
- referralRebateUsd: BN;
1865
- };
1866
- timestamp: BN;
1867
- counter: BN;
1868
- tokenStakeAccount: PublicKey;
1869
- burnt: boolean;
1870
- isSwapFeeExempt: boolean;
1871
- isDepositFeeExempt: boolean;
1872
- isWithdrawalFeeExempt: boolean;
1873
- }>;
1874
- getPositionData: (position: PositionAccount, poolConfig: PoolConfig) => Promise<any>;
1875
- getOrderAccount: (orderAccountKey: PublicKey) => Promise<{
1876
- pool: PublicKey;
1877
- mint: PublicKey;
1878
- tokenAccount: PublicKey;
1879
- decimals: number;
1880
- isStable: boolean;
1881
- depegAdjustment: boolean;
1882
- isVirtual: boolean;
1883
- distributeRewards: boolean;
1884
- oracle: {
1885
- intOracleAccount: PublicKey;
1886
- extOracleAccount: PublicKey;
1887
- oracleType: {
1888
- none?: Record<string, never>;
1889
- custom?: Record<string, never>;
1890
- pyth?: Record<string, never>;
1891
- };
1892
- maxDivergenceBps: BN;
1893
- maxConfBps: BN;
1894
- maxPriceAgeSec: number;
1895
- maxBackupAgeSec: number;
1896
- };
1897
- pricing: {
1898
- tradeSpreadMin: BN;
1899
- tradeSpreadMax: BN;
1900
- swapSpread: BN;
1901
- minInitLeverage: number;
1902
- minInitDegenLeverage: number;
1903
- maxInitLeverage: number;
1904
- maxInitDegenLeverage: number;
1905
- maxLeverage: number;
1906
- maxDegenLeverage: number;
1907
- minCollateralUsd: number;
1908
- minDegenCollateralUsd: number;
1909
- delaySeconds: BN;
1910
- maxUtilization: number;
1911
- degenPositionFactor: number;
1912
- degenExposureFactor: number;
1913
- maxPositionSizeUsd: BN;
1914
- maxExposureUsd: BN;
1915
- };
1916
- permissions: {
1917
- allowSwap: boolean;
1918
- allowAddLiquidity: boolean;
1919
- allowRemoveLiquidity: boolean;
1920
- allowOpenPosition: boolean;
1921
- allowClosePosition: boolean;
1922
- allowCollateralWithdrawal: boolean;
1923
- allowSizeChange: boolean;
1924
- allowLiquidation: boolean;
1925
- allowLpStaking: boolean;
1926
- allowFeeDistribution: boolean;
1927
- allowUngatedTrading: boolean;
1928
- allowFeeDiscounts: boolean;
1929
- allowReferralRebates: boolean;
1930
- } | {
1931
- allowOpenPosition: boolean;
1932
- allowClosePosition: boolean;
1933
- allowCollateralWithdrawal: boolean;
1934
- allowSizeChange: boolean;
1935
- };
1936
- fees: {
1937
- mode: {
1938
- fixed?: Record<string, never>;
1939
- linear?: Record<string, never>;
1940
- };
1941
- swapIn: {
1942
- minFee: BN;
1943
- targetFee: BN;
1944
- maxFee: BN;
1945
- };
1946
- swapOut: {
1947
- minFee: BN;
1948
- targetFee: BN;
1949
- maxFee: BN;
1950
- };
1951
- stableSwapIn: {
1952
- minFee: BN;
1953
- targetFee: BN;
1954
- maxFee: BN;
1955
- };
1956
- stableSwapOut: {
1957
- minFee: BN;
1958
- targetFee: BN;
1959
- maxFee: BN;
1960
- };
1961
- addLiquidity: {
1962
- minFee: BN;
1963
- targetFee: BN;
1964
- maxFee: BN;
1965
- };
1966
- removeLiquidity: {
1967
- minFee: BN;
1968
- targetFee: BN;
1969
- maxFee: BN;
1970
- };
1971
- openPosition: BN;
1972
- closePosition: BN;
1973
- volatility: BN;
1974
- };
1975
- borrowRate: {
1976
- baseRate: BN;
1977
- slope1: BN;
1978
- slope2: BN;
1979
- optimalUtilization: BN;
1980
- };
1981
- rewardThreshold: BN;
1982
- assets: {
1983
- collateral: BN;
1984
- owned: BN;
1985
- locked: BN;
1986
- };
1987
- feesStats: {
1988
- accrued: BN;
1989
- distributed: BN;
1990
- paid: BN;
1991
- rewardPerLpStaked: BN;
1992
- protocolFee: BN;
1993
- };
1994
- borrowRateState: {
1995
- currentRate: BN;
1996
- cumulativeLockFee: BN;
1997
- lastUpdate: BN;
1998
- };
1999
- bump: number;
2000
- tokenAccountBump: number;
2001
- token22: boolean;
2002
- uid: number;
2003
- reservedAmount: BN;
2004
- minReserveUsd: BN;
2005
- limitPriceBufferBps: BN;
2006
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
2007
- owner: PublicKey;
2008
- stakeStats: {
2009
- pendingActivation: BN;
2010
- activeAmount: BN;
2011
- pendingDeactivation: BN;
2012
- deactivatedAmount: BN;
2013
- };
2014
- rewardSnapshot: BN;
2015
- unclaimedRewards: BN;
2016
- feeShareBps: BN;
2017
- isInitialized: number | boolean;
2018
- targetCustody: PublicKey;
2019
- collateralCustody: PublicKey;
2020
- side: {
2021
- none?: Record<string, never>;
2022
- long?: Record<string, never>;
2023
- short?: Record<string, never>;
2024
- };
2025
- correlation: boolean;
2026
- maxPayoffBps: BN;
2027
- degenExposureUsd: BN;
2028
- collectivePosition: {
2029
- openPositions: BN;
2030
- updateTime: BN;
2031
- averageEntryPrice: {
2032
- price: BN;
2033
- exponent: number;
2034
- };
2035
- sizeAmount: BN;
2036
- sizeUsd: BN;
2037
- lockedAmount: BN;
2038
- lockedUsd: BN;
2039
- collateralAmount: BN;
2040
- collateralLiabilityUsd: BN;
2041
- unsettledFeeUsd: BN;
2042
- cumulativeLockFeeSnapshot: BN;
2043
- sizeDecimals: number;
2044
- lockedDecimals: number;
2045
- collateralDecimals: number;
2046
- };
2047
- targetCustodyUid: number;
2048
- collateralCustodyUid: number;
2049
- padding2: number[] | BN[];
2050
- numSigners: number;
2051
- numSigned: number;
2052
- minSignatures: number;
2053
- instructionAccountsLen: number;
2054
- instructionDataLen: number;
2055
- instructionHash: BN;
2056
- signers: PublicKey[];
2057
- signed: number[];
2058
- price: BN;
2059
- expo: number;
2060
- conf: BN;
2061
- ema: BN;
2062
- publishTime: BN;
2063
- extOracleAccount: PublicKey;
2064
- market: PublicKey;
2065
- limitOrders: unknown;
2066
- takeProfitOrders: unknown;
2067
- stopLossOrders: unknown;
2068
- isInitialised: boolean;
2069
- openOrders: number;
2070
- openSl: number;
2071
- openTp: number;
2072
- inactiveSl: number;
2073
- inactiveTp: number;
2074
- activeOrders: number;
2075
- referenceTimestamp: BN;
2076
- executionCount: BN;
2077
- pools: PublicKey[];
2078
- collections: PublicKey[];
2079
- voltageMultiplier: {
2080
- volume: BN;
2081
- rewards: BN;
2082
- rebates: BN;
2083
- };
2084
- tradingDiscount: BN[];
2085
- referralRebate: BN[];
2086
- defaultRebate: BN;
2087
- inceptionTime: BN;
2088
- transferAuthorityBump: number;
2089
- perpetualsBump: number;
2090
- tradeLimit: number;
2091
- triggerOrderLimit: number;
2092
- rebateLimitUsd: number;
2093
- name: string;
2094
- lpMint: PublicKey;
2095
- oracleAuthority: PublicKey;
2096
- stakedLpVault: PublicKey;
2097
- rewardCustody: PublicKey;
2098
- custodies: PublicKey[];
2099
- ratios: {
2100
- target: BN;
2101
- min: BN;
2102
- max: BN;
2103
- }[];
2104
- markets: PublicKey[];
2105
- maxAumUsd: BN;
2106
- buffer: BN | number[] | number[];
2107
- rawAumUsd: BN;
2108
- equityUsd: BN;
2109
- totalStaked: {
2110
- pendingActivation: BN;
2111
- activeAmount: BN;
2112
- pendingDeactivation: BN;
2113
- deactivatedAmount: BN;
2114
- };
2115
- stakingFeeShareBps: BN;
2116
- lpMintBump: number;
2117
- stakedLpVaultBump: number;
2118
- vpVolumeFactor: number;
2119
- uniqueCustodyCount: number;
2120
- stakingFeeBoostBps: BN[];
2121
- compoundingMint: PublicKey;
2122
- compoundingLpVault: PublicKey;
2123
- compoundingStats: {
2124
- activeAmount: BN;
2125
- totalSupply: BN;
2126
- rewardSnapshot: BN;
2127
- feeShareBps: BN;
2128
- lastCompoundTime: BN;
2129
- };
2130
- compoundingMintBump: number;
2131
- compoundingLpVaultBump: number;
2132
- minLpPriceUsd: BN;
2133
- maxLpPriceUsd: BN;
2134
- lpPrice: BN;
2135
- compoundingLpPrice: BN;
2136
- lastUpdatedTimestamp: BN;
2137
- feesObligationUsd: BN;
2138
- rebateObligationUsd: BN;
2139
- thresholdUsd: BN;
2140
- delegate: PublicKey;
2141
- openTime: BN;
2142
- updateTime: BN;
2143
- entryPrice: {
2144
- price: BN;
2145
- exponent: number;
2146
- };
2147
- sizeAmount: BN;
2148
- sizeUsd: BN;
2149
- lockedAmount: BN;
2150
- lockedUsd: BN;
2151
- priceImpactUsd: BN;
2152
- collateralUsd: BN;
2153
- unsettledValueUsd: BN;
2154
- unsettledFeesUsd: BN;
2155
- cumulativeLockFeeSnapshot: BN;
2156
- degenSizeUsd: BN;
2157
- referencePrice: {
2158
- price: BN;
2159
- exponent: number;
2160
- };
2161
- priceImpactSet: number;
2162
- sizeDecimals: number;
2163
- lockedDecimals: number;
2164
- collateralDecimals: number;
2165
- key: PublicKey;
2166
- feeAmount: BN;
2167
- allowPayout: boolean;
2168
- availableUsd: BN;
2169
- availableAmount: BN;
2170
- refererTokenStakeAccount: PublicKey;
2171
- refererBoosterAccount: PublicKey;
2172
- level: number;
2173
- withdrawRequestCount: number;
2174
- withdrawRequest: unknown;
2175
- activeStakeAmount: BN;
2176
- updateTimestamp: BN;
2177
- tradeTimestamp: BN;
2178
- tradeCounter: number;
2179
- lastRewardEpochCount: number;
2180
- rewardTokens: BN;
2181
- unclaimedRevenueAmount: BN;
2182
- revenueSnapshot: BN;
2183
- claimableRebateUsd: BN;
2184
- tokenMint: PublicKey;
2185
- tokenVaultTokenAccount: PublicKey;
2186
- tokenPermissions: {
2187
- allowDeposits: boolean;
2188
- allowWithdrawal: boolean;
2189
- allowRewardWithdrawal: boolean;
2190
- };
2191
- withdrawTimeLimit: BN;
2192
- withdrawInstantFee: BN;
2193
- withdrawInstantFeeEarned: BN;
2194
- stakeLevel: BN[];
2195
- tokensStaked: {
2196
- pendingActivation: BN;
2197
- activeAmount: BN;
2198
- pendingDeactivation: BN;
2199
- deactivatedAmount: BN;
2200
- };
2201
- rewardTokensToDistribute: BN;
2202
- rewardTokensPaid: BN;
2203
- tokensToDistribute: BN;
2204
- tokensDistributed: BN;
2205
- rewardTokensDistributed: BN;
2206
- revenueTokenAccountBump: number;
2207
- revenuePerFafStaked: BN;
2208
- revenueAccrued: BN;
2209
- revenueDistributed: BN;
2210
- revenuePaid: BN;
2211
- nftMint: PublicKey;
2212
- voltagePoints: BN;
2213
- stats: {
2214
- volumeUsd: BN;
2215
- lpRewardsUsd: BN;
2216
- referralRebateUsd: BN;
2217
- };
2218
- snapshot: {
2219
- volumeUsd: BN;
2220
- lpRewardsUsd: BN;
2221
- referralRebateUsd: BN;
2222
- };
2223
- timestamp: BN;
2224
- counter: BN;
2225
- tokenStakeAccount: PublicKey;
2226
- burnt: boolean;
2227
- isSwapFeeExempt: boolean;
2228
- isDepositFeeExempt: boolean;
2229
- isWithdrawalFeeExempt: boolean;
2230
- }>;
2231
- getUserPosition: (owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side) => Promise<{
2232
- pool: PublicKey;
2233
- mint: PublicKey;
2234
- tokenAccount: PublicKey;
2235
- decimals: number;
2236
- isStable: boolean;
2237
- depegAdjustment: boolean;
2238
- isVirtual: boolean;
2239
- distributeRewards: boolean;
2240
- oracle: {
2241
- intOracleAccount: PublicKey;
2242
- extOracleAccount: PublicKey;
2243
- oracleType: {
2244
- none?: Record<string, never>;
2245
- custom?: Record<string, never>;
2246
- pyth?: Record<string, never>;
2247
- };
2248
- maxDivergenceBps: BN;
2249
- maxConfBps: BN;
2250
- maxPriceAgeSec: number;
2251
- maxBackupAgeSec: number;
2252
- };
2253
- pricing: {
2254
- tradeSpreadMin: BN;
2255
- tradeSpreadMax: BN;
2256
- swapSpread: BN;
2257
- minInitLeverage: number;
2258
- minInitDegenLeverage: number;
2259
- maxInitLeverage: number;
2260
- maxInitDegenLeverage: number;
2261
- maxLeverage: number;
2262
- maxDegenLeverage: number;
2263
- minCollateralUsd: number;
2264
- minDegenCollateralUsd: number;
2265
- delaySeconds: BN;
2266
- maxUtilization: number;
2267
- degenPositionFactor: number;
2268
- degenExposureFactor: number;
2269
- maxPositionSizeUsd: BN;
2270
- maxExposureUsd: BN;
2271
- };
2272
- permissions: {
2273
- allowSwap: boolean;
2274
- allowAddLiquidity: boolean;
2275
- allowRemoveLiquidity: boolean;
2276
- allowOpenPosition: boolean;
2277
- allowClosePosition: boolean;
2278
- allowCollateralWithdrawal: boolean;
2279
- allowSizeChange: boolean;
2280
- allowLiquidation: boolean;
2281
- allowLpStaking: boolean;
2282
- allowFeeDistribution: boolean;
2283
- allowUngatedTrading: boolean;
2284
- allowFeeDiscounts: boolean;
2285
- allowReferralRebates: boolean;
2286
- } | {
2287
- allowOpenPosition: boolean;
2288
- allowClosePosition: boolean;
2289
- allowCollateralWithdrawal: boolean;
2290
- allowSizeChange: boolean;
2291
- };
2292
- fees: {
2293
- mode: {
2294
- fixed?: Record<string, never>;
2295
- linear?: Record<string, never>;
2296
- };
2297
- swapIn: {
2298
- minFee: BN;
2299
- targetFee: BN;
2300
- maxFee: BN;
2301
- };
2302
- swapOut: {
2303
- minFee: BN;
2304
- targetFee: BN;
2305
- maxFee: BN;
2306
- };
2307
- stableSwapIn: {
2308
- minFee: BN;
2309
- targetFee: BN;
2310
- maxFee: BN;
2311
- };
2312
- stableSwapOut: {
2313
- minFee: BN;
2314
- targetFee: BN;
2315
- maxFee: BN;
2316
- };
2317
- addLiquidity: {
2318
- minFee: BN;
2319
- targetFee: BN;
2320
- maxFee: BN;
2321
- };
2322
- removeLiquidity: {
2323
- minFee: BN;
2324
- targetFee: BN;
2325
- maxFee: BN;
2326
- };
2327
- openPosition: BN;
2328
- closePosition: BN;
2329
- volatility: BN;
2330
- };
2331
- borrowRate: {
2332
- baseRate: BN;
2333
- slope1: BN;
2334
- slope2: BN;
2335
- optimalUtilization: BN;
2336
- };
2337
- rewardThreshold: BN;
2338
- assets: {
2339
- collateral: BN;
2340
- owned: BN;
2341
- locked: BN;
2342
- };
2343
- feesStats: {
2344
- accrued: BN;
2345
- distributed: BN;
2346
- paid: BN;
2347
- rewardPerLpStaked: BN;
2348
- protocolFee: BN;
2349
- };
2350
- borrowRateState: {
2351
- currentRate: BN;
2352
- cumulativeLockFee: BN;
2353
- lastUpdate: BN;
2354
- };
2355
- bump: number;
2356
- tokenAccountBump: number;
2357
- token22: boolean;
2358
- uid: number;
2359
- reservedAmount: BN;
2360
- minReserveUsd: BN;
2361
- limitPriceBufferBps: BN;
2362
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
2363
- owner: PublicKey;
2364
- stakeStats: {
2365
- pendingActivation: BN;
2366
- activeAmount: BN;
2367
- pendingDeactivation: BN;
2368
- deactivatedAmount: BN;
2369
- };
2370
- rewardSnapshot: BN;
2371
- unclaimedRewards: BN;
2372
- feeShareBps: BN;
2373
- isInitialized: number | boolean;
2374
- targetCustody: PublicKey;
2375
- collateralCustody: PublicKey;
2376
- side: {
2377
- none?: Record<string, never>;
2378
- long?: Record<string, never>;
2379
- short?: Record<string, never>;
2380
- };
2381
- correlation: boolean;
2382
- maxPayoffBps: BN;
2383
- degenExposureUsd: BN;
2384
- collectivePosition: {
2385
- openPositions: BN;
2386
- updateTime: BN;
2387
- averageEntryPrice: {
2388
- price: BN;
2389
- exponent: number;
2390
- };
2391
- sizeAmount: BN;
2392
- sizeUsd: BN;
2393
- lockedAmount: BN;
2394
- lockedUsd: BN;
2395
- collateralAmount: BN;
2396
- collateralLiabilityUsd: BN;
2397
- unsettledFeeUsd: BN;
2398
- cumulativeLockFeeSnapshot: BN;
2399
- sizeDecimals: number;
2400
- lockedDecimals: number;
2401
- collateralDecimals: number;
2402
- };
2403
- targetCustodyUid: number;
2404
- collateralCustodyUid: number;
2405
- padding2: number[] | BN[];
2406
- numSigners: number;
2407
- numSigned: number;
2408
- minSignatures: number;
2409
- instructionAccountsLen: number;
2410
- instructionDataLen: number;
2411
- instructionHash: BN;
2412
- signers: PublicKey[];
2413
- signed: number[];
2414
- price: BN;
2415
- expo: number;
2416
- conf: BN;
2417
- ema: BN;
2418
- publishTime: BN;
2419
- extOracleAccount: PublicKey;
2420
- market: PublicKey;
2421
- limitOrders: unknown;
2422
- takeProfitOrders: unknown;
2423
- stopLossOrders: unknown;
2424
- isInitialised: boolean;
2425
- openOrders: number;
2426
- openSl: number;
2427
- openTp: number;
2428
- inactiveSl: number;
2429
- inactiveTp: number;
2430
- activeOrders: number;
2431
- referenceTimestamp: BN;
2432
- executionCount: BN;
2433
- pools: PublicKey[];
2434
- collections: PublicKey[];
2435
- voltageMultiplier: {
2436
- volume: BN;
2437
- rewards: BN;
2438
- rebates: BN;
2439
- };
2440
- tradingDiscount: BN[];
2441
- referralRebate: BN[];
2442
- defaultRebate: BN;
2443
- inceptionTime: BN;
2444
- transferAuthorityBump: number;
2445
- perpetualsBump: number;
2446
- tradeLimit: number;
2447
- triggerOrderLimit: number;
2448
- rebateLimitUsd: number;
2449
- name: string;
2450
- lpMint: PublicKey;
2451
- oracleAuthority: PublicKey;
2452
- stakedLpVault: PublicKey;
2453
- rewardCustody: PublicKey;
2454
- custodies: PublicKey[];
2455
- ratios: {
2456
- target: BN;
2457
- min: BN;
2458
- max: BN;
2459
- }[];
2460
- markets: PublicKey[];
2461
- maxAumUsd: BN;
2462
- buffer: BN | number[] | number[];
2463
- rawAumUsd: BN;
2464
- equityUsd: BN;
2465
- totalStaked: {
2466
- pendingActivation: BN;
2467
- activeAmount: BN;
2468
- pendingDeactivation: BN;
2469
- deactivatedAmount: BN;
2470
- };
2471
- stakingFeeShareBps: BN;
2472
- lpMintBump: number;
2473
- stakedLpVaultBump: number;
2474
- vpVolumeFactor: number;
2475
- uniqueCustodyCount: number;
2476
- stakingFeeBoostBps: BN[];
2477
- compoundingMint: PublicKey;
2478
- compoundingLpVault: PublicKey;
2479
- compoundingStats: {
2480
- activeAmount: BN;
2481
- totalSupply: BN;
2482
- rewardSnapshot: BN;
2483
- feeShareBps: BN;
2484
- lastCompoundTime: BN;
2485
- };
2486
- compoundingMintBump: number;
2487
- compoundingLpVaultBump: number;
2488
- minLpPriceUsd: BN;
2489
- maxLpPriceUsd: BN;
2490
- lpPrice: BN;
2491
- compoundingLpPrice: BN;
2492
- lastUpdatedTimestamp: BN;
2493
- feesObligationUsd: BN;
2494
- rebateObligationUsd: BN;
2495
- thresholdUsd: BN;
2496
- delegate: PublicKey;
2497
- openTime: BN;
2498
- updateTime: BN;
2499
- entryPrice: {
2500
- price: BN;
2501
- exponent: number;
2502
- };
2503
- sizeAmount: BN;
2504
- sizeUsd: BN;
2505
- lockedAmount: BN;
2506
- lockedUsd: BN;
2507
- priceImpactUsd: BN;
2508
- collateralUsd: BN;
2509
- unsettledValueUsd: BN;
2510
- unsettledFeesUsd: BN;
2511
- cumulativeLockFeeSnapshot: BN;
2512
- degenSizeUsd: BN;
2513
- referencePrice: {
2514
- price: BN;
2515
- exponent: number;
2516
- };
2517
- priceImpactSet: number;
2518
- sizeDecimals: number;
2519
- lockedDecimals: number;
2520
- collateralDecimals: number;
2521
- key: PublicKey;
2522
- feeAmount: BN;
2523
- allowPayout: boolean;
2524
- availableUsd: BN;
2525
- availableAmount: BN;
2526
- refererTokenStakeAccount: PublicKey;
2527
- refererBoosterAccount: PublicKey;
2528
- level: number;
2529
- withdrawRequestCount: number;
2530
- withdrawRequest: unknown;
2531
- activeStakeAmount: BN;
2532
- updateTimestamp: BN;
2533
- tradeTimestamp: BN;
2534
- tradeCounter: number;
2535
- lastRewardEpochCount: number;
2536
- rewardTokens: BN;
2537
- unclaimedRevenueAmount: BN;
2538
- revenueSnapshot: BN;
2539
- claimableRebateUsd: BN;
2540
- tokenMint: PublicKey;
2541
- tokenVaultTokenAccount: PublicKey;
2542
- tokenPermissions: {
2543
- allowDeposits: boolean;
2544
- allowWithdrawal: boolean;
2545
- allowRewardWithdrawal: boolean;
2546
- };
2547
- withdrawTimeLimit: BN;
2548
- withdrawInstantFee: BN;
2549
- withdrawInstantFeeEarned: BN;
2550
- stakeLevel: BN[];
2551
- tokensStaked: {
2552
- pendingActivation: BN;
2553
- activeAmount: BN;
2554
- pendingDeactivation: BN;
2555
- deactivatedAmount: BN;
2556
- };
2557
- rewardTokensToDistribute: BN;
2558
- rewardTokensPaid: BN;
2559
- tokensToDistribute: BN;
2560
- tokensDistributed: BN;
2561
- rewardTokensDistributed: BN;
2562
- revenueTokenAccountBump: number;
2563
- revenuePerFafStaked: BN;
2564
- revenueAccrued: BN;
2565
- revenueDistributed: BN;
2566
- revenuePaid: BN;
2567
- nftMint: PublicKey;
2568
- voltagePoints: BN;
2569
- stats: {
2570
- volumeUsd: BN;
2571
- lpRewardsUsd: BN;
2572
- referralRebateUsd: BN;
2573
- };
2574
- snapshot: {
2575
- volumeUsd: BN;
2576
- lpRewardsUsd: BN;
2577
- referralRebateUsd: BN;
2578
- };
2579
- timestamp: BN;
2580
- counter: BN;
2581
- tokenStakeAccount: PublicKey;
2582
- burnt: boolean;
2583
- isSwapFeeExempt: boolean;
2584
- isDepositFeeExempt: boolean;
2585
- isWithdrawalFeeExempt: boolean;
2586
- }>;
2587
- getUserOrderAccount: (owner: PublicKey, targetCustody: PublicKey, collateralCustody: PublicKey, side: Side) => Promise<{
2588
- pool: PublicKey;
2589
- mint: PublicKey;
2590
- tokenAccount: PublicKey;
2591
- decimals: number;
2592
- isStable: boolean;
2593
- depegAdjustment: boolean;
2594
- isVirtual: boolean;
2595
- distributeRewards: boolean;
2596
- oracle: {
2597
- intOracleAccount: PublicKey;
2598
- extOracleAccount: PublicKey;
2599
- oracleType: {
2600
- none?: Record<string, never>;
2601
- custom?: Record<string, never>;
2602
- pyth?: Record<string, never>;
2603
- };
2604
- maxDivergenceBps: BN;
2605
- maxConfBps: BN;
2606
- maxPriceAgeSec: number;
2607
- maxBackupAgeSec: number;
2608
- };
2609
- pricing: {
2610
- tradeSpreadMin: BN;
2611
- tradeSpreadMax: BN;
2612
- swapSpread: BN;
2613
- minInitLeverage: number;
2614
- minInitDegenLeverage: number;
2615
- maxInitLeverage: number;
2616
- maxInitDegenLeverage: number;
2617
- maxLeverage: number;
2618
- maxDegenLeverage: number;
2619
- minCollateralUsd: number;
2620
- minDegenCollateralUsd: number;
2621
- delaySeconds: BN;
2622
- maxUtilization: number;
2623
- degenPositionFactor: number;
2624
- degenExposureFactor: number;
2625
- maxPositionSizeUsd: BN;
2626
- maxExposureUsd: BN;
2627
- };
2628
- permissions: {
2629
- allowSwap: boolean;
2630
- allowAddLiquidity: boolean;
2631
- allowRemoveLiquidity: boolean;
2632
- allowOpenPosition: boolean;
2633
- allowClosePosition: boolean;
2634
- allowCollateralWithdrawal: boolean;
2635
- allowSizeChange: boolean;
2636
- allowLiquidation: boolean;
2637
- allowLpStaking: boolean;
2638
- allowFeeDistribution: boolean;
2639
- allowUngatedTrading: boolean;
2640
- allowFeeDiscounts: boolean;
2641
- allowReferralRebates: boolean;
2642
- } | {
2643
- allowOpenPosition: boolean;
2644
- allowClosePosition: boolean;
2645
- allowCollateralWithdrawal: boolean;
2646
- allowSizeChange: boolean;
2647
- };
2648
- fees: {
2649
- mode: {
2650
- fixed?: Record<string, never>;
2651
- linear?: Record<string, never>;
2652
- };
2653
- swapIn: {
2654
- minFee: BN;
2655
- targetFee: BN;
2656
- maxFee: BN;
2657
- };
2658
- swapOut: {
2659
- minFee: BN;
2660
- targetFee: BN;
2661
- maxFee: BN;
2662
- };
2663
- stableSwapIn: {
2664
- minFee: BN;
2665
- targetFee: BN;
2666
- maxFee: BN;
2667
- };
2668
- stableSwapOut: {
2669
- minFee: BN;
2670
- targetFee: BN;
2671
- maxFee: BN;
2672
- };
2673
- addLiquidity: {
2674
- minFee: BN;
2675
- targetFee: BN;
2676
- maxFee: BN;
2677
- };
2678
- removeLiquidity: {
2679
- minFee: BN;
2680
- targetFee: BN;
2681
- maxFee: BN;
2682
- };
2683
- openPosition: BN;
2684
- closePosition: BN;
2685
- volatility: BN;
2686
- };
2687
- borrowRate: {
2688
- baseRate: BN;
2689
- slope1: BN;
2690
- slope2: BN;
2691
- optimalUtilization: BN;
2692
- };
2693
- rewardThreshold: BN;
2694
- assets: {
2695
- collateral: BN;
2696
- owned: BN;
2697
- locked: BN;
2698
- };
2699
- feesStats: {
2700
- accrued: BN;
2701
- distributed: BN;
2702
- paid: BN;
2703
- rewardPerLpStaked: BN;
2704
- protocolFee: BN;
2705
- };
2706
- borrowRateState: {
2707
- currentRate: BN;
2708
- cumulativeLockFee: BN;
2709
- lastUpdate: BN;
2710
- };
2711
- bump: number;
2712
- tokenAccountBump: number;
2713
- token22: boolean;
2714
- uid: number;
2715
- reservedAmount: BN;
2716
- minReserveUsd: BN;
2717
- limitPriceBufferBps: BN;
2718
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
2719
- owner: PublicKey;
2720
- stakeStats: {
2721
- pendingActivation: BN;
2722
- activeAmount: BN;
2723
- pendingDeactivation: BN;
2724
- deactivatedAmount: BN;
2725
- };
2726
- rewardSnapshot: BN;
2727
- unclaimedRewards: BN;
2728
- feeShareBps: BN;
2729
- isInitialized: number | boolean;
2730
- targetCustody: PublicKey;
2731
- collateralCustody: PublicKey;
2732
- side: {
2733
- none?: Record<string, never>;
2734
- long?: Record<string, never>;
2735
- short?: Record<string, never>;
2736
- };
2737
- correlation: boolean;
2738
- maxPayoffBps: BN;
2739
- degenExposureUsd: BN;
2740
- collectivePosition: {
2741
- openPositions: BN;
2742
- updateTime: BN;
2743
- averageEntryPrice: {
2744
- price: BN;
2745
- exponent: number;
2746
- };
2747
- sizeAmount: BN;
2748
- sizeUsd: BN;
2749
- lockedAmount: BN;
2750
- lockedUsd: BN;
2751
- collateralAmount: BN;
2752
- collateralLiabilityUsd: BN;
2753
- unsettledFeeUsd: BN;
2754
- cumulativeLockFeeSnapshot: BN;
2755
- sizeDecimals: number;
2756
- lockedDecimals: number;
2757
- collateralDecimals: number;
2758
- };
2759
- targetCustodyUid: number;
2760
- collateralCustodyUid: number;
2761
- padding2: number[] | BN[];
2762
- numSigners: number;
2763
- numSigned: number;
2764
- minSignatures: number;
2765
- instructionAccountsLen: number;
2766
- instructionDataLen: number;
2767
- instructionHash: BN;
2768
- signers: PublicKey[];
2769
- signed: number[];
2770
- price: BN;
2771
- expo: number;
2772
- conf: BN;
2773
- ema: BN;
2774
- publishTime: BN;
2775
- extOracleAccount: PublicKey;
2776
- market: PublicKey;
2777
- limitOrders: unknown;
2778
- takeProfitOrders: unknown;
2779
- stopLossOrders: unknown;
2780
- isInitialised: boolean;
2781
- openOrders: number;
2782
- openSl: number;
2783
- openTp: number;
2784
- inactiveSl: number;
2785
- inactiveTp: number;
2786
- activeOrders: number;
2787
- referenceTimestamp: BN;
2788
- executionCount: BN;
2789
- pools: PublicKey[];
2790
- collections: PublicKey[];
2791
- voltageMultiplier: {
2792
- volume: BN;
2793
- rewards: BN;
2794
- rebates: BN;
2795
- };
2796
- tradingDiscount: BN[];
2797
- referralRebate: BN[];
2798
- defaultRebate: BN;
2799
- inceptionTime: BN;
2800
- transferAuthorityBump: number;
2801
- perpetualsBump: number;
2802
- tradeLimit: number;
2803
- triggerOrderLimit: number;
2804
- rebateLimitUsd: number;
2805
- name: string;
2806
- lpMint: PublicKey;
2807
- oracleAuthority: PublicKey;
2808
- stakedLpVault: PublicKey;
2809
- rewardCustody: PublicKey;
2810
- custodies: PublicKey[];
2811
- ratios: {
2812
- target: BN;
2813
- min: BN;
2814
- max: BN;
2815
- }[];
2816
- markets: PublicKey[];
2817
- maxAumUsd: BN;
2818
- buffer: BN | number[] | number[];
2819
- rawAumUsd: BN;
2820
- equityUsd: BN;
2821
- totalStaked: {
2822
- pendingActivation: BN;
2823
- activeAmount: BN;
2824
- pendingDeactivation: BN;
2825
- deactivatedAmount: BN;
2826
- };
2827
- stakingFeeShareBps: BN;
2828
- lpMintBump: number;
2829
- stakedLpVaultBump: number;
2830
- vpVolumeFactor: number;
2831
- uniqueCustodyCount: number;
2832
- stakingFeeBoostBps: BN[];
2833
- compoundingMint: PublicKey;
2834
- compoundingLpVault: PublicKey;
2835
- compoundingStats: {
2836
- activeAmount: BN;
2837
- totalSupply: BN;
2838
- rewardSnapshot: BN;
2839
- feeShareBps: BN;
2840
- lastCompoundTime: BN;
2841
- };
2842
- compoundingMintBump: number;
2843
- compoundingLpVaultBump: number;
2844
- minLpPriceUsd: BN;
2845
- maxLpPriceUsd: BN;
2846
- lpPrice: BN;
2847
- compoundingLpPrice: BN;
2848
- lastUpdatedTimestamp: BN;
2849
- feesObligationUsd: BN;
2850
- rebateObligationUsd: BN;
2851
- thresholdUsd: BN;
2852
- delegate: PublicKey;
2853
- openTime: BN;
2854
- updateTime: BN;
2855
- entryPrice: {
2856
- price: BN;
2857
- exponent: number;
2858
- };
2859
- sizeAmount: BN;
2860
- sizeUsd: BN;
2861
- lockedAmount: BN;
2862
- lockedUsd: BN;
2863
- priceImpactUsd: BN;
2864
- collateralUsd: BN;
2865
- unsettledValueUsd: BN;
2866
- unsettledFeesUsd: BN;
2867
- cumulativeLockFeeSnapshot: BN;
2868
- degenSizeUsd: BN;
2869
- referencePrice: {
2870
- price: BN;
2871
- exponent: number;
2872
- };
2873
- priceImpactSet: number;
2874
- sizeDecimals: number;
2875
- lockedDecimals: number;
2876
- collateralDecimals: number;
2877
- key: PublicKey;
2878
- feeAmount: BN;
2879
- allowPayout: boolean;
2880
- availableUsd: BN;
2881
- availableAmount: BN;
2882
- refererTokenStakeAccount: PublicKey;
2883
- refererBoosterAccount: PublicKey;
2884
- level: number;
2885
- withdrawRequestCount: number;
2886
- withdrawRequest: unknown;
2887
- activeStakeAmount: BN;
2888
- updateTimestamp: BN;
2889
- tradeTimestamp: BN;
2890
- tradeCounter: number;
2891
- lastRewardEpochCount: number;
2892
- rewardTokens: BN;
2893
- unclaimedRevenueAmount: BN;
2894
- revenueSnapshot: BN;
2895
- claimableRebateUsd: BN;
2896
- tokenMint: PublicKey;
2897
- tokenVaultTokenAccount: PublicKey;
2898
- tokenPermissions: {
2899
- allowDeposits: boolean;
2900
- allowWithdrawal: boolean;
2901
- allowRewardWithdrawal: boolean;
2902
- };
2903
- withdrawTimeLimit: BN;
2904
- withdrawInstantFee: BN;
2905
- withdrawInstantFeeEarned: BN;
2906
- stakeLevel: BN[];
2907
- tokensStaked: {
2908
- pendingActivation: BN;
2909
- activeAmount: BN;
2910
- pendingDeactivation: BN;
2911
- deactivatedAmount: BN;
2912
- };
2913
- rewardTokensToDistribute: BN;
2914
- rewardTokensPaid: BN;
2915
- tokensToDistribute: BN;
2916
- tokensDistributed: BN;
2917
- rewardTokensDistributed: BN;
2918
- revenueTokenAccountBump: number;
2919
- revenuePerFafStaked: BN;
2920
- revenueAccrued: BN;
2921
- revenueDistributed: BN;
2922
- revenuePaid: BN;
2923
- nftMint: PublicKey;
2924
- voltagePoints: BN;
2925
- stats: {
2926
- volumeUsd: BN;
2927
- lpRewardsUsd: BN;
2928
- referralRebateUsd: BN;
2929
- };
2930
- snapshot: {
2931
- volumeUsd: BN;
2932
- lpRewardsUsd: BN;
2933
- referralRebateUsd: BN;
2934
- };
2935
- timestamp: BN;
2936
- counter: BN;
2937
- tokenStakeAccount: PublicKey;
2938
- burnt: boolean;
2939
- isSwapFeeExempt: boolean;
2940
- isDepositFeeExempt: boolean;
2941
- isWithdrawalFeeExempt: boolean;
2942
- }>;
2943
- getUserPositions: (wallet: PublicKey, poolConfig: PoolConfig) => Promise<{
2944
- owner: PublicKey;
2945
- market: PublicKey;
2946
- delegate: PublicKey;
2947
- openTime: BN;
2948
- updateTime: BN;
2949
- entryPrice: {
2950
- price: BN;
2951
- exponent: number;
2952
- };
2953
- sizeAmount: BN;
2954
- sizeUsd: BN;
2955
- lockedAmount: BN;
2956
- lockedUsd: BN;
2957
- priceImpactUsd: BN;
2958
- collateralUsd: BN;
2959
- unsettledValueUsd: BN;
2960
- unsettledFeesUsd: BN;
2961
- cumulativeLockFeeSnapshot: BN;
2962
- degenSizeUsd: BN;
2963
- referencePrice: {
2964
- price: BN;
2965
- exponent: number;
2966
- };
2967
- buffer: number[];
2968
- priceImpactSet: number;
2969
- sizeDecimals: number;
2970
- lockedDecimals: number;
2971
- collateralDecimals: number;
2972
- bump: number;
2973
- padding: number[];
2974
- pubkey: PublicKey;
2975
- }[]>;
2976
- getUserOrderAccounts: (wallet: PublicKey, poolConfig: PoolConfig) => Promise<{
2977
- owner: PublicKey;
2978
- market: PublicKey;
2979
- limitOrders: unknown;
2980
- takeProfitOrders: unknown;
2981
- stopLossOrders: unknown;
2982
- isInitialised: boolean;
2983
- openOrders: number;
2984
- openSl: number;
2985
- openTp: number;
2986
- inactiveSl: number;
2987
- inactiveTp: number;
2988
- activeOrders: number;
2989
- bump: number;
2990
- referenceTimestamp: BN;
2991
- executionCount: BN;
2992
- padding: BN[];
2993
- pubkey: PublicKey;
2994
- }[]>;
2995
- getAllPositions: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
2996
- pool: PublicKey;
2997
- mint: PublicKey;
2998
- tokenAccount: PublicKey;
2999
- decimals: number;
3000
- isStable: boolean;
3001
- depegAdjustment: boolean;
3002
- isVirtual: boolean;
3003
- distributeRewards: boolean;
3004
- oracle: {
3005
- intOracleAccount: PublicKey;
3006
- extOracleAccount: PublicKey;
3007
- oracleType: {
3008
- none?: Record<string, never>;
3009
- custom?: Record<string, never>;
3010
- pyth?: Record<string, never>;
3011
- };
3012
- maxDivergenceBps: BN;
3013
- maxConfBps: BN;
3014
- maxPriceAgeSec: number;
3015
- maxBackupAgeSec: number;
3016
- };
3017
- pricing: {
3018
- tradeSpreadMin: BN;
3019
- tradeSpreadMax: BN;
3020
- swapSpread: BN;
3021
- minInitLeverage: number;
3022
- minInitDegenLeverage: number;
3023
- maxInitLeverage: number;
3024
- maxInitDegenLeverage: number;
3025
- maxLeverage: number;
3026
- maxDegenLeverage: number;
3027
- minCollateralUsd: number;
3028
- minDegenCollateralUsd: number;
3029
- delaySeconds: BN;
3030
- maxUtilization: number;
3031
- degenPositionFactor: number;
3032
- degenExposureFactor: number;
3033
- maxPositionSizeUsd: BN;
3034
- maxExposureUsd: BN;
3035
- };
3036
- permissions: {
3037
- allowSwap: boolean;
3038
- allowAddLiquidity: boolean;
3039
- allowRemoveLiquidity: boolean;
3040
- allowOpenPosition: boolean;
3041
- allowClosePosition: boolean;
3042
- allowCollateralWithdrawal: boolean;
3043
- allowSizeChange: boolean;
3044
- allowLiquidation: boolean;
3045
- allowLpStaking: boolean;
3046
- allowFeeDistribution: boolean;
3047
- allowUngatedTrading: boolean;
3048
- allowFeeDiscounts: boolean;
3049
- allowReferralRebates: boolean;
3050
- } | {
3051
- allowOpenPosition: boolean;
3052
- allowClosePosition: boolean;
3053
- allowCollateralWithdrawal: boolean;
3054
- allowSizeChange: boolean;
3055
- };
3056
- fees: {
3057
- mode: {
3058
- fixed?: Record<string, never>;
3059
- linear?: Record<string, never>;
3060
- };
3061
- swapIn: {
3062
- minFee: BN;
3063
- targetFee: BN;
3064
- maxFee: BN;
3065
- };
3066
- swapOut: {
3067
- minFee: BN;
3068
- targetFee: BN;
3069
- maxFee: BN;
3070
- };
3071
- stableSwapIn: {
3072
- minFee: BN;
3073
- targetFee: BN;
3074
- maxFee: BN;
3075
- };
3076
- stableSwapOut: {
3077
- minFee: BN;
3078
- targetFee: BN;
3079
- maxFee: BN;
3080
- };
3081
- addLiquidity: {
3082
- minFee: BN;
3083
- targetFee: BN;
3084
- maxFee: BN;
3085
- };
3086
- removeLiquidity: {
3087
- minFee: BN;
3088
- targetFee: BN;
3089
- maxFee: BN;
3090
- };
3091
- openPosition: BN;
3092
- closePosition: BN;
3093
- volatility: BN;
3094
- };
3095
- borrowRate: {
3096
- baseRate: BN;
3097
- slope1: BN;
3098
- slope2: BN;
3099
- optimalUtilization: BN;
3100
- };
3101
- rewardThreshold: BN;
3102
- assets: {
3103
- collateral: BN;
3104
- owned: BN;
3105
- locked: BN;
3106
- };
3107
- feesStats: {
3108
- accrued: BN;
3109
- distributed: BN;
3110
- paid: BN;
3111
- rewardPerLpStaked: BN;
3112
- protocolFee: BN;
3113
- };
3114
- borrowRateState: {
3115
- currentRate: BN;
3116
- cumulativeLockFee: BN;
3117
- lastUpdate: BN;
3118
- };
3119
- bump: number;
3120
- tokenAccountBump: number;
3121
- token22: boolean;
3122
- uid: number;
3123
- reservedAmount: BN;
3124
- minReserveUsd: BN;
3125
- limitPriceBufferBps: BN;
3126
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3127
- owner: PublicKey;
3128
- stakeStats: {
3129
- pendingActivation: BN;
3130
- activeAmount: BN;
3131
- pendingDeactivation: BN;
3132
- deactivatedAmount: BN;
3133
- };
3134
- rewardSnapshot: BN;
3135
- unclaimedRewards: BN;
3136
- feeShareBps: BN;
3137
- isInitialized: number | boolean;
3138
- targetCustody: PublicKey;
3139
- collateralCustody: PublicKey;
3140
- side: {
3141
- none?: Record<string, never>;
3142
- long?: Record<string, never>;
3143
- short?: Record<string, never>;
3144
- };
3145
- correlation: boolean;
3146
- maxPayoffBps: BN;
3147
- degenExposureUsd: BN;
3148
- collectivePosition: {
3149
- openPositions: BN;
3150
- updateTime: BN;
3151
- averageEntryPrice: {
3152
- price: BN;
3153
- exponent: number;
3154
- };
3155
- sizeAmount: BN;
3156
- sizeUsd: BN;
3157
- lockedAmount: BN;
3158
- lockedUsd: BN;
3159
- collateralAmount: BN;
3160
- collateralLiabilityUsd: BN;
3161
- unsettledFeeUsd: BN;
3162
- cumulativeLockFeeSnapshot: BN;
3163
- sizeDecimals: number;
3164
- lockedDecimals: number;
3165
- collateralDecimals: number;
3166
- };
3167
- targetCustodyUid: number;
3168
- collateralCustodyUid: number;
3169
- padding2: number[] | BN[];
3170
- numSigners: number;
3171
- numSigned: number;
3172
- minSignatures: number;
3173
- instructionAccountsLen: number;
3174
- instructionDataLen: number;
3175
- instructionHash: BN;
3176
- signers: PublicKey[];
3177
- signed: number[];
3178
- price: BN;
3179
- expo: number;
3180
- conf: BN;
3181
- ema: BN;
3182
- publishTime: BN;
3183
- extOracleAccount: PublicKey;
3184
- market: PublicKey;
3185
- limitOrders: unknown;
3186
- takeProfitOrders: unknown;
3187
- stopLossOrders: unknown;
3188
- isInitialised: boolean;
3189
- openOrders: number;
3190
- openSl: number;
3191
- openTp: number;
3192
- inactiveSl: number;
3193
- inactiveTp: number;
3194
- activeOrders: number;
3195
- referenceTimestamp: BN;
3196
- executionCount: BN;
3197
- pools: PublicKey[];
3198
- collections: PublicKey[];
3199
- voltageMultiplier: {
3200
- volume: BN;
3201
- rewards: BN;
3202
- rebates: BN;
3203
- };
3204
- tradingDiscount: BN[];
3205
- referralRebate: BN[];
3206
- defaultRebate: BN;
3207
- inceptionTime: BN;
3208
- transferAuthorityBump: number;
3209
- perpetualsBump: number;
3210
- tradeLimit: number;
3211
- triggerOrderLimit: number;
3212
- rebateLimitUsd: number;
3213
- name: string;
3214
- lpMint: PublicKey;
3215
- oracleAuthority: PublicKey;
3216
- stakedLpVault: PublicKey;
3217
- rewardCustody: PublicKey;
3218
- custodies: PublicKey[];
3219
- ratios: {
3220
- target: BN;
3221
- min: BN;
3222
- max: BN;
3223
- }[];
3224
- markets: PublicKey[];
3225
- maxAumUsd: BN;
3226
- buffer: BN | number[] | number[];
3227
- rawAumUsd: BN;
3228
- equityUsd: BN;
3229
- totalStaked: {
3230
- pendingActivation: BN;
3231
- activeAmount: BN;
3232
- pendingDeactivation: BN;
3233
- deactivatedAmount: BN;
3234
- };
3235
- stakingFeeShareBps: BN;
3236
- lpMintBump: number;
3237
- stakedLpVaultBump: number;
3238
- vpVolumeFactor: number;
3239
- uniqueCustodyCount: number;
3240
- stakingFeeBoostBps: BN[];
3241
- compoundingMint: PublicKey;
3242
- compoundingLpVault: PublicKey;
3243
- compoundingStats: {
3244
- activeAmount: BN;
3245
- totalSupply: BN;
3246
- rewardSnapshot: BN;
3247
- feeShareBps: BN;
3248
- lastCompoundTime: BN;
3249
- };
3250
- compoundingMintBump: number;
3251
- compoundingLpVaultBump: number;
3252
- minLpPriceUsd: BN;
3253
- maxLpPriceUsd: BN;
3254
- lpPrice: BN;
3255
- compoundingLpPrice: BN;
3256
- lastUpdatedTimestamp: BN;
3257
- feesObligationUsd: BN;
3258
- rebateObligationUsd: BN;
3259
- thresholdUsd: BN;
3260
- delegate: PublicKey;
3261
- openTime: BN;
3262
- updateTime: BN;
3263
- entryPrice: {
3264
- price: BN;
3265
- exponent: number;
3266
- };
3267
- sizeAmount: BN;
3268
- sizeUsd: BN;
3269
- lockedAmount: BN;
3270
- lockedUsd: BN;
3271
- priceImpactUsd: BN;
3272
- collateralUsd: BN;
3273
- unsettledValueUsd: BN;
3274
- unsettledFeesUsd: BN;
3275
- cumulativeLockFeeSnapshot: BN;
3276
- degenSizeUsd: BN;
3277
- referencePrice: {
3278
- price: BN;
3279
- exponent: number;
3280
- };
3281
- priceImpactSet: number;
3282
- sizeDecimals: number;
3283
- lockedDecimals: number;
3284
- collateralDecimals: number;
3285
- key: PublicKey;
3286
- feeAmount: BN;
3287
- allowPayout: boolean;
3288
- availableUsd: BN;
3289
- availableAmount: BN;
3290
- refererTokenStakeAccount: PublicKey;
3291
- refererBoosterAccount: PublicKey;
3292
- level: number;
3293
- withdrawRequestCount: number;
3294
- withdrawRequest: unknown;
3295
- activeStakeAmount: BN;
3296
- updateTimestamp: BN;
3297
- tradeTimestamp: BN;
3298
- tradeCounter: number;
3299
- lastRewardEpochCount: number;
3300
- rewardTokens: BN;
3301
- unclaimedRevenueAmount: BN;
3302
- revenueSnapshot: BN;
3303
- claimableRebateUsd: BN;
3304
- tokenMint: PublicKey;
3305
- tokenVaultTokenAccount: PublicKey;
3306
- tokenPermissions: {
3307
- allowDeposits: boolean;
3308
- allowWithdrawal: boolean;
3309
- allowRewardWithdrawal: boolean;
3310
- };
3311
- withdrawTimeLimit: BN;
3312
- withdrawInstantFee: BN;
3313
- withdrawInstantFeeEarned: BN;
3314
- stakeLevel: BN[];
3315
- tokensStaked: {
3316
- pendingActivation: BN;
3317
- activeAmount: BN;
3318
- pendingDeactivation: BN;
3319
- deactivatedAmount: BN;
3320
- };
3321
- rewardTokensToDistribute: BN;
3322
- rewardTokensPaid: BN;
3323
- tokensToDistribute: BN;
3324
- tokensDistributed: BN;
3325
- rewardTokensDistributed: BN;
3326
- revenueTokenAccountBump: number;
3327
- revenuePerFafStaked: BN;
3328
- revenueAccrued: BN;
3329
- revenueDistributed: BN;
3330
- revenuePaid: BN;
3331
- nftMint: PublicKey;
3332
- voltagePoints: BN;
3333
- stats: {
3334
- volumeUsd: BN;
3335
- lpRewardsUsd: BN;
3336
- referralRebateUsd: BN;
3337
- };
3338
- snapshot: {
3339
- volumeUsd: BN;
3340
- lpRewardsUsd: BN;
3341
- referralRebateUsd: BN;
3342
- };
3343
- timestamp: BN;
3344
- counter: BN;
3345
- tokenStakeAccount: PublicKey;
3346
- burnt: boolean;
3347
- isSwapFeeExempt: boolean;
3348
- isDepositFeeExempt: boolean;
3349
- isWithdrawalFeeExempt: boolean;
3350
- }>[]>;
3351
- getAllActivePositions: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
3352
- pool: PublicKey;
3353
- mint: PublicKey;
3354
- tokenAccount: PublicKey;
3355
- decimals: number;
3356
- isStable: boolean;
3357
- depegAdjustment: boolean;
3358
- isVirtual: boolean;
3359
- distributeRewards: boolean;
3360
- oracle: {
3361
- intOracleAccount: PublicKey;
3362
- extOracleAccount: PublicKey;
3363
- oracleType: {
3364
- none?: Record<string, never>;
3365
- custom?: Record<string, never>;
3366
- pyth?: Record<string, never>;
3367
- };
3368
- maxDivergenceBps: BN;
3369
- maxConfBps: BN;
3370
- maxPriceAgeSec: number;
3371
- maxBackupAgeSec: number;
3372
- };
3373
- pricing: {
3374
- tradeSpreadMin: BN;
3375
- tradeSpreadMax: BN;
3376
- swapSpread: BN;
3377
- minInitLeverage: number;
3378
- minInitDegenLeverage: number;
3379
- maxInitLeverage: number;
3380
- maxInitDegenLeverage: number;
3381
- maxLeverage: number;
3382
- maxDegenLeverage: number;
3383
- minCollateralUsd: number;
3384
- minDegenCollateralUsd: number;
3385
- delaySeconds: BN;
3386
- maxUtilization: number;
3387
- degenPositionFactor: number;
3388
- degenExposureFactor: number;
3389
- maxPositionSizeUsd: BN;
3390
- maxExposureUsd: BN;
3391
- };
3392
- permissions: {
3393
- allowSwap: boolean;
3394
- allowAddLiquidity: boolean;
3395
- allowRemoveLiquidity: boolean;
3396
- allowOpenPosition: boolean;
3397
- allowClosePosition: boolean;
3398
- allowCollateralWithdrawal: boolean;
3399
- allowSizeChange: boolean;
3400
- allowLiquidation: boolean;
3401
- allowLpStaking: boolean;
3402
- allowFeeDistribution: boolean;
3403
- allowUngatedTrading: boolean;
3404
- allowFeeDiscounts: boolean;
3405
- allowReferralRebates: boolean;
3406
- } | {
3407
- allowOpenPosition: boolean;
3408
- allowClosePosition: boolean;
3409
- allowCollateralWithdrawal: boolean;
3410
- allowSizeChange: boolean;
3411
- };
3412
- fees: {
3413
- mode: {
3414
- fixed?: Record<string, never>;
3415
- linear?: Record<string, never>;
3416
- };
3417
- swapIn: {
3418
- minFee: BN;
3419
- targetFee: BN;
3420
- maxFee: BN;
3421
- };
3422
- swapOut: {
3423
- minFee: BN;
3424
- targetFee: BN;
3425
- maxFee: BN;
3426
- };
3427
- stableSwapIn: {
3428
- minFee: BN;
3429
- targetFee: BN;
3430
- maxFee: BN;
3431
- };
3432
- stableSwapOut: {
3433
- minFee: BN;
3434
- targetFee: BN;
3435
- maxFee: BN;
3436
- };
3437
- addLiquidity: {
3438
- minFee: BN;
3439
- targetFee: BN;
3440
- maxFee: BN;
3441
- };
3442
- removeLiquidity: {
3443
- minFee: BN;
3444
- targetFee: BN;
3445
- maxFee: BN;
3446
- };
3447
- openPosition: BN;
3448
- closePosition: BN;
3449
- volatility: BN;
3450
- };
3451
- borrowRate: {
3452
- baseRate: BN;
3453
- slope1: BN;
3454
- slope2: BN;
3455
- optimalUtilization: BN;
3456
- };
3457
- rewardThreshold: BN;
3458
- assets: {
3459
- collateral: BN;
3460
- owned: BN;
3461
- locked: BN;
3462
- };
3463
- feesStats: {
3464
- accrued: BN;
3465
- distributed: BN;
3466
- paid: BN;
3467
- rewardPerLpStaked: BN;
3468
- protocolFee: BN;
3469
- };
3470
- borrowRateState: {
3471
- currentRate: BN;
3472
- cumulativeLockFee: BN;
3473
- lastUpdate: BN;
3474
- };
3475
- bump: number;
3476
- tokenAccountBump: number;
3477
- token22: boolean;
3478
- uid: number;
3479
- reservedAmount: BN;
3480
- minReserveUsd: BN;
3481
- limitPriceBufferBps: BN;
3482
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3483
- owner: PublicKey;
3484
- stakeStats: {
3485
- pendingActivation: BN;
3486
- activeAmount: BN;
3487
- pendingDeactivation: BN;
3488
- deactivatedAmount: BN;
3489
- };
3490
- rewardSnapshot: BN;
3491
- unclaimedRewards: BN;
3492
- feeShareBps: BN;
3493
- isInitialized: number | boolean;
3494
- targetCustody: PublicKey;
3495
- collateralCustody: PublicKey;
3496
- side: {
3497
- none?: Record<string, never>;
3498
- long?: Record<string, never>;
3499
- short?: Record<string, never>;
3500
- };
3501
- correlation: boolean;
3502
- maxPayoffBps: BN;
3503
- degenExposureUsd: BN;
3504
- collectivePosition: {
3505
- openPositions: BN;
3506
- updateTime: BN;
3507
- averageEntryPrice: {
3508
- price: BN;
3509
- exponent: number;
3510
- };
3511
- sizeAmount: BN;
3512
- sizeUsd: BN;
3513
- lockedAmount: BN;
3514
- lockedUsd: BN;
3515
- collateralAmount: BN;
3516
- collateralLiabilityUsd: BN;
3517
- unsettledFeeUsd: BN;
3518
- cumulativeLockFeeSnapshot: BN;
3519
- sizeDecimals: number;
3520
- lockedDecimals: number;
3521
- collateralDecimals: number;
3522
- };
3523
- targetCustodyUid: number;
3524
- collateralCustodyUid: number;
3525
- padding2: number[] | BN[];
3526
- numSigners: number;
3527
- numSigned: number;
3528
- minSignatures: number;
3529
- instructionAccountsLen: number;
3530
- instructionDataLen: number;
3531
- instructionHash: BN;
3532
- signers: PublicKey[];
3533
- signed: number[];
3534
- price: BN;
3535
- expo: number;
3536
- conf: BN;
3537
- ema: BN;
3538
- publishTime: BN;
3539
- extOracleAccount: PublicKey;
3540
- market: PublicKey;
3541
- limitOrders: unknown;
3542
- takeProfitOrders: unknown;
3543
- stopLossOrders: unknown;
3544
- isInitialised: boolean;
3545
- openOrders: number;
3546
- openSl: number;
3547
- openTp: number;
3548
- inactiveSl: number;
3549
- inactiveTp: number;
3550
- activeOrders: number;
3551
- referenceTimestamp: BN;
3552
- executionCount: BN;
3553
- pools: PublicKey[];
3554
- collections: PublicKey[];
3555
- voltageMultiplier: {
3556
- volume: BN;
3557
- rewards: BN;
3558
- rebates: BN;
3559
- };
3560
- tradingDiscount: BN[];
3561
- referralRebate: BN[];
3562
- defaultRebate: BN;
3563
- inceptionTime: BN;
3564
- transferAuthorityBump: number;
3565
- perpetualsBump: number;
3566
- tradeLimit: number;
3567
- triggerOrderLimit: number;
3568
- rebateLimitUsd: number;
3569
- name: string;
3570
- lpMint: PublicKey;
3571
- oracleAuthority: PublicKey;
3572
- stakedLpVault: PublicKey;
3573
- rewardCustody: PublicKey;
3574
- custodies: PublicKey[];
3575
- ratios: {
3576
- target: BN;
3577
- min: BN;
3578
- max: BN;
3579
- }[];
3580
- markets: PublicKey[];
3581
- maxAumUsd: BN;
3582
- buffer: BN | number[] | number[];
3583
- rawAumUsd: BN;
3584
- equityUsd: BN;
3585
- totalStaked: {
3586
- pendingActivation: BN;
3587
- activeAmount: BN;
3588
- pendingDeactivation: BN;
3589
- deactivatedAmount: BN;
3590
- };
3591
- stakingFeeShareBps: BN;
3592
- lpMintBump: number;
3593
- stakedLpVaultBump: number;
3594
- vpVolumeFactor: number;
3595
- uniqueCustodyCount: number;
3596
- stakingFeeBoostBps: BN[];
3597
- compoundingMint: PublicKey;
3598
- compoundingLpVault: PublicKey;
3599
- compoundingStats: {
3600
- activeAmount: BN;
3601
- totalSupply: BN;
3602
- rewardSnapshot: BN;
3603
- feeShareBps: BN;
3604
- lastCompoundTime: BN;
3605
- };
3606
- compoundingMintBump: number;
3607
- compoundingLpVaultBump: number;
3608
- minLpPriceUsd: BN;
3609
- maxLpPriceUsd: BN;
3610
- lpPrice: BN;
3611
- compoundingLpPrice: BN;
3612
- lastUpdatedTimestamp: BN;
3613
- feesObligationUsd: BN;
3614
- rebateObligationUsd: BN;
3615
- thresholdUsd: BN;
3616
- delegate: PublicKey;
3617
- openTime: BN;
3618
- updateTime: BN;
3619
- entryPrice: {
3620
- price: BN;
3621
- exponent: number;
3622
- };
3623
- sizeAmount: BN;
3624
- sizeUsd: BN;
3625
- lockedAmount: BN;
3626
- lockedUsd: BN;
3627
- priceImpactUsd: BN;
3628
- collateralUsd: BN;
3629
- unsettledValueUsd: BN;
3630
- unsettledFeesUsd: BN;
3631
- cumulativeLockFeeSnapshot: BN;
3632
- degenSizeUsd: BN;
3633
- referencePrice: {
3634
- price: BN;
3635
- exponent: number;
3636
- };
3637
- priceImpactSet: number;
3638
- sizeDecimals: number;
3639
- lockedDecimals: number;
3640
- collateralDecimals: number;
3641
- key: PublicKey;
3642
- feeAmount: BN;
3643
- allowPayout: boolean;
3644
- availableUsd: BN;
3645
- availableAmount: BN;
3646
- refererTokenStakeAccount: PublicKey;
3647
- refererBoosterAccount: PublicKey;
3648
- level: number;
3649
- withdrawRequestCount: number;
3650
- withdrawRequest: unknown;
3651
- activeStakeAmount: BN;
3652
- updateTimestamp: BN;
3653
- tradeTimestamp: BN;
3654
- tradeCounter: number;
3655
- lastRewardEpochCount: number;
3656
- rewardTokens: BN;
3657
- unclaimedRevenueAmount: BN;
3658
- revenueSnapshot: BN;
3659
- claimableRebateUsd: BN;
3660
- tokenMint: PublicKey;
3661
- tokenVaultTokenAccount: PublicKey;
3662
- tokenPermissions: {
3663
- allowDeposits: boolean;
3664
- allowWithdrawal: boolean;
3665
- allowRewardWithdrawal: boolean;
3666
- };
3667
- withdrawTimeLimit: BN;
3668
- withdrawInstantFee: BN;
3669
- withdrawInstantFeeEarned: BN;
3670
- stakeLevel: BN[];
3671
- tokensStaked: {
3672
- pendingActivation: BN;
3673
- activeAmount: BN;
3674
- pendingDeactivation: BN;
3675
- deactivatedAmount: BN;
3676
- };
3677
- rewardTokensToDistribute: BN;
3678
- rewardTokensPaid: BN;
3679
- tokensToDistribute: BN;
3680
- tokensDistributed: BN;
3681
- rewardTokensDistributed: BN;
3682
- revenueTokenAccountBump: number;
3683
- revenuePerFafStaked: BN;
3684
- revenueAccrued: BN;
3685
- revenueDistributed: BN;
3686
- revenuePaid: BN;
3687
- nftMint: PublicKey;
3688
- voltagePoints: BN;
3689
- stats: {
3690
- volumeUsd: BN;
3691
- lpRewardsUsd: BN;
3692
- referralRebateUsd: BN;
3693
- };
3694
- snapshot: {
3695
- volumeUsd: BN;
3696
- lpRewardsUsd: BN;
3697
- referralRebateUsd: BN;
3698
- };
3699
- timestamp: BN;
3700
- counter: BN;
3701
- tokenStakeAccount: PublicKey;
3702
- burnt: boolean;
3703
- isSwapFeeExempt: boolean;
3704
- isDepositFeeExempt: boolean;
3705
- isWithdrawalFeeExempt: boolean;
3706
- }>[]>;
3707
- getAllPositionsByMarket: (marketKey: PublicKey) => Promise<import("@coral-xyz/anchor").ProgramAccount<{
3708
- pool: PublicKey;
3709
- mint: PublicKey;
3710
- tokenAccount: PublicKey;
3711
- decimals: number;
3712
- isStable: boolean;
3713
- depegAdjustment: boolean;
3714
- isVirtual: boolean;
3715
- distributeRewards: boolean;
3716
- oracle: {
3717
- intOracleAccount: PublicKey;
3718
- extOracleAccount: PublicKey;
3719
- oracleType: {
3720
- none?: Record<string, never>;
3721
- custom?: Record<string, never>;
3722
- pyth?: Record<string, never>;
3723
- };
3724
- maxDivergenceBps: BN;
3725
- maxConfBps: BN;
3726
- maxPriceAgeSec: number;
3727
- maxBackupAgeSec: number;
3728
- };
3729
- pricing: {
3730
- tradeSpreadMin: BN;
3731
- tradeSpreadMax: BN;
3732
- swapSpread: BN;
3733
- minInitLeverage: number;
3734
- minInitDegenLeverage: number;
3735
- maxInitLeverage: number;
3736
- maxInitDegenLeverage: number;
3737
- maxLeverage: number;
3738
- maxDegenLeverage: number;
3739
- minCollateralUsd: number;
3740
- minDegenCollateralUsd: number;
3741
- delaySeconds: BN;
3742
- maxUtilization: number;
3743
- degenPositionFactor: number;
3744
- degenExposureFactor: number;
3745
- maxPositionSizeUsd: BN;
3746
- maxExposureUsd: BN;
3747
- };
3748
- permissions: {
3749
- allowSwap: boolean;
3750
- allowAddLiquidity: boolean;
3751
- allowRemoveLiquidity: boolean;
3752
- allowOpenPosition: boolean;
3753
- allowClosePosition: boolean;
3754
- allowCollateralWithdrawal: boolean;
3755
- allowSizeChange: boolean;
3756
- allowLiquidation: boolean;
3757
- allowLpStaking: boolean;
3758
- allowFeeDistribution: boolean;
3759
- allowUngatedTrading: boolean;
3760
- allowFeeDiscounts: boolean;
3761
- allowReferralRebates: boolean;
3762
- } | {
3763
- allowOpenPosition: boolean;
3764
- allowClosePosition: boolean;
3765
- allowCollateralWithdrawal: boolean;
3766
- allowSizeChange: boolean;
3767
- };
3768
- fees: {
3769
- mode: {
3770
- fixed?: Record<string, never>;
3771
- linear?: Record<string, never>;
3772
- };
3773
- swapIn: {
3774
- minFee: BN;
3775
- targetFee: BN;
3776
- maxFee: BN;
3777
- };
3778
- swapOut: {
3779
- minFee: BN;
3780
- targetFee: BN;
3781
- maxFee: BN;
3782
- };
3783
- stableSwapIn: {
3784
- minFee: BN;
3785
- targetFee: BN;
3786
- maxFee: BN;
3787
- };
3788
- stableSwapOut: {
3789
- minFee: BN;
3790
- targetFee: BN;
3791
- maxFee: BN;
3792
- };
3793
- addLiquidity: {
3794
- minFee: BN;
3795
- targetFee: BN;
3796
- maxFee: BN;
3797
- };
3798
- removeLiquidity: {
3799
- minFee: BN;
3800
- targetFee: BN;
3801
- maxFee: BN;
3802
- };
3803
- openPosition: BN;
3804
- closePosition: BN;
3805
- volatility: BN;
3806
- };
3807
- borrowRate: {
3808
- baseRate: BN;
3809
- slope1: BN;
3810
- slope2: BN;
3811
- optimalUtilization: BN;
3812
- };
3813
- rewardThreshold: BN;
3814
- assets: {
3815
- collateral: BN;
3816
- owned: BN;
3817
- locked: BN;
3818
- };
3819
- feesStats: {
3820
- accrued: BN;
3821
- distributed: BN;
3822
- paid: BN;
3823
- rewardPerLpStaked: BN;
3824
- protocolFee: BN;
3825
- };
3826
- borrowRateState: {
3827
- currentRate: BN;
3828
- cumulativeLockFee: BN;
3829
- lastUpdate: BN;
3830
- };
3831
- bump: number;
3832
- tokenAccountBump: number;
3833
- token22: boolean;
3834
- uid: number;
3835
- reservedAmount: BN;
3836
- minReserveUsd: BN;
3837
- limitPriceBufferBps: BN;
3838
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
3839
- owner: PublicKey;
3840
- stakeStats: {
3841
- pendingActivation: BN;
3842
- activeAmount: BN;
3843
- pendingDeactivation: BN;
3844
- deactivatedAmount: BN;
3845
- };
3846
- rewardSnapshot: BN;
3847
- unclaimedRewards: BN;
3848
- feeShareBps: BN;
3849
- isInitialized: number | boolean;
3850
- targetCustody: PublicKey;
3851
- collateralCustody: PublicKey;
3852
- side: {
3853
- none?: Record<string, never>;
3854
- long?: Record<string, never>;
3855
- short?: Record<string, never>;
3856
- };
3857
- correlation: boolean;
3858
- maxPayoffBps: BN;
3859
- degenExposureUsd: BN;
3860
- collectivePosition: {
3861
- openPositions: BN;
3862
- updateTime: BN;
3863
- averageEntryPrice: {
3864
- price: BN;
3865
- exponent: number;
3866
- };
3867
- sizeAmount: BN;
3868
- sizeUsd: BN;
3869
- lockedAmount: BN;
3870
- lockedUsd: BN;
3871
- collateralAmount: BN;
3872
- collateralLiabilityUsd: BN;
3873
- unsettledFeeUsd: BN;
3874
- cumulativeLockFeeSnapshot: BN;
3875
- sizeDecimals: number;
3876
- lockedDecimals: number;
3877
- collateralDecimals: number;
3878
- };
3879
- targetCustodyUid: number;
3880
- collateralCustodyUid: number;
3881
- padding2: number[] | BN[];
3882
- numSigners: number;
3883
- numSigned: number;
3884
- minSignatures: number;
3885
- instructionAccountsLen: number;
3886
- instructionDataLen: number;
3887
- instructionHash: BN;
3888
- signers: PublicKey[];
3889
- signed: number[];
3890
- price: BN;
3891
- expo: number;
3892
- conf: BN;
3893
- ema: BN;
3894
- publishTime: BN;
3895
- extOracleAccount: PublicKey;
3896
- market: PublicKey;
3897
- limitOrders: unknown;
3898
- takeProfitOrders: unknown;
3899
- stopLossOrders: unknown;
3900
- isInitialised: boolean;
3901
- openOrders: number;
3902
- openSl: number;
3903
- openTp: number;
3904
- inactiveSl: number;
3905
- inactiveTp: number;
3906
- activeOrders: number;
3907
- referenceTimestamp: BN;
3908
- executionCount: BN;
3909
- pools: PublicKey[];
3910
- collections: PublicKey[];
3911
- voltageMultiplier: {
3912
- volume: BN;
3913
- rewards: BN;
3914
- rebates: BN;
3915
- };
3916
- tradingDiscount: BN[];
3917
- referralRebate: BN[];
3918
- defaultRebate: BN;
3919
- inceptionTime: BN;
3920
- transferAuthorityBump: number;
3921
- perpetualsBump: number;
3922
- tradeLimit: number;
3923
- triggerOrderLimit: number;
3924
- rebateLimitUsd: number;
3925
- name: string;
3926
- lpMint: PublicKey;
3927
- oracleAuthority: PublicKey;
3928
- stakedLpVault: PublicKey;
3929
- rewardCustody: PublicKey;
3930
- custodies: PublicKey[];
3931
- ratios: {
3932
- target: BN;
3933
- min: BN;
3934
- max: BN;
3935
- }[];
3936
- markets: PublicKey[];
3937
- maxAumUsd: BN;
3938
- buffer: BN | number[] | number[];
3939
- rawAumUsd: BN;
3940
- equityUsd: BN;
3941
- totalStaked: {
3942
- pendingActivation: BN;
3943
- activeAmount: BN;
3944
- pendingDeactivation: BN;
3945
- deactivatedAmount: BN;
3946
- };
3947
- stakingFeeShareBps: BN;
3948
- lpMintBump: number;
3949
- stakedLpVaultBump: number;
3950
- vpVolumeFactor: number;
3951
- uniqueCustodyCount: number;
3952
- stakingFeeBoostBps: BN[];
3953
- compoundingMint: PublicKey;
3954
- compoundingLpVault: PublicKey;
3955
- compoundingStats: {
3956
- activeAmount: BN;
3957
- totalSupply: BN;
3958
- rewardSnapshot: BN;
3959
- feeShareBps: BN;
3960
- lastCompoundTime: BN;
3961
- };
3962
- compoundingMintBump: number;
3963
- compoundingLpVaultBump: number;
3964
- minLpPriceUsd: BN;
3965
- maxLpPriceUsd: BN;
3966
- lpPrice: BN;
3967
- compoundingLpPrice: BN;
3968
- lastUpdatedTimestamp: BN;
3969
- feesObligationUsd: BN;
3970
- rebateObligationUsd: BN;
3971
- thresholdUsd: BN;
3972
- delegate: PublicKey;
3973
- openTime: BN;
3974
- updateTime: BN;
3975
- entryPrice: {
3976
- price: BN;
3977
- exponent: number;
3978
- };
3979
- sizeAmount: BN;
3980
- sizeUsd: BN;
3981
- lockedAmount: BN;
3982
- lockedUsd: BN;
3983
- priceImpactUsd: BN;
3984
- collateralUsd: BN;
3985
- unsettledValueUsd: BN;
3986
- unsettledFeesUsd: BN;
3987
- cumulativeLockFeeSnapshot: BN;
3988
- degenSizeUsd: BN;
3989
- referencePrice: {
3990
- price: BN;
3991
- exponent: number;
3992
- };
3993
- priceImpactSet: number;
3994
- sizeDecimals: number;
3995
- lockedDecimals: number;
3996
- collateralDecimals: number;
3997
- key: PublicKey;
3998
- feeAmount: BN;
3999
- allowPayout: boolean;
4000
- availableUsd: BN;
4001
- availableAmount: BN;
4002
- refererTokenStakeAccount: PublicKey;
4003
- refererBoosterAccount: PublicKey;
4004
- level: number;
4005
- withdrawRequestCount: number;
4006
- withdrawRequest: unknown;
4007
- activeStakeAmount: BN;
4008
- updateTimestamp: BN;
4009
- tradeTimestamp: BN;
4010
- tradeCounter: number;
4011
- lastRewardEpochCount: number;
4012
- rewardTokens: BN;
4013
- unclaimedRevenueAmount: BN;
4014
- revenueSnapshot: BN;
4015
- claimableRebateUsd: BN;
4016
- tokenMint: PublicKey;
4017
- tokenVaultTokenAccount: PublicKey;
4018
- tokenPermissions: {
4019
- allowDeposits: boolean;
4020
- allowWithdrawal: boolean;
4021
- allowRewardWithdrawal: boolean;
4022
- };
4023
- withdrawTimeLimit: BN;
4024
- withdrawInstantFee: BN;
4025
- withdrawInstantFeeEarned: BN;
4026
- stakeLevel: BN[];
4027
- tokensStaked: {
4028
- pendingActivation: BN;
4029
- activeAmount: BN;
4030
- pendingDeactivation: BN;
4031
- deactivatedAmount: BN;
4032
- };
4033
- rewardTokensToDistribute: BN;
4034
- rewardTokensPaid: BN;
4035
- tokensToDistribute: BN;
4036
- tokensDistributed: BN;
4037
- rewardTokensDistributed: BN;
4038
- revenueTokenAccountBump: number;
4039
- revenuePerFafStaked: BN;
4040
- revenueAccrued: BN;
4041
- revenueDistributed: BN;
4042
- revenuePaid: BN;
4043
- nftMint: PublicKey;
4044
- voltagePoints: BN;
4045
- stats: {
4046
- volumeUsd: BN;
4047
- lpRewardsUsd: BN;
4048
- referralRebateUsd: BN;
4049
- };
4050
- snapshot: {
4051
- volumeUsd: BN;
4052
- lpRewardsUsd: BN;
4053
- referralRebateUsd: BN;
4054
- };
4055
- timestamp: BN;
4056
- counter: BN;
4057
- tokenStakeAccount: PublicKey;
4058
- burnt: boolean;
4059
- isSwapFeeExempt: boolean;
4060
- isDepositFeeExempt: boolean;
4061
- isWithdrawalFeeExempt: boolean;
4062
- }>[]>;
4063
- getAllActivePositionsByMarket: (marketKey: PublicKey) => Promise<import("@coral-xyz/anchor").ProgramAccount<{
4064
- pool: PublicKey;
4065
- mint: PublicKey;
4066
- tokenAccount: PublicKey;
4067
- decimals: number;
4068
- isStable: boolean;
4069
- depegAdjustment: boolean;
4070
- isVirtual: boolean;
4071
- distributeRewards: boolean;
4072
- oracle: {
4073
- intOracleAccount: PublicKey;
4074
- extOracleAccount: PublicKey;
4075
- oracleType: {
4076
- none?: Record<string, never>;
4077
- custom?: Record<string, never>;
4078
- pyth?: Record<string, never>;
4079
- };
4080
- maxDivergenceBps: BN;
4081
- maxConfBps: BN;
4082
- maxPriceAgeSec: number;
4083
- maxBackupAgeSec: number;
4084
- };
4085
- pricing: {
4086
- tradeSpreadMin: BN;
4087
- tradeSpreadMax: BN;
4088
- swapSpread: BN;
4089
- minInitLeverage: number;
4090
- minInitDegenLeverage: number;
4091
- maxInitLeverage: number;
4092
- maxInitDegenLeverage: number;
4093
- maxLeverage: number;
4094
- maxDegenLeverage: number;
4095
- minCollateralUsd: number;
4096
- minDegenCollateralUsd: number;
4097
- delaySeconds: BN;
4098
- maxUtilization: number;
4099
- degenPositionFactor: number;
4100
- degenExposureFactor: number;
4101
- maxPositionSizeUsd: BN;
4102
- maxExposureUsd: BN;
4103
- };
4104
- permissions: {
4105
- allowSwap: boolean;
4106
- allowAddLiquidity: boolean;
4107
- allowRemoveLiquidity: boolean;
4108
- allowOpenPosition: boolean;
4109
- allowClosePosition: boolean;
4110
- allowCollateralWithdrawal: boolean;
4111
- allowSizeChange: boolean;
4112
- allowLiquidation: boolean;
4113
- allowLpStaking: boolean;
4114
- allowFeeDistribution: boolean;
4115
- allowUngatedTrading: boolean;
4116
- allowFeeDiscounts: boolean;
4117
- allowReferralRebates: boolean;
4118
- } | {
4119
- allowOpenPosition: boolean;
4120
- allowClosePosition: boolean;
4121
- allowCollateralWithdrawal: boolean;
4122
- allowSizeChange: boolean;
4123
- };
4124
- fees: {
4125
- mode: {
4126
- fixed?: Record<string, never>;
4127
- linear?: Record<string, never>;
4128
- };
4129
- swapIn: {
4130
- minFee: BN;
4131
- targetFee: BN;
4132
- maxFee: BN;
4133
- };
4134
- swapOut: {
4135
- minFee: BN;
4136
- targetFee: BN;
4137
- maxFee: BN;
4138
- };
4139
- stableSwapIn: {
4140
- minFee: BN;
4141
- targetFee: BN;
4142
- maxFee: BN;
4143
- };
4144
- stableSwapOut: {
4145
- minFee: BN;
4146
- targetFee: BN;
4147
- maxFee: BN;
4148
- };
4149
- addLiquidity: {
4150
- minFee: BN;
4151
- targetFee: BN;
4152
- maxFee: BN;
4153
- };
4154
- removeLiquidity: {
4155
- minFee: BN;
4156
- targetFee: BN;
4157
- maxFee: BN;
4158
- };
4159
- openPosition: BN;
4160
- closePosition: BN;
4161
- volatility: BN;
4162
- };
4163
- borrowRate: {
4164
- baseRate: BN;
4165
- slope1: BN;
4166
- slope2: BN;
4167
- optimalUtilization: BN;
4168
- };
4169
- rewardThreshold: BN;
4170
- assets: {
4171
- collateral: BN;
4172
- owned: BN;
4173
- locked: BN;
4174
- };
4175
- feesStats: {
4176
- accrued: BN;
4177
- distributed: BN;
4178
- paid: BN;
4179
- rewardPerLpStaked: BN;
4180
- protocolFee: BN;
4181
- };
4182
- borrowRateState: {
4183
- currentRate: BN;
4184
- cumulativeLockFee: BN;
4185
- lastUpdate: BN;
4186
- };
4187
- bump: number;
4188
- tokenAccountBump: number;
4189
- token22: boolean;
4190
- uid: number;
4191
- reservedAmount: BN;
4192
- minReserveUsd: BN;
4193
- limitPriceBufferBps: BN;
4194
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
4195
- owner: PublicKey;
4196
- stakeStats: {
4197
- pendingActivation: BN;
4198
- activeAmount: BN;
4199
- pendingDeactivation: BN;
4200
- deactivatedAmount: BN;
4201
- };
4202
- rewardSnapshot: BN;
4203
- unclaimedRewards: BN;
4204
- feeShareBps: BN;
4205
- isInitialized: number | boolean;
4206
- targetCustody: PublicKey;
4207
- collateralCustody: PublicKey;
4208
- side: {
4209
- none?: Record<string, never>;
4210
- long?: Record<string, never>;
4211
- short?: Record<string, never>;
4212
- };
4213
- correlation: boolean;
4214
- maxPayoffBps: BN;
4215
- degenExposureUsd: BN;
4216
- collectivePosition: {
4217
- openPositions: BN;
4218
- updateTime: BN;
4219
- averageEntryPrice: {
4220
- price: BN;
4221
- exponent: number;
4222
- };
4223
- sizeAmount: BN;
4224
- sizeUsd: BN;
4225
- lockedAmount: BN;
4226
- lockedUsd: BN;
4227
- collateralAmount: BN;
4228
- collateralLiabilityUsd: BN;
4229
- unsettledFeeUsd: BN;
4230
- cumulativeLockFeeSnapshot: BN;
4231
- sizeDecimals: number;
4232
- lockedDecimals: number;
4233
- collateralDecimals: number;
4234
- };
4235
- targetCustodyUid: number;
4236
- collateralCustodyUid: number;
4237
- padding2: number[] | BN[];
4238
- numSigners: number;
4239
- numSigned: number;
4240
- minSignatures: number;
4241
- instructionAccountsLen: number;
4242
- instructionDataLen: number;
4243
- instructionHash: BN;
4244
- signers: PublicKey[];
4245
- signed: number[];
4246
- price: BN;
4247
- expo: number;
4248
- conf: BN;
4249
- ema: BN;
4250
- publishTime: BN;
4251
- extOracleAccount: PublicKey;
4252
- market: PublicKey;
4253
- limitOrders: unknown;
4254
- takeProfitOrders: unknown;
4255
- stopLossOrders: unknown;
4256
- isInitialised: boolean;
4257
- openOrders: number;
4258
- openSl: number;
4259
- openTp: number;
4260
- inactiveSl: number;
4261
- inactiveTp: number;
4262
- activeOrders: number;
4263
- referenceTimestamp: BN;
4264
- executionCount: BN;
4265
- pools: PublicKey[];
4266
- collections: PublicKey[];
4267
- voltageMultiplier: {
4268
- volume: BN;
4269
- rewards: BN;
4270
- rebates: BN;
4271
- };
4272
- tradingDiscount: BN[];
4273
- referralRebate: BN[];
4274
- defaultRebate: BN;
4275
- inceptionTime: BN;
4276
- transferAuthorityBump: number;
4277
- perpetualsBump: number;
4278
- tradeLimit: number;
4279
- triggerOrderLimit: number;
4280
- rebateLimitUsd: number;
4281
- name: string;
4282
- lpMint: PublicKey;
4283
- oracleAuthority: PublicKey;
4284
- stakedLpVault: PublicKey;
4285
- rewardCustody: PublicKey;
4286
- custodies: PublicKey[];
4287
- ratios: {
4288
- target: BN;
4289
- min: BN;
4290
- max: BN;
4291
- }[];
4292
- markets: PublicKey[];
4293
- maxAumUsd: BN;
4294
- buffer: BN | number[] | number[];
4295
- rawAumUsd: BN;
4296
- equityUsd: BN;
4297
- totalStaked: {
4298
- pendingActivation: BN;
4299
- activeAmount: BN;
4300
- pendingDeactivation: BN;
4301
- deactivatedAmount: BN;
4302
- };
4303
- stakingFeeShareBps: BN;
4304
- lpMintBump: number;
4305
- stakedLpVaultBump: number;
4306
- vpVolumeFactor: number;
4307
- uniqueCustodyCount: number;
4308
- stakingFeeBoostBps: BN[];
4309
- compoundingMint: PublicKey;
4310
- compoundingLpVault: PublicKey;
4311
- compoundingStats: {
4312
- activeAmount: BN;
4313
- totalSupply: BN;
4314
- rewardSnapshot: BN;
4315
- feeShareBps: BN;
4316
- lastCompoundTime: BN;
489
+ sizeAmount: BN;
490
+ sizeUsd: BN;
491
+ lockedAmount: BN;
492
+ lockedUsd: BN;
493
+ priceImpactUsd: BN;
494
+ collateralUsd: BN;
495
+ unsettledValueUsd: BN;
496
+ unsettledFeesUsd: BN;
497
+ cumulativeLockFeeSnapshot: BN;
498
+ degenSizeUsd: BN;
499
+ referencePrice: {
500
+ price: BN;
501
+ exponent: number;
4317
502
  };
4318
- compoundingMintBump: number;
4319
- compoundingLpVaultBump: number;
4320
- minLpPriceUsd: BN;
4321
- maxLpPriceUsd: BN;
4322
- lpPrice: BN;
4323
- compoundingLpPrice: BN;
4324
- lastUpdatedTimestamp: BN;
4325
- feesObligationUsd: BN;
4326
- rebateObligationUsd: BN;
4327
- thresholdUsd: BN;
503
+ buffer: number[];
504
+ priceImpactSet: number;
505
+ sizeDecimals: number;
506
+ lockedDecimals: number;
507
+ collateralDecimals: number;
508
+ bump: number;
509
+ padding: number[];
510
+ }>[]>;
511
+ getAllPositionsByMarket: (marketKey: PublicKey) => Promise<import("@coral-xyz/anchor").ProgramAccount<{
512
+ owner: PublicKey;
513
+ market: PublicKey;
4328
514
  delegate: PublicKey;
4329
515
  openTime: BN;
4330
516
  updateTime: BN;
@@ -4346,341 +532,17 @@ export declare class PerpetualsClient {
4346
532
  price: BN;
4347
533
  exponent: number;
4348
534
  };
535
+ buffer: number[];
4349
536
  priceImpactSet: number;
4350
537
  sizeDecimals: number;
4351
538
  lockedDecimals: number;
4352
539
  collateralDecimals: number;
4353
- key: PublicKey;
4354
- feeAmount: BN;
4355
- allowPayout: boolean;
4356
- availableUsd: BN;
4357
- availableAmount: BN;
4358
- refererTokenStakeAccount: PublicKey;
4359
- refererBoosterAccount: PublicKey;
4360
- level: number;
4361
- withdrawRequestCount: number;
4362
- withdrawRequest: unknown;
4363
- activeStakeAmount: BN;
4364
- updateTimestamp: BN;
4365
- tradeTimestamp: BN;
4366
- tradeCounter: number;
4367
- lastRewardEpochCount: number;
4368
- rewardTokens: BN;
4369
- unclaimedRevenueAmount: BN;
4370
- revenueSnapshot: BN;
4371
- claimableRebateUsd: BN;
4372
- tokenMint: PublicKey;
4373
- tokenVaultTokenAccount: PublicKey;
4374
- tokenPermissions: {
4375
- allowDeposits: boolean;
4376
- allowWithdrawal: boolean;
4377
- allowRewardWithdrawal: boolean;
4378
- };
4379
- withdrawTimeLimit: BN;
4380
- withdrawInstantFee: BN;
4381
- withdrawInstantFeeEarned: BN;
4382
- stakeLevel: BN[];
4383
- tokensStaked: {
4384
- pendingActivation: BN;
4385
- activeAmount: BN;
4386
- pendingDeactivation: BN;
4387
- deactivatedAmount: BN;
4388
- };
4389
- rewardTokensToDistribute: BN;
4390
- rewardTokensPaid: BN;
4391
- tokensToDistribute: BN;
4392
- tokensDistributed: BN;
4393
- rewardTokensDistributed: BN;
4394
- revenueTokenAccountBump: number;
4395
- revenuePerFafStaked: BN;
4396
- revenueAccrued: BN;
4397
- revenueDistributed: BN;
4398
- revenuePaid: BN;
4399
- nftMint: PublicKey;
4400
- voltagePoints: BN;
4401
- stats: {
4402
- volumeUsd: BN;
4403
- lpRewardsUsd: BN;
4404
- referralRebateUsd: BN;
4405
- };
4406
- snapshot: {
4407
- volumeUsd: BN;
4408
- lpRewardsUsd: BN;
4409
- referralRebateUsd: BN;
4410
- };
4411
- timestamp: BN;
4412
- counter: BN;
4413
- tokenStakeAccount: PublicKey;
4414
- burnt: boolean;
4415
- isSwapFeeExempt: boolean;
4416
- isDepositFeeExempt: boolean;
4417
- isWithdrawalFeeExempt: boolean;
4418
- }>[]>;
4419
- getAllOrderAccounts: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
4420
- pool: PublicKey;
4421
- mint: PublicKey;
4422
- tokenAccount: PublicKey;
4423
- decimals: number;
4424
- isStable: boolean;
4425
- depegAdjustment: boolean;
4426
- isVirtual: boolean;
4427
- distributeRewards: boolean;
4428
- oracle: {
4429
- intOracleAccount: PublicKey;
4430
- extOracleAccount: PublicKey;
4431
- oracleType: {
4432
- none?: Record<string, never>;
4433
- custom?: Record<string, never>;
4434
- pyth?: Record<string, never>;
4435
- };
4436
- maxDivergenceBps: BN;
4437
- maxConfBps: BN;
4438
- maxPriceAgeSec: number;
4439
- maxBackupAgeSec: number;
4440
- };
4441
- pricing: {
4442
- tradeSpreadMin: BN;
4443
- tradeSpreadMax: BN;
4444
- swapSpread: BN;
4445
- minInitLeverage: number;
4446
- minInitDegenLeverage: number;
4447
- maxInitLeverage: number;
4448
- maxInitDegenLeverage: number;
4449
- maxLeverage: number;
4450
- maxDegenLeverage: number;
4451
- minCollateralUsd: number;
4452
- minDegenCollateralUsd: number;
4453
- delaySeconds: BN;
4454
- maxUtilization: number;
4455
- degenPositionFactor: number;
4456
- degenExposureFactor: number;
4457
- maxPositionSizeUsd: BN;
4458
- maxExposureUsd: BN;
4459
- };
4460
- permissions: {
4461
- allowSwap: boolean;
4462
- allowAddLiquidity: boolean;
4463
- allowRemoveLiquidity: boolean;
4464
- allowOpenPosition: boolean;
4465
- allowClosePosition: boolean;
4466
- allowCollateralWithdrawal: boolean;
4467
- allowSizeChange: boolean;
4468
- allowLiquidation: boolean;
4469
- allowLpStaking: boolean;
4470
- allowFeeDistribution: boolean;
4471
- allowUngatedTrading: boolean;
4472
- allowFeeDiscounts: boolean;
4473
- allowReferralRebates: boolean;
4474
- } | {
4475
- allowOpenPosition: boolean;
4476
- allowClosePosition: boolean;
4477
- allowCollateralWithdrawal: boolean;
4478
- allowSizeChange: boolean;
4479
- };
4480
- fees: {
4481
- mode: {
4482
- fixed?: Record<string, never>;
4483
- linear?: Record<string, never>;
4484
- };
4485
- swapIn: {
4486
- minFee: BN;
4487
- targetFee: BN;
4488
- maxFee: BN;
4489
- };
4490
- swapOut: {
4491
- minFee: BN;
4492
- targetFee: BN;
4493
- maxFee: BN;
4494
- };
4495
- stableSwapIn: {
4496
- minFee: BN;
4497
- targetFee: BN;
4498
- maxFee: BN;
4499
- };
4500
- stableSwapOut: {
4501
- minFee: BN;
4502
- targetFee: BN;
4503
- maxFee: BN;
4504
- };
4505
- addLiquidity: {
4506
- minFee: BN;
4507
- targetFee: BN;
4508
- maxFee: BN;
4509
- };
4510
- removeLiquidity: {
4511
- minFee: BN;
4512
- targetFee: BN;
4513
- maxFee: BN;
4514
- };
4515
- openPosition: BN;
4516
- closePosition: BN;
4517
- volatility: BN;
4518
- };
4519
- borrowRate: {
4520
- baseRate: BN;
4521
- slope1: BN;
4522
- slope2: BN;
4523
- optimalUtilization: BN;
4524
- };
4525
- rewardThreshold: BN;
4526
- assets: {
4527
- collateral: BN;
4528
- owned: BN;
4529
- locked: BN;
4530
- };
4531
- feesStats: {
4532
- accrued: BN;
4533
- distributed: BN;
4534
- paid: BN;
4535
- rewardPerLpStaked: BN;
4536
- protocolFee: BN;
4537
- };
4538
- borrowRateState: {
4539
- currentRate: BN;
4540
- cumulativeLockFee: BN;
4541
- lastUpdate: BN;
4542
- };
4543
540
  bump: number;
4544
- tokenAccountBump: number;
4545
- token22: boolean;
4546
- uid: number;
4547
- reservedAmount: BN;
4548
- minReserveUsd: BN;
4549
- limitPriceBufferBps: BN;
4550
- padding: number[] | number[] | number[] | BN[] | number[] | number[] | BN[] | BN[] | BN[] | number[];
541
+ padding: number[];
542
+ }>[]>;
543
+ getAllActivePositionsByMarket: (marketKey: PublicKey) => Promise<import("@coral-xyz/anchor").ProgramAccount<{
4551
544
  owner: PublicKey;
4552
- stakeStats: {
4553
- pendingActivation: BN;
4554
- activeAmount: BN;
4555
- pendingDeactivation: BN;
4556
- deactivatedAmount: BN;
4557
- };
4558
- rewardSnapshot: BN;
4559
- unclaimedRewards: BN;
4560
- feeShareBps: BN;
4561
- isInitialized: number | boolean;
4562
- targetCustody: PublicKey;
4563
- collateralCustody: PublicKey;
4564
- side: {
4565
- none?: Record<string, never>;
4566
- long?: Record<string, never>;
4567
- short?: Record<string, never>;
4568
- };
4569
- correlation: boolean;
4570
- maxPayoffBps: BN;
4571
- degenExposureUsd: BN;
4572
- collectivePosition: {
4573
- openPositions: BN;
4574
- updateTime: BN;
4575
- averageEntryPrice: {
4576
- price: BN;
4577
- exponent: number;
4578
- };
4579
- sizeAmount: BN;
4580
- sizeUsd: BN;
4581
- lockedAmount: BN;
4582
- lockedUsd: BN;
4583
- collateralAmount: BN;
4584
- collateralLiabilityUsd: BN;
4585
- unsettledFeeUsd: BN;
4586
- cumulativeLockFeeSnapshot: BN;
4587
- sizeDecimals: number;
4588
- lockedDecimals: number;
4589
- collateralDecimals: number;
4590
- };
4591
- targetCustodyUid: number;
4592
- collateralCustodyUid: number;
4593
- padding2: number[] | BN[];
4594
- numSigners: number;
4595
- numSigned: number;
4596
- minSignatures: number;
4597
- instructionAccountsLen: number;
4598
- instructionDataLen: number;
4599
- instructionHash: BN;
4600
- signers: PublicKey[];
4601
- signed: number[];
4602
- price: BN;
4603
- expo: number;
4604
- conf: BN;
4605
- ema: BN;
4606
- publishTime: BN;
4607
- extOracleAccount: PublicKey;
4608
545
  market: PublicKey;
4609
- limitOrders: unknown;
4610
- takeProfitOrders: unknown;
4611
- stopLossOrders: unknown;
4612
- isInitialised: boolean;
4613
- openOrders: number;
4614
- openSl: number;
4615
- openTp: number;
4616
- inactiveSl: number;
4617
- inactiveTp: number;
4618
- activeOrders: number;
4619
- referenceTimestamp: BN;
4620
- executionCount: BN;
4621
- pools: PublicKey[];
4622
- collections: PublicKey[];
4623
- voltageMultiplier: {
4624
- volume: BN;
4625
- rewards: BN;
4626
- rebates: BN;
4627
- };
4628
- tradingDiscount: BN[];
4629
- referralRebate: BN[];
4630
- defaultRebate: BN;
4631
- inceptionTime: BN;
4632
- transferAuthorityBump: number;
4633
- perpetualsBump: number;
4634
- tradeLimit: number;
4635
- triggerOrderLimit: number;
4636
- rebateLimitUsd: number;
4637
- name: string;
4638
- lpMint: PublicKey;
4639
- oracleAuthority: PublicKey;
4640
- stakedLpVault: PublicKey;
4641
- rewardCustody: PublicKey;
4642
- custodies: PublicKey[];
4643
- ratios: {
4644
- target: BN;
4645
- min: BN;
4646
- max: BN;
4647
- }[];
4648
- markets: PublicKey[];
4649
- maxAumUsd: BN;
4650
- buffer: BN | number[] | number[];
4651
- rawAumUsd: BN;
4652
- equityUsd: BN;
4653
- totalStaked: {
4654
- pendingActivation: BN;
4655
- activeAmount: BN;
4656
- pendingDeactivation: BN;
4657
- deactivatedAmount: BN;
4658
- };
4659
- stakingFeeShareBps: BN;
4660
- lpMintBump: number;
4661
- stakedLpVaultBump: number;
4662
- vpVolumeFactor: number;
4663
- uniqueCustodyCount: number;
4664
- stakingFeeBoostBps: BN[];
4665
- compoundingMint: PublicKey;
4666
- compoundingLpVault: PublicKey;
4667
- compoundingStats: {
4668
- activeAmount: BN;
4669
- totalSupply: BN;
4670
- rewardSnapshot: BN;
4671
- feeShareBps: BN;
4672
- lastCompoundTime: BN;
4673
- };
4674
- compoundingMintBump: number;
4675
- compoundingLpVaultBump: number;
4676
- minLpPriceUsd: BN;
4677
- maxLpPriceUsd: BN;
4678
- lpPrice: BN;
4679
- compoundingLpPrice: BN;
4680
- lastUpdatedTimestamp: BN;
4681
- feesObligationUsd: BN;
4682
- rebateObligationUsd: BN;
4683
- thresholdUsd: BN;
4684
546
  delegate: PublicKey;
4685
547
  openTime: BN;
4686
548
  updateTime: BN;
@@ -4702,75 +564,62 @@ export declare class PerpetualsClient {
4702
564
  price: BN;
4703
565
  exponent: number;
4704
566
  };
567
+ buffer: number[];
4705
568
  priceImpactSet: number;
4706
569
  sizeDecimals: number;
4707
570
  lockedDecimals: number;
4708
571
  collateralDecimals: number;
4709
- key: PublicKey;
4710
- feeAmount: BN;
4711
- allowPayout: boolean;
4712
- availableUsd: BN;
4713
- availableAmount: BN;
4714
- refererTokenStakeAccount: PublicKey;
4715
- refererBoosterAccount: PublicKey;
4716
- level: number;
4717
- withdrawRequestCount: number;
4718
- withdrawRequest: unknown;
4719
- activeStakeAmount: BN;
4720
- updateTimestamp: BN;
4721
- tradeTimestamp: BN;
4722
- tradeCounter: number;
4723
- lastRewardEpochCount: number;
4724
- rewardTokens: BN;
4725
- unclaimedRevenueAmount: BN;
4726
- revenueSnapshot: BN;
4727
- claimableRebateUsd: BN;
4728
- tokenMint: PublicKey;
4729
- tokenVaultTokenAccount: PublicKey;
4730
- tokenPermissions: {
4731
- allowDeposits: boolean;
4732
- allowWithdrawal: boolean;
4733
- allowRewardWithdrawal: boolean;
4734
- };
4735
- withdrawTimeLimit: BN;
4736
- withdrawInstantFee: BN;
4737
- withdrawInstantFeeEarned: BN;
4738
- stakeLevel: BN[];
4739
- tokensStaked: {
4740
- pendingActivation: BN;
4741
- activeAmount: BN;
4742
- pendingDeactivation: BN;
4743
- deactivatedAmount: BN;
4744
- };
4745
- rewardTokensToDistribute: BN;
4746
- rewardTokensPaid: BN;
4747
- tokensToDistribute: BN;
4748
- tokensDistributed: BN;
4749
- rewardTokensDistributed: BN;
4750
- revenueTokenAccountBump: number;
4751
- revenuePerFafStaked: BN;
4752
- revenueAccrued: BN;
4753
- revenueDistributed: BN;
4754
- revenuePaid: BN;
4755
- nftMint: PublicKey;
4756
- voltagePoints: BN;
4757
- stats: {
4758
- volumeUsd: BN;
4759
- lpRewardsUsd: BN;
4760
- referralRebateUsd: BN;
4761
- };
4762
- snapshot: {
4763
- volumeUsd: BN;
4764
- lpRewardsUsd: BN;
4765
- referralRebateUsd: BN;
4766
- };
4767
- timestamp: BN;
4768
- counter: BN;
4769
- tokenStakeAccount: PublicKey;
4770
- burnt: boolean;
4771
- isSwapFeeExempt: boolean;
4772
- isDepositFeeExempt: boolean;
4773
- isWithdrawalFeeExempt: boolean;
572
+ bump: number;
573
+ padding: number[];
574
+ }>[]>;
575
+ getAllOrderAccounts: () => Promise<import("@coral-xyz/anchor").ProgramAccount<{
576
+ owner: PublicKey;
577
+ market: PublicKey;
578
+ limitOrders: {
579
+ limitPrice: {
580
+ price: BN;
581
+ exponent: number;
582
+ };
583
+ reserveAmount: BN;
584
+ reserveCustodyUid: number;
585
+ receiveCustodyUid: number;
586
+ sizeAmount: BN;
587
+ stopLossPrice: {
588
+ price: BN;
589
+ exponent: number;
590
+ };
591
+ takeProfitPrice: {
592
+ price: BN;
593
+ exponent: number;
594
+ };
595
+ }[];
596
+ takeProfitOrders: {
597
+ triggerPrice: {
598
+ price: BN;
599
+ exponent: number;
600
+ };
601
+ triggerSize: BN;
602
+ receiveCustodyUid: number;
603
+ }[];
604
+ stopLossOrders: {
605
+ triggerPrice: {
606
+ price: BN;
607
+ exponent: number;
608
+ };
609
+ triggerSize: BN;
610
+ receiveCustodyUid: number;
611
+ }[];
612
+ isInitialised: boolean;
613
+ openOrders: number;
614
+ openSl: number;
615
+ openTp: number;
616
+ inactiveSl: number;
617
+ inactiveTp: number;
618
+ activeOrders: number;
619
+ bump: number;
620
+ referenceTimestamp: BN;
621
+ executionCount: BN;
622
+ padding: BN[];
4774
623
  }>[]>;
4775
624
  getAccountDiscriminator: (name: string) => Buffer;
4776
625
  log: (...message: string[]) => void;