aftermath-ts-sdk 1.3.12-perps.19 → 1.3.12-perps.21

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.
Files changed (27) hide show
  1. package/dist/general/types/generalTypes.d.ts +3 -0
  2. package/dist/general/types/generalTypes.d.ts.map +1 -1
  3. package/dist/general/utils/caller.d.ts +14 -2
  4. package/dist/general/utils/caller.d.ts.map +1 -1
  5. package/dist/general/utils/caller.js +25 -0
  6. package/dist/packages/perpetuals/api/perpetualsApi.js +2 -2
  7. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts +2 -6
  8. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts.map +1 -1
  9. package/dist/packages/perpetuals/api/perpetualsApiCasting.js +74 -66
  10. package/dist/packages/perpetuals/index.d.ts +1 -0
  11. package/dist/packages/perpetuals/index.d.ts.map +1 -1
  12. package/dist/packages/perpetuals/index.js +1 -0
  13. package/dist/packages/perpetuals/perpetuals.d.ts +50 -14
  14. package/dist/packages/perpetuals/perpetuals.d.ts.map +1 -1
  15. package/dist/packages/perpetuals/perpetuals.js +73 -45
  16. package/dist/packages/perpetuals/perpetualsAccount.d.ts +54 -21
  17. package/dist/packages/perpetuals/perpetualsAccount.d.ts.map +1 -1
  18. package/dist/packages/perpetuals/perpetualsAccount.js +227 -111
  19. package/dist/packages/perpetuals/perpetualsMarket.d.ts +15 -16
  20. package/dist/packages/perpetuals/perpetualsMarket.d.ts.map +1 -1
  21. package/dist/packages/perpetuals/perpetualsMarket.js +45 -57
  22. package/dist/packages/perpetuals/perpetualsTypes.d.ts +324 -150
  23. package/dist/packages/perpetuals/perpetualsTypes.d.ts.map +1 -1
  24. package/dist/packages/perpetuals/perpetualsVault.d.ts +109 -0
  25. package/dist/packages/perpetuals/perpetualsVault.d.ts.map +1 -0
  26. package/dist/packages/perpetuals/perpetualsVault.js +290 -0
  27. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { AnyObjectType, ApiDataWithCursorBody, Balance, Byte, Event, IFixed, ObjectDigest, ObjectId, ObjectVersion, PackageId, Percentage, SerializedTransaction, SuiAddress, SuiCheckpoint, Timestamp, TransactionDigest } from "../../general/types/generalTypes";
1
+ import { AnyObjectType, ApiDataWithCursorBody, Balance, Byte, Event, ObjectDigest, ObjectId, ObjectVersion, PackageId, Percentage, SerializedTransaction, SuiAddress, SuiCheckpoint, Timestamp, TransactionDigest } from "../../general/types/generalTypes";
2
2
  import { CoinDecimal, CoinSymbol, CoinType } from "../coin/coinTypes";
3
3
  import { Transaction, TransactionObjectArgument } from "@mysten/sui/transactions";
4
4
  export type PerpetualsMarketId = ObjectId;
@@ -34,21 +34,34 @@ export interface PerpetualsAccountCap {
34
34
  objectId: ObjectId;
35
35
  walletAddress: SuiAddress;
36
36
  accountId: PerpetualsAccountId;
37
+ accountObjectId: ObjectId;
37
38
  collateralCoinType: CoinType;
38
- collateral: IFixed;
39
+ collateral: number;
39
40
  collateralDecimals: CoinDecimal;
40
41
  objectVersion: ObjectVersion;
41
42
  objectDigest: ObjectDigest;
42
- subAccount: PerpetualsSubAccount;
43
43
  }
44
+ export interface PerpetualsVaultCap {
45
+ vaultId: ObjectId;
46
+ objectId: ObjectId;
47
+ ownerAddress: SuiAddress;
48
+ }
49
+ export type PerpetualsVaultCapExtended = {
50
+ vaultId: ObjectId;
51
+ ownerAddress: SuiAddress;
52
+ accountId: PerpetualsAccountId;
53
+ accountObjectId: ObjectId;
54
+ collateralCoinType: CoinType;
55
+ collateralDecimals: CoinDecimal;
56
+ };
44
57
  export interface PerpetualsPosition {
45
- collateral: IFixed;
46
- baseAssetAmount: IFixed;
47
- quoteAssetNotionalAmount: IFixed;
48
- cumFundingRateLong: IFixed;
49
- cumFundingRateShort: IFixed;
50
- asksQuantity: IFixed;
51
- bidsQuantity: IFixed;
58
+ collateral: number;
59
+ baseAssetAmount: number;
60
+ quoteAssetNotionalAmount: number;
61
+ cumFundingRateLong: number;
62
+ cumFundingRateShort: number;
63
+ asksQuantity: number;
64
+ bidsQuantity: number;
52
65
  collateralCoinType: CoinType;
53
66
  marketId: PerpetualsMarketId;
54
67
  pendingOrders: {
@@ -56,21 +69,13 @@ export interface PerpetualsPosition {
56
69
  side: PerpetualsOrderSide;
57
70
  size: bigint;
58
71
  }[];
59
- makerFee: IFixed;
60
- takerFee: IFixed;
72
+ makerFee: number;
73
+ takerFee: number;
61
74
  leverage: number;
62
75
  }
63
- export interface PerpetualsSubAccount {
64
- accountId: PerpetualsAccountId;
65
- collateralCoinType: CoinType;
66
- collateral: IFixed;
67
- users: SuiAddress[];
68
- objectVersion: ObjectVersion;
69
- objectId: ObjectId;
70
- }
71
76
  export interface PerpetualsMarketParams {
72
- marginRatioInitial: IFixed;
73
- marginRatioMaintenance: IFixed;
77
+ marginRatioInitial: number;
78
+ marginRatioMaintenance: number;
74
79
  baseAssetSymbol: CoinSymbol;
75
80
  basePriceFeedId: ObjectId;
76
81
  collateralPriceFeedId: ObjectId;
@@ -80,32 +85,35 @@ export interface PerpetualsMarketParams {
80
85
  premiumTwapPeriodMs: bigint;
81
86
  spreadTwapFrequencyMs: bigint;
82
87
  spreadTwapPeriodMs: bigint;
83
- makerFee: IFixed;
84
- takerFee: IFixed;
85
- liquidationFee: IFixed;
86
- forceCancelFee: IFixed;
87
- insuranceFundFee: IFixed;
88
- minOrderUsdValue: IFixed;
88
+ gasPriceTwapPeriodMs: bigint;
89
+ makerFee: number;
90
+ takerFee: number;
91
+ liquidationFee: number;
92
+ forceCancelFee: number;
93
+ insuranceFundFee: number;
94
+ minOrderUsdValue: number;
89
95
  lotSize: bigint;
90
96
  tickSize: bigint;
91
- liquidationTolerance: bigint;
97
+ scalingFactor: number;
98
+ gasPriceTakerFee: number;
99
+ zScoreThreshold: number;
92
100
  maxPendingOrders: bigint;
93
101
  baseOracleTolerance: bigint;
94
102
  collateralOracleTolerance: bigint;
95
- maxOpenInterest: IFixed;
96
- maxOpenInterestThreshold: IFixed;
97
- maxOpenInterestPositionPercent: IFixed;
103
+ maxOpenInterest: number;
104
+ maxOpenInterestThreshold: number;
105
+ maxOpenInterestPositionPercent: number;
98
106
  }
99
107
  export interface PerpetualsMarketState {
100
- cumFundingRateLong: IFixed;
101
- cumFundingRateShort: IFixed;
102
- fundingLastUpdateMs: Timestamp;
103
- premiumTwap: IFixed;
104
- premiumTwapLastUpdateMs: Timestamp;
105
- spreadTwap: IFixed;
106
- spreadTwapLastUpdateMs: Timestamp;
107
- openInterest: IFixed;
108
- feesAccrued: IFixed;
108
+ cumFundingRateLong: number;
109
+ cumFundingRateShort: number;
110
+ fundingLastUpdateTimestamp: Timestamp;
111
+ premiumTwap: number;
112
+ premiumTwapLastUpdateTimestamp: Timestamp;
113
+ spreadTwap: number;
114
+ spreadTwapLastUpdateTimestamp: Timestamp;
115
+ openInterest: number;
116
+ feesAccrued: number;
109
117
  }
110
118
  export interface PerpetualsMarketCandleDataPoint {
111
119
  time: Timestamp;
@@ -147,7 +155,7 @@ export interface PerpetualsStopOrderData {
147
155
  side: PerpetualsOrderSide;
148
156
  expiryTimestamp?: bigint;
149
157
  limitOrder?: {
150
- price: PerpetualsOrderPrice;
158
+ price: bigint;
151
159
  orderType: PerpetualsOrderType;
152
160
  };
153
161
  slTp?: {
@@ -165,7 +173,7 @@ export interface PerpetualsFilledOrderData {
165
173
  price: number;
166
174
  }
167
175
  export interface PerpetualsOrderInfo {
168
- price: PerpetualsOrderPrice;
176
+ price: number;
169
177
  size: bigint;
170
178
  }
171
179
  export interface PerpetualsAccountData {
@@ -176,6 +184,31 @@ export interface PerpetualsAccountObject {
176
184
  positions: PerpetualsPosition[];
177
185
  availableCollateral: number;
178
186
  }
187
+ export interface PerpetualsVaultObject {
188
+ objectId: ObjectId;
189
+ version: bigint;
190
+ lpSupply: Balance;
191
+ collateral: Balance;
192
+ marketIds: PerpetualsMarketId[];
193
+ withdrawQueue: PerpetualsVaultWithdrawRequest[];
194
+ parameters: {
195
+ lockPeriodMs: bigint;
196
+ ownerFeePercentage: number;
197
+ forceWithdrawDelayMs: bigint;
198
+ collateralPriceFeedStorageId: ObjectId;
199
+ scalingFactor: number;
200
+ maxMarketsInVault: bigint;
201
+ maxPendingOrdersPerPosition: bigint;
202
+ };
203
+ accountId: PerpetualsAccountId;
204
+ accountObjectId: ObjectId;
205
+ }
206
+ export interface PerpetualsVaultWithdrawRequest {
207
+ userAddress: SuiAddress;
208
+ lpAmountOut: Balance;
209
+ requestTimestamp: Timestamp;
210
+ minLpAmountOut: Balance;
211
+ }
179
212
  export interface UpdatedMarketVersionEvent extends Event {
180
213
  marketId: PerpetualsMarketId;
181
214
  version: bigint;
@@ -220,15 +253,9 @@ export type PerpetualsAccountTrade = {
220
253
  marketId: PerpetualsMarketId;
221
254
  eventType: AnyObjectType;
222
255
  side: PerpetualsOrderSide;
223
- } & ({
224
- orderPrice: bigint;
225
- } | {
226
256
  price: number;
227
- }) & ({
228
- sizeLots: bigint;
229
- } | {
230
257
  size: number;
231
- });
258
+ };
232
259
  export interface DepositedCollateralEvent extends Event {
233
260
  accountId: PerpetualsAccountId;
234
261
  collateralDelta: Balance;
@@ -249,10 +276,10 @@ export interface WithdrewCollateralEvent extends Event {
249
276
  }
250
277
  export interface SettledFundingEvent extends Event {
251
278
  accountId: PerpetualsAccountId;
252
- collateralDeltaUsd: IFixed;
279
+ collateralDeltaUsd: number;
253
280
  marketId: PerpetualsMarketId;
254
- marketFundingRateLong: IFixed;
255
- marketFundingRateShort: IFixed;
281
+ marketFundingRateLong: number;
282
+ marketFundingRateShort: number;
256
283
  }
257
284
  export type CollateralEvent = WithdrewCollateralEvent | DepositedCollateralEvent | SettledFundingEvent | LiquidatedEvent | FilledTakerOrderEvent | FilledMakerOrdersEvent | AllocatedCollateralEvent | DeallocatedCollateralEvent;
258
285
  export declare const isWithdrewCollateralEvent: (event: Event) => event is WithdrewCollateralEvent;
@@ -262,36 +289,26 @@ export declare const isAllocatedCollateralEvent: (event: Event) => event is Allo
262
289
  export declare const isSettledFundingEvent: (event: Event) => event is SettledFundingEvent;
263
290
  export interface LiquidatedEvent extends Event {
264
291
  accountId: PerpetualsAccountId;
265
- collateralDeltaUsd: IFixed;
292
+ collateralDeltaUsd: number;
266
293
  liqorAccountId: PerpetualsAccountId;
267
294
  marketId: PerpetualsMarketId;
268
295
  side: PerpetualsOrderSide;
269
- baseLiquidated: IFixed;
270
- quoteLiquidated: IFixed;
271
- liqeePnlUsd: IFixed;
272
- liquidationFeesUsd: IFixed;
273
- forceCancelFeesUsd: IFixed;
274
- insuranceFundFeesUsd: IFixed;
296
+ baseLiquidated: number;
297
+ quoteLiquidated: number;
298
+ liqeePnlUsd: number;
299
+ liquidationFeesUsd: number;
300
+ forceCancelFeesUsd: number;
301
+ insuranceFundFeesUsd: number;
275
302
  }
276
303
  export declare const isLiquidatedEvent: (event: Event) => event is LiquidatedEvent;
277
304
  export interface CreatedAccountEvent extends Event {
278
305
  user: SuiAddress;
279
306
  accountId: PerpetualsAccountId;
280
307
  }
281
- export interface CreatedSubAccountEvent extends Event {
282
- users: SuiAddress[];
283
- accountId: PerpetualsAccountId;
284
- subAccountId: ObjectId;
285
- }
286
- export interface SetSubAccountUsersEvent extends Event {
287
- users: SuiAddress[];
288
- accountId: PerpetualsAccountId;
289
- subAccountId: ObjectId;
290
- }
291
308
  export interface SetPositionInitialMarginRatioEvent extends Event {
292
309
  marketId: PerpetualsMarketId;
293
310
  accountId: PerpetualsAccountId;
294
- initialMarginRatio: IFixed;
311
+ initialMarginRatio: number;
295
312
  }
296
313
  export interface PerpetualsTradeHistoryData {
297
314
  timestamp: Timestamp;
@@ -331,26 +348,26 @@ export interface FilledMakerOrdersEvent extends Event {
331
348
  export interface FilledMakerOrderEventFields {
332
349
  accountId: PerpetualsAccountId;
333
350
  takerAccountId: PerpetualsAccountId;
334
- collateralDeltaUsd: IFixed;
351
+ collateralDeltaUsd: number;
335
352
  marketId: PerpetualsMarketId;
336
353
  side: PerpetualsOrderSide;
337
354
  size: bigint;
338
355
  sizeRemaining: bigint;
339
356
  orderId: PerpetualsOrderId;
340
357
  dropped: boolean;
341
- pnlUsd: IFixed;
342
- feesUsd: IFixed;
358
+ pnlUsd: number;
359
+ feesUsd: number;
343
360
  canceledSize: bigint;
344
361
  }
345
362
  export interface FilledTakerOrderEvent extends Event {
346
363
  accountId: PerpetualsAccountId;
347
- collateralDeltaUsd: IFixed;
364
+ collateralDeltaUsd: number;
348
365
  marketId: PerpetualsMarketId;
349
366
  side: PerpetualsOrderSide;
350
- baseAssetDelta: IFixed;
351
- quoteAssetDelta: IFixed;
352
- takerPnlUsd: IFixed;
353
- takerFeesUsd: IFixed;
367
+ baseAssetDelta: number;
368
+ quoteAssetDelta: number;
369
+ takerPnlUsd: number;
370
+ takerFeesUsd: number;
354
371
  }
355
372
  export type PerpetualsOrderEvent = CanceledOrderEvent | PostedOrderEvent | PostedOrderEvent | FilledMakerOrdersEvent | FilledTakerOrderEvent | LiquidatedEvent | ReducedOrderEvent;
356
373
  export interface PostedOrderEvent extends Event {
@@ -417,16 +434,16 @@ export interface ReceivedCollateralEvent extends Event {
417
434
  }
418
435
  export interface UpdatedPremiumTwapEvent extends Event {
419
436
  marketId: PerpetualsMarketId;
420
- bookPrice: IFixed;
421
- indexPrice: IFixed;
422
- premiumTwap: IFixed;
437
+ bookPrice: number;
438
+ indexPrice: number;
439
+ premiumTwap: number;
423
440
  premiumTwapLastUpdateMs: number;
424
441
  }
425
442
  export interface UpdatedSpreadTwapEvent extends Event {
426
443
  marketId: PerpetualsMarketId;
427
- bookPrice: IFixed;
428
- indexPrice: IFixed;
429
- spreadTwap: IFixed;
444
+ bookPrice: number;
445
+ indexPrice: number;
446
+ spreadTwap: number;
430
447
  spreadTwapLastUpdateMs: number;
431
448
  }
432
449
  export type PerpetualsTwapEvent = UpdatedPremiumTwapEvent | UpdatedSpreadTwapEvent;
@@ -434,8 +451,8 @@ export declare const isUpdatedPremiumTwapEvent: (event: Event) => event is Updat
434
451
  export declare const isUpdatedSpreadTwapEvent: (event: Event) => event is UpdatedSpreadTwapEvent;
435
452
  export interface UpdatedFundingEvent extends Event {
436
453
  marketId: PerpetualsMarketId;
437
- cumFundingRateLong: IFixed;
438
- cumFundingRateShort: IFixed;
454
+ cumFundingRateLong: number;
455
+ cumFundingRateShort: number;
439
456
  fundingLastUpdateMs: Timestamp;
440
457
  }
441
458
  export declare const isUpdatedFundingEvent: (event: Event) => event is UpdatedFundingEvent;
@@ -456,39 +473,52 @@ export type ApiPerpetualsAccountCollateralHistoryBody = ApiDataWithCursorBody<Ti
456
473
  accountId: PerpetualsAccountId;
457
474
  collateralCoinType: CoinType;
458
475
  };
459
- export type ApiPerpetualsPreviewPlaceMarketOrderBody = Omit<ApiPerpetualsMarketOrderBody, "collateralChange" | "walletAddress" | "hasPosition" | "txKind" | "accountObjectId" | "slTp"> & {
460
- accountObjectId: ObjectId | undefined;
476
+ export type ApiPerpetualsPreviewPlaceMarketOrderBody = Omit<ApiPerpetualsMarketOrderBody, "collateralChange" | "walletAddress" | "hasPosition" | "txKind" | "accountId" | "slTp"> & {
461
477
  collateralCoinType: CoinType;
462
478
  leverage?: number;
463
- };
464
- export type ApiPerpetualsPreviewPlaceLimitOrderBody = Omit<ApiPerpetualsLimitOrderBody, "collateralChange" | "walletAddress" | "hasPosition" | "txKind" | "accountObjectId" | "slTp"> & {
465
- accountObjectId: ObjectId | undefined;
479
+ } & ({
480
+ accountId: PerpetualsAccountId | undefined;
481
+ } | {
482
+ vaultId: ObjectId | undefined;
483
+ });
484
+ export type ApiPerpetualsPreviewPlaceLimitOrderBody = Omit<ApiPerpetualsLimitOrderBody, "collateralChange" | "walletAddress" | "hasPosition" | "txKind" | "accountId" | "slTp"> & {
466
485
  collateralCoinType: CoinType;
467
- lotSize: number;
468
- tickSize: number;
469
486
  leverage?: number;
470
- };
471
- export interface ApiPerpetualsPreviewCancelOrdersBody {
472
- accountObjectId: ObjectId;
487
+ } & ({
488
+ accountId: PerpetualsAccountId | undefined;
489
+ } | {
490
+ vaultId: ObjectId | undefined;
491
+ });
492
+ export type ApiPerpetualsPreviewCancelOrdersBody = {
473
493
  collateralCoinType: CoinType;
474
494
  marketIdsToData: Record<PerpetualsMarketId, {
475
495
  orderIds: PerpetualsOrderId[];
476
496
  }>;
477
- }
478
- export interface ApiPerpetualsPreviewReduceOrderBody {
497
+ } & ({
498
+ accountId: PerpetualsAccountId;
499
+ } | {
500
+ vaultId: ObjectId;
501
+ });
502
+ export type ApiPerpetualsPreviewReduceOrderBody = {
479
503
  marketId: PerpetualsMarketId;
480
- accountObjectId: ObjectId;
481
504
  leverage?: number;
482
505
  orderId: PerpetualsOrderId;
483
506
  sizeToSubtract: bigint;
484
507
  collateralCoinType: CoinType;
485
- }
486
- export interface ApiPerpetualsPreviewSetLeverageBody {
508
+ } & ({
509
+ accountId: PerpetualsAccountId;
510
+ } | {
511
+ vaultId: ObjectId;
512
+ });
513
+ export type ApiPerpetualsPreviewSetLeverageBody = {
487
514
  marketId: PerpetualsMarketId;
488
- accountObjectId: ObjectId;
489
515
  leverage: number;
490
516
  collateralCoinType: CoinType;
491
- }
517
+ } & ({
518
+ accountId: PerpetualsAccountId;
519
+ } | {
520
+ vaultId: ObjectId;
521
+ });
492
522
  export type ApiPerpetualsPreviewReduceOrderResponse = {
493
523
  error: string;
494
524
  } | {
@@ -527,7 +557,7 @@ export interface ApiPerpetualsExecutionPriceBody {
527
557
  collateral: Balance;
528
558
  basePriceFeedId: ObjectId;
529
559
  collateralPriceFeedId: ObjectId;
530
- price?: PerpetualsOrderPrice;
560
+ price?: number;
531
561
  }
532
562
  export interface ApiPerpetualsExecutionPriceResponse {
533
563
  executionPrice: number;
@@ -538,10 +568,10 @@ export interface ApiPerpetualsExecutionPriceResponse {
538
568
  export type ApiPerpetualsHistoricalMarketDataResponse = PerpetualsMarketCandleDataPoint[];
539
569
  export interface ApiPerpetualsMaxOrderSizeBody {
540
570
  marketId: PerpetualsMarketId;
541
- accountObjectId: ObjectId;
571
+ accountId: PerpetualsAccountId;
542
572
  side: PerpetualsOrderSide;
543
573
  leverage?: number;
544
- price?: PerpetualsOrderPrice;
574
+ price?: number;
545
575
  }
546
576
  export interface ApiPerpetualsAccountOrderDatasBody {
547
577
  accountId: PerpetualsAccountId;
@@ -571,23 +601,29 @@ export interface ApiPerpetualsCreateAccountBody {
571
601
  }
572
602
  export type ApiPerpetualsDepositCollateralBody = {
573
603
  walletAddress: SuiAddress;
574
- accountObjectId: ObjectId;
575
604
  collateralCoinType: CoinType;
576
605
  txKind?: SerializedTransaction;
577
606
  isSponsoredTx?: boolean;
578
607
  } & ({
579
608
  depositAmount: Balance;
580
609
  } | {
581
- coinInArg: TransactionObjectArgument;
610
+ depositCoinArg: TransactionObjectArgument;
611
+ }) & ({
612
+ accountId: PerpetualsAccountId;
613
+ } | {
614
+ vaultId: ObjectId;
582
615
  });
583
- export interface ApiPerpetualsWithdrawCollateralBody {
616
+ export type ApiPerpetualsWithdrawCollateralBody = {
584
617
  walletAddress: SuiAddress;
585
- accountObjectId: ObjectId;
586
618
  collateralCoinType: CoinType;
587
619
  withdrawAmount: Balance;
588
620
  recipientAddress?: SuiAddress;
589
621
  txKind?: SerializedTransaction;
590
- }
622
+ } & ({
623
+ accountId: PerpetualsAccountId;
624
+ } | {
625
+ vaultId: ObjectId;
626
+ });
591
627
  export interface ApiPerpetualsWithdrawCollateralResponse {
592
628
  txKind: SerializedTransaction;
593
629
  coinOutArg: TransactionObjectArgument | undefined;
@@ -595,37 +631,46 @@ export interface ApiPerpetualsWithdrawCollateralResponse {
595
631
  export interface ApiPerpetualsTransferCollateralBody {
596
632
  walletAddress: SuiAddress;
597
633
  collateralCoinType: CoinType;
598
- fromAccountObjectId: ObjectId;
599
- toAccountObjectId: ObjectId;
634
+ fromAccountId: PerpetualsAccountId;
635
+ toAccountId: PerpetualsAccountId;
600
636
  transferAmount: Balance;
601
637
  txKind?: SerializedTransaction;
602
638
  }
603
- export interface ApiPerpetualsAllocateCollateralBody {
604
- accountObjectId: ObjectId;
639
+ export type ApiPerpetualsAllocateCollateralBody = {
605
640
  marketId: PerpetualsMarketId;
606
641
  allocateAmount: Balance;
607
642
  txKind?: SerializedTransaction;
608
- }
609
- export interface ApiPerpetualsDeallocateCollateralBody {
610
- accountObjectId: ObjectId;
643
+ } & ({
644
+ accountId: PerpetualsAccountId;
645
+ } | {
646
+ vaultId: ObjectId;
647
+ });
648
+ export type ApiPerpetualsDeallocateCollateralBody = {
611
649
  marketId: PerpetualsMarketId;
612
650
  deallocateAmount: Balance;
613
651
  txKind?: SerializedTransaction;
614
- }
652
+ } & ({
653
+ accountId: PerpetualsAccountId;
654
+ } | {
655
+ vaultId: ObjectId;
656
+ });
615
657
  export interface SdkPerpetualsPlaceStopOrdersInputs {
616
658
  stopOrders: Omit<PerpetualsStopOrderData, "objectId">[];
617
659
  tx?: Transaction;
618
660
  gasCoinArg?: TransactionObjectArgument;
619
661
  isSponsoredTx?: boolean;
620
662
  }
621
- export interface ApiPerpetualsPlaceStopOrdersBody {
622
- accountObjectId: ObjectId;
663
+ export type ApiPerpetualsPlaceStopOrdersBody = {
623
664
  walletAddress: SuiAddress;
624
665
  stopOrders: Omit<PerpetualsStopOrderData, "objectId">[];
625
666
  gasCoinArg?: TransactionObjectArgument;
626
667
  isSponsoredTx?: boolean;
627
668
  txKind?: SerializedTransaction;
628
- }
669
+ } & ({
670
+ accountId: PerpetualsAccountId;
671
+ } | {
672
+ vaultId: ObjectId;
673
+ });
629
674
  export type SdkPerpetualsPlaceSlTpOrdersInputs = {
630
675
  marketId: PerpetualsMarketId;
631
676
  size?: bigint;
@@ -637,7 +682,6 @@ export type SdkPerpetualsPlaceSlTpOrdersInputs = {
637
682
  };
638
683
  export type ApiPerpetualsPlaceSlTpOrdersBody = {
639
684
  marketId: PerpetualsMarketId;
640
- accountObjectId: ObjectId;
641
685
  walletAddress: SuiAddress;
642
686
  positionSide: PerpetualsOrderSide;
643
687
  size?: bigint;
@@ -647,15 +691,21 @@ export type ApiPerpetualsPlaceSlTpOrdersBody = {
647
691
  isSponsoredTx?: boolean;
648
692
  leverage?: number;
649
693
  txKind?: SerializedTransaction;
650
- };
651
- export interface ApiPerpetualsEditStopOrdersBody {
652
- accountObjectId: ObjectId;
694
+ } & ({
695
+ accountId: PerpetualsAccountId;
696
+ } | {
697
+ vaultId: ObjectId;
698
+ });
699
+ export type ApiPerpetualsEditStopOrdersBody = {
653
700
  stopOrders: PerpetualsStopOrderData[];
654
701
  txKind?: SerializedTransaction;
655
- }
702
+ } & ({
703
+ accountId: PerpetualsAccountId;
704
+ } | {
705
+ vaultId: ObjectId;
706
+ });
656
707
  export type ApiPerpetualsMarketOrderBody = {
657
708
  marketId: PerpetualsMarketId;
658
- accountObjectId: ObjectId;
659
709
  side: PerpetualsOrderSide;
660
710
  size: bigint;
661
711
  collateralChange: number;
@@ -671,13 +721,16 @@ export type ApiPerpetualsMarketOrderBody = {
671
721
  takeProfitIndexPrice?: number;
672
722
  };
673
723
  txKind?: SerializedTransaction;
674
- };
724
+ } & ({
725
+ accountId: PerpetualsAccountId;
726
+ } | {
727
+ vaultId: ObjectId;
728
+ });
675
729
  export type ApiPerpetualsLimitOrderBody = {
676
730
  marketId: PerpetualsMarketId;
677
- accountObjectId: ObjectId;
678
731
  side: PerpetualsOrderSide;
679
732
  size: bigint;
680
- price: PerpetualsOrderPrice;
733
+ price: bigint;
681
734
  orderType: PerpetualsOrderType;
682
735
  collateralChange: number;
683
736
  hasPosition: boolean;
@@ -693,36 +746,52 @@ export type ApiPerpetualsLimitOrderBody = {
693
746
  takeProfitIndexPrice?: number;
694
747
  };
695
748
  txKind?: SerializedTransaction;
696
- };
697
- export interface ApiPerpetualsCancelOrdersBody {
698
- accountObjectId: ObjectId;
749
+ } & ({
750
+ accountId: PerpetualsAccountId;
751
+ } | {
752
+ vaultId: ObjectId;
753
+ });
754
+ export type ApiPerpetualsCancelOrdersBody = {
699
755
  marketIdsToData: Record<PerpetualsMarketId, {
700
756
  orderIds: PerpetualsOrderId[];
701
757
  collateralChange: number;
702
758
  }>;
703
759
  txKind?: SerializedTransaction;
704
- }
705
- export interface ApiPerpetualsCancelStopOrdersBody {
706
- accountObjectId: ObjectId;
760
+ } & ({
761
+ accountId: PerpetualsAccountId;
762
+ } | {
763
+ vaultId: ObjectId;
764
+ });
765
+ export type ApiPerpetualsCancelStopOrdersBody = {
707
766
  stopOrderIds: ObjectId[];
708
767
  txKind?: SerializedTransaction;
709
- }
710
- export interface ApiPerpetualsReduceOrderBody {
768
+ } & ({
769
+ accountId: PerpetualsAccountId;
770
+ } | {
771
+ vaultId: ObjectId;
772
+ });
773
+ export type ApiPerpetualsReduceOrderBody = {
711
774
  marketId: PerpetualsMarketId;
712
- accountObjectId: ObjectId;
713
775
  collateralChange: number;
714
776
  leverage?: number;
715
777
  orderId: PerpetualsOrderId;
716
778
  sizeToSubtract: bigint;
717
779
  txKind?: SerializedTransaction;
718
- }
719
- export interface ApiPerpetualsSetLeverageTxBody {
780
+ } & ({
781
+ accountId: PerpetualsAccountId;
782
+ } | {
783
+ vaultId: ObjectId;
784
+ });
785
+ export type ApiPerpetualsSetLeverageTxBody = {
720
786
  marketId: PerpetualsMarketId;
721
- accountObjectId: ObjectId;
722
787
  collateralChange: number;
723
788
  leverage: number;
724
789
  txKind?: SerializedTransaction;
725
- }
790
+ } & ({
791
+ accountId: PerpetualsAccountId;
792
+ } | {
793
+ vaultId: ObjectId;
794
+ });
726
795
  export interface PerpetualsMarket24hrStats {
727
796
  volumeUsd: number;
728
797
  volumeBaseAssetAmount: number;
@@ -730,7 +799,112 @@ export interface PerpetualsMarket24hrStats {
730
799
  priceChangePercentage: number;
731
800
  }
732
801
  export type ApiPerpetualsMarkets24hrStatsResponse = PerpetualsMarket24hrStats[];
733
- export type SdkPerpetualsPlaceMarketOrderInputs = Omit<ApiPerpetualsMarketOrderBody, "accountObjectId" | "hasPosition" | "txKind" | "slTp"> & {
802
+ export interface ApiPerpetualsVaultProcessForceWithdrawsTxBody {
803
+ vaultId: ObjectId;
804
+ sizesToClose: Record<PerpetualsMarketId, Balance>;
805
+ txKind?: SerializedTransaction;
806
+ }
807
+ export interface ApiPerpetualsVaultProcessWithdrawRequestsTxBody {
808
+ vaultId: ObjectId;
809
+ userAddresses: SuiAddress[];
810
+ txKind?: SerializedTransaction;
811
+ }
812
+ export interface ApiPerpetualsVaultUpdateWithdrawRequestSlippagesTxBody {
813
+ vaultIds: ObjectId[];
814
+ minLpAmountsOut: Balance[];
815
+ txKind?: SerializedTransaction;
816
+ }
817
+ export interface ApiPerpetualsVaultUpdateForceWithdrawDelayTxBody {
818
+ vaultId: ObjectId;
819
+ forceWithdrawDelayMs: bigint;
820
+ txKind?: SerializedTransaction;
821
+ }
822
+ export interface ApiPerpetualsVaultUpdateLockPeriodTxBody {
823
+ vaultId: ObjectId;
824
+ lockPeriodMs: bigint;
825
+ txKind?: SerializedTransaction;
826
+ }
827
+ export interface ApiPerpetualsVaultUpdateOwnerFeePercentageTxBody {
828
+ vaultId: ObjectId;
829
+ ownerFeePercentage: number;
830
+ txKind?: SerializedTransaction;
831
+ }
832
+ export interface ApiPerpetualsVaultWithdrawOwnerFeesTxBody {
833
+ vaultId: ObjectId;
834
+ withdrawAmount: Balance;
835
+ txKind?: SerializedTransaction;
836
+ }
837
+ export interface ApiPerpetualsVaultWithdrawOwnerFeesTxResponse {
838
+ txKind: SerializedTransaction;
839
+ coinOutArg: TransactionObjectArgument | undefined;
840
+ }
841
+ export interface ApiPerpetualsVaultAllWithdrawRequestsBody {
842
+ vaultId: ObjectId;
843
+ }
844
+ export interface ApiPerpetualsVaultWithdrawRequestsBody {
845
+ walletAddress: SuiAddress;
846
+ }
847
+ export interface ApiPerpetualsVaultCreateWithdrawRequestTxBody {
848
+ vaultId: ObjectId;
849
+ lpWithdrawAmount: Balance;
850
+ minLpWithdrawAmount: Balance;
851
+ txKind?: SerializedTransaction;
852
+ }
853
+ export interface ApiPerpetualsVaultCancelWithdrawRequestsTxBody {
854
+ vaultIds: ObjectId[];
855
+ walletAddress: SuiAddress;
856
+ txKind?: SerializedTransaction;
857
+ }
858
+ export type ApiPerpetualsVaultDepositTxBody = {
859
+ vaultId: ObjectId;
860
+ walletAddress: SuiAddress;
861
+ minLpAmountOut: Balance;
862
+ txKind?: SerializedTransaction;
863
+ isSponsoredTx?: boolean;
864
+ } & ({
865
+ depositAmount: Balance;
866
+ } | {
867
+ depositCoinArg: TransactionObjectArgument;
868
+ });
869
+ export interface ApiPerpetualsVaultPreviewCreateWithdrawRequestBody {
870
+ vaultId: ObjectId;
871
+ lpWithdrawAmount: Balance;
872
+ }
873
+ export interface ApiPerpetualsVaultPreviewCreateWithdrawRequestResponse {
874
+ collateralAmountOut: number;
875
+ collateralAmountOutUsd: number;
876
+ }
877
+ export interface ApiPerpetualsVaultPreviewDepositBody {
878
+ vaultId: ObjectId;
879
+ depositAmount: Balance;
880
+ }
881
+ export interface ApiPerpetualsVaultPreviewDepositResponse {
882
+ lpAmountOut: number;
883
+ }
884
+ export interface ApiPerpetualsVaultPreviewProcessForceWithdrawBody {
885
+ vaultId: ObjectId;
886
+ walletAddress: SuiAddress;
887
+ }
888
+ export interface ApiPerpetualsVaultPreviewProcessForceWithdrawResponse {
889
+ collateralAmountOut: number;
890
+ collateralAmountOutUsd: number;
891
+ sizesToClose: Record<PerpetualsMarketId, Balance>;
892
+ }
893
+ export interface ApiPerpetualsVaultPreviewProcessWithdrawRequestsBody {
894
+ vaultId: ObjectId;
895
+ userAddresses: SuiAddress[];
896
+ }
897
+ export type ApiPerpetualsVaultPreviewProcessWithdrawRequestsResponse = {
898
+ lpAmountOut: number;
899
+ }[];
900
+ export interface ApiPerpetualsVaultPreviewWithdrawOwnerFeesBody {
901
+ vaultId: ObjectId;
902
+ }
903
+ export interface ApiPerpetualsVaultPreviewWithdrawOwnerFeesResponse {
904
+ maxFeesToWithdraw: Balance;
905
+ feeCoinType: CoinType;
906
+ }
907
+ export type SdkPerpetualsPlaceMarketOrderInputs = Omit<ApiPerpetualsMarketOrderBody, "accountId" | "hasPosition" | "txKind" | "slTp"> & {
734
908
  tx?: Transaction;
735
909
  slTp?: {
736
910
  gasCoinArg?: TransactionObjectArgument;
@@ -740,7 +914,7 @@ export type SdkPerpetualsPlaceMarketOrderInputs = Omit<ApiPerpetualsMarketOrderB
740
914
  takeProfitIndexPrice?: number;
741
915
  };
742
916
  };
743
- export type SdkPerpetualsPlaceLimitOrderInputs = Omit<ApiPerpetualsLimitOrderBody, "accountObjectId" | "hasPosition" | "txKind" | "slTp"> & {
917
+ export type SdkPerpetualsPlaceLimitOrderInputs = Omit<ApiPerpetualsLimitOrderBody, "accountId" | "hasPosition" | "txKind" | "slTp"> & {
744
918
  tx?: Transaction;
745
919
  slTp?: {
746
920
  gasCoinArg?: TransactionObjectArgument;
@@ -750,7 +924,7 @@ export type SdkPerpetualsPlaceLimitOrderInputs = Omit<ApiPerpetualsLimitOrderBod
750
924
  takeProfitIndexPrice?: number;
751
925
  };
752
926
  };
753
- export type SdkPerpetualsPlaceMarketOrderPreviewInputs = Omit<ApiPerpetualsPreviewPlaceMarketOrderBody, "collateralCoinType" | "accountObjectId">;
754
- export type SdkPerpetualsPlaceLimitOrderPreviewInputs = Omit<ApiPerpetualsPreviewPlaceLimitOrderBody, "collateralCoinType" | "accountObjectId">;
755
- export type SdkPerpetualsCancelOrdersPreviewInputs = Omit<ApiPerpetualsPreviewCancelOrdersBody, "collateralCoinType" | "accountObjectId">;
927
+ export type SdkPerpetualsPlaceMarketOrderPreviewInputs = Omit<ApiPerpetualsPreviewPlaceMarketOrderBody, "collateralCoinType" | "accountId">;
928
+ export type SdkPerpetualsPlaceLimitOrderPreviewInputs = Omit<ApiPerpetualsPreviewPlaceLimitOrderBody, "collateralCoinType" | "accountId">;
929
+ export type SdkPerpetualsCancelOrdersPreviewInputs = Omit<ApiPerpetualsPreviewCancelOrdersBody, "collateralCoinType" | "accountId">;
756
930
  //# sourceMappingURL=perpetualsTypes.d.ts.map