aftermath-ts-sdk 1.3.1 → 1.3.12-perps.1

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 (166) hide show
  1. package/dist/general/apiHelpers/dynamicFieldsApiHelpers.d.ts +10 -10
  2. package/dist/general/apiHelpers/dynamicFieldsApiHelpers.d.ts.map +1 -1
  3. package/dist/general/apiHelpers/dynamicFieldsApiHelpers.js +2 -2
  4. package/dist/general/apiHelpers/eventsApiHelpers.d.ts +3 -3
  5. package/dist/general/apiHelpers/eventsApiHelpers.d.ts.map +1 -1
  6. package/dist/general/apiHelpers/eventsApiHelpers.js +5 -5
  7. package/dist/general/apiHelpers/inspectionsApiHelpers.d.ts.map +1 -1
  8. package/dist/general/apiHelpers/objectsApiHelpers.d.ts +6 -6
  9. package/dist/general/apiHelpers/objectsApiHelpers.d.ts.map +1 -1
  10. package/dist/general/apiHelpers/objectsApiHelpers.js +6 -6
  11. package/dist/general/apiHelpers/transactionsApiHelpers.d.ts +5 -2
  12. package/dist/general/apiHelpers/transactionsApiHelpers.d.ts.map +1 -1
  13. package/dist/general/apiHelpers/transactionsApiHelpers.js +13 -1
  14. package/dist/general/nfts/nftsApi.d.ts.map +1 -1
  15. package/dist/general/nfts/nftsApiCasting.d.ts.map +1 -1
  16. package/dist/general/nfts/nftsApiCasting.js +1 -1
  17. package/dist/general/providers/aftermath.d.ts +0 -5
  18. package/dist/general/providers/aftermath.d.ts.map +1 -1
  19. package/dist/general/providers/aftermath.js +2 -7
  20. package/dist/general/providers/aftermathApi.d.ts +0 -6
  21. package/dist/general/providers/aftermathApi.d.ts.map +1 -1
  22. package/dist/general/providers/aftermathApi.js +0 -5
  23. package/dist/general/types/configTypes.d.ts +0 -10
  24. package/dist/general/types/configTypes.d.ts.map +1 -1
  25. package/dist/general/types/generalTypes.d.ts +1 -0
  26. package/dist/general/types/generalTypes.d.ts.map +1 -1
  27. package/dist/general/types/moveErrorsInterface.d.ts +1 -1
  28. package/dist/general/types/moveErrorsInterface.d.ts.map +1 -1
  29. package/dist/general/utils/caller.d.ts +5 -2
  30. package/dist/general/utils/caller.d.ts.map +1 -1
  31. package/dist/general/utils/caller.js +10 -2
  32. package/dist/general/utils/casting.d.ts +5 -6
  33. package/dist/general/utils/casting.d.ts.map +1 -1
  34. package/dist/general/utils/casting.js +4 -5
  35. package/dist/general/utils/fixedUtils.d.ts.map +1 -1
  36. package/dist/general/utils/helpers.d.ts +1 -0
  37. package/dist/general/utils/helpers.d.ts.map +1 -1
  38. package/dist/general/utils/helpers.js +49 -16
  39. package/dist/general/utils/iFixedUtils.d.ts.map +1 -1
  40. package/dist/general/wallet/wallet.d.ts +1 -1
  41. package/dist/general/wallet/wallet.d.ts.map +1 -1
  42. package/dist/general/wallet/walletApi.d.ts.map +1 -1
  43. package/dist/packages/coin/api/coinApi.d.ts.map +1 -1
  44. package/dist/packages/coin/coin.d.ts +1 -1
  45. package/dist/packages/coin/coin.d.ts.map +1 -1
  46. package/dist/packages/coin/coin.js +5 -3
  47. package/dist/packages/dca/api/dcaApi.d.ts.map +1 -1
  48. package/dist/packages/dca/api/dcaApi.js +3 -1
  49. package/dist/packages/farms/api/farmsApi.d.ts +33 -29
  50. package/dist/packages/farms/api/farmsApi.d.ts.map +1 -1
  51. package/dist/packages/farms/api/farmsApi.js +116 -114
  52. package/dist/packages/farms/api/farmsApiCasting.d.ts.map +1 -1
  53. package/dist/packages/farms/farms.d.ts +1 -1
  54. package/dist/packages/farms/farms.d.ts.map +1 -1
  55. package/dist/packages/farms/farms.js +2 -2
  56. package/dist/packages/farms/farmsStakedPosition.d.ts +1 -1
  57. package/dist/packages/farms/farmsStakedPosition.d.ts.map +1 -1
  58. package/dist/packages/farms/farmsStakedPosition.js +4 -4
  59. package/dist/packages/farms/farmsStakingPool.d.ts +1 -1
  60. package/dist/packages/farms/farmsStakingPool.d.ts.map +1 -1
  61. package/dist/packages/farms/farmsStakingPool.js +4 -4
  62. package/dist/packages/farms/farmsTypes.d.ts.map +1 -1
  63. package/dist/packages/faucet/api/faucetApi.d.ts +9 -17
  64. package/dist/packages/faucet/api/faucetApi.d.ts.map +1 -1
  65. package/dist/packages/faucet/api/faucetApi.js +46 -51
  66. package/dist/packages/faucet/api/faucetApiCasting.d.ts.map +1 -1
  67. package/dist/packages/faucet/api/faucetApiCasting.js +8 -5
  68. package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts +1 -4
  69. package/dist/packages/faucet/api/faucetApiCastingTypes.d.ts.map +1 -1
  70. package/dist/packages/faucet/faucet.d.ts +1 -1
  71. package/dist/packages/faucet/faucet.d.ts.map +1 -1
  72. package/dist/packages/faucet/faucet.js +1 -1
  73. package/dist/packages/faucet/faucetTypes.d.ts +2 -3
  74. package/dist/packages/faucet/faucetTypes.d.ts.map +1 -1
  75. package/dist/packages/leveragedStaking/api/leveragedStakingApi.d.ts +1 -1
  76. package/dist/packages/leveragedStaking/api/leveragedStakingApi.d.ts.map +1 -1
  77. package/dist/packages/leveragedStaking/api/leveragedStakingApi.js +42 -42
  78. package/dist/packages/leveragedStaking/api/leveragedStakingApiCasting.d.ts.map +1 -1
  79. package/dist/packages/leveragedStaking/leveragedStaking.d.ts.map +1 -1
  80. package/dist/packages/leveragedStaking/leveragedStakingTypes.d.ts.map +1 -1
  81. package/dist/packages/multisig/multisig.d.ts +1 -1
  82. package/dist/packages/multisig/multisig.d.ts.map +1 -1
  83. package/dist/packages/nftAmm/api/nftAmmApi.d.ts.map +1 -1
  84. package/dist/packages/nftAmm/api/nftAmmApiCasting.d.ts.map +1 -1
  85. package/dist/packages/nftAmm/nftAmm.d.ts +1 -1
  86. package/dist/packages/nftAmm/nftAmm.d.ts.map +1 -1
  87. package/dist/packages/nftAmm/nftAmmMarket.d.ts.map +1 -1
  88. package/dist/packages/perpetuals/api/perpetualsApi.d.ts +11 -204
  89. package/dist/packages/perpetuals/api/perpetualsApi.d.ts.map +1 -1
  90. package/dist/packages/perpetuals/api/perpetualsApi.js +923 -614
  91. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts +11 -18
  92. package/dist/packages/perpetuals/api/perpetualsApiCasting.d.ts.map +1 -1
  93. package/dist/packages/perpetuals/api/perpetualsApiCasting.js +199 -190
  94. package/dist/packages/perpetuals/perpetuals.d.ts +39 -5
  95. package/dist/packages/perpetuals/perpetuals.d.ts.map +1 -1
  96. package/dist/packages/perpetuals/perpetuals.js +100 -19
  97. package/dist/packages/perpetuals/perpetualsAccount.d.ts +108 -79
  98. package/dist/packages/perpetuals/perpetualsAccount.d.ts.map +1 -1
  99. package/dist/packages/perpetuals/perpetualsAccount.js +332 -119
  100. package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts +78 -148
  101. package/dist/packages/perpetuals/perpetualsCastingTypes.d.ts.map +1 -1
  102. package/dist/packages/perpetuals/perpetualsMarket.d.ts +29 -6
  103. package/dist/packages/perpetuals/perpetualsMarket.d.ts.map +1 -1
  104. package/dist/packages/perpetuals/perpetualsMarket.js +78 -16
  105. package/dist/packages/perpetuals/perpetualsTypes.d.ts +341 -260
  106. package/dist/packages/perpetuals/perpetualsTypes.d.ts.map +1 -1
  107. package/dist/packages/perpetuals/perpetualsTypes.js +17 -77
  108. package/dist/packages/perpetuals/utils/perpetualsOrderUtils.d.ts.map +1 -1
  109. package/dist/packages/pools/api/poolsApi.d.ts +2 -2
  110. package/dist/packages/pools/api/poolsApi.d.ts.map +1 -1
  111. package/dist/packages/pools/api/poolsApi.js +8 -8
  112. package/dist/packages/pools/api/poolsApiCasting.d.ts.map +1 -1
  113. package/dist/packages/pools/pool.d.ts +1 -1
  114. package/dist/packages/pools/pool.d.ts.map +1 -1
  115. package/dist/packages/pools/pool.js +2 -2
  116. package/dist/packages/pools/pools.d.ts +1 -1
  117. package/dist/packages/pools/pools.d.ts.map +1 -1
  118. package/dist/packages/pools/utils/cmmmCalculations.d.ts.map +1 -1
  119. package/dist/packages/pools/utils/cmmmCalculations.js +60 -60
  120. package/dist/packages/referralVault/api/referralVaultApi.d.ts.map +1 -1
  121. package/dist/packages/referralVault/referralVault.d.ts +1 -1
  122. package/dist/packages/referralVault/referralVault.d.ts.map +1 -1
  123. package/dist/packages/router/api/routerApiCasting.d.ts.map +1 -1
  124. package/dist/packages/router/router.d.ts.map +1 -1
  125. package/dist/packages/staking/api/stakingApi.d.ts +1 -1
  126. package/dist/packages/staking/api/stakingApi.d.ts.map +1 -1
  127. package/dist/packages/staking/api/stakingApi.js +50 -50
  128. package/dist/packages/staking/api/stakingApiCasting.d.ts.map +1 -1
  129. package/dist/packages/staking/staking.d.ts +1 -1
  130. package/dist/packages/staking/staking.d.ts.map +1 -1
  131. package/dist/packages/staking/staking.js +2 -2
  132. package/dist/packages/staking/stakingTypes.d.ts +1 -1
  133. package/dist/packages/staking/stakingTypes.d.ts.map +1 -1
  134. package/dist/packages/sui/api/suiApi.d.ts.map +1 -1
  135. package/dist/packages/sui/sui.d.ts +1 -1
  136. package/dist/packages/sui/sui.d.ts.map +1 -1
  137. package/dist/packages/suiFrens/api/suiFrensApi.d.ts +2 -2
  138. package/dist/packages/suiFrens/api/suiFrensApi.d.ts.map +1 -1
  139. package/dist/packages/suiFrens/api/suiFrensApi.js +35 -35
  140. package/dist/packages/suiFrens/api/suiFrensApiCasting.d.ts.map +1 -1
  141. package/dist/packages/suiFrens/stakedSuiFren.d.ts +1 -1
  142. package/dist/packages/suiFrens/stakedSuiFren.d.ts.map +1 -1
  143. package/dist/packages/suiFrens/suiFren.d.ts +1 -1
  144. package/dist/packages/suiFrens/suiFren.d.ts.map +1 -1
  145. package/dist/packages/suiFrens/suiFrens.d.ts +1 -1
  146. package/dist/packages/suiFrens/suiFrens.d.ts.map +1 -1
  147. package/dist/packages/suiFrens/suiFrens.js +3 -3
  148. package/dist/types.d.ts +0 -1
  149. package/dist/types.d.ts.map +1 -1
  150. package/dist/types.js +0 -1
  151. package/package.json +7 -8
  152. package/dist/packages/oracle/api/oracleApi.d.ts +0 -21
  153. package/dist/packages/oracle/api/oracleApi.d.ts.map +0 -1
  154. package/dist/packages/oracle/api/oracleApi.js +0 -76
  155. package/dist/packages/oracle/api/oracleApiCasting.d.ts +0 -6
  156. package/dist/packages/oracle/api/oracleApiCasting.d.ts.map +0 -1
  157. package/dist/packages/oracle/api/oracleApiCasting.js +0 -25
  158. package/dist/packages/oracle/oracle.d.ts +0 -15
  159. package/dist/packages/oracle/oracle.d.ts.map +0 -1
  160. package/dist/packages/oracle/oracle.js +0 -46
  161. package/dist/packages/oracle/oracleCastingTypes.d.ts +0 -11
  162. package/dist/packages/oracle/oracleCastingTypes.d.ts.map +0 -1
  163. package/dist/packages/oracle/oracleCastingTypes.js +0 -2
  164. package/dist/packages/oracle/oracleTypes.d.ts +0 -10
  165. package/dist/packages/oracle/oracleTypes.d.ts.map +0 -1
  166. package/dist/packages/oracle/oracleTypes.js +0 -2
@@ -1,20 +1,6 @@
1
- import { PerpetualsOrderbook, PerpetualsAccountObject, PerpetualsPosition, DepositedCollateralEvent, WithdrewCollateralEvent, CreatedAccountEvent, CanceledOrderEvent, PostedOrderEvent, FilledTakerOrderEvent, FilledMakerOrderEvent, PerpetualsOrderInfo, SettledFundingEvent, UpdatedSpreadTwapEvent, UpdatedPremiumTwapEvent, LiquidatedEvent, PerpetualsMarketData, PostedOrderReceiptEvent, PerpetualsRawAccountCap, AllocatedCollateralEvent, DeallocatedCollateralEvent, PerpetualsMarketId, UpdatedFundingEvent, UpdatedMarketVersionEvent, ReducedOrderEvent } from "../perpetualsTypes";
2
- import { CoinSymbol, CoinType } from "../../coin/coinTypes";
3
- import { CanceledOrderEventOnChain, CreatedAccountEventOnChain, DepositedCollateralEventOnChain, PostedOrderEventOnChain, WithdrewCollateralEventOnChain, FilledMakerOrderEventOnChain, FilledTakerOrderEventOnChain, LiquidatedEventOnChain, SettledFundingEventOnChain, UpdatedPremiumTwapEventOnChain, UpdatedSpreadTwapEventOnChain, PostedOrderReceiptEventOnChain, AllocatedCollateralEventOnChain, DeallocatedCollateralEventOnChain, PerpetualsAccountPositionsIndexerResponse, PerpetualsPositionIndexerResponse, PerpetualsMarketDataIndexerResponse, PerpetualsOrderbookIndexerResponse, UpdatedFundingEventOnChain, UpdatedMarketVersionEventOnChain, ReducedOrderEventOnChain } from "../perpetualsCastingTypes";
4
- import { ObjectDigest, ObjectVersion } from "../../../types";
1
+ import { DepositedCollateralEvent, WithdrewCollateralEvent, CreatedAccountEvent, CanceledOrderEvent, FilledTakerOrderEvent, FilledMakerOrdersEvent, PerpetualsOrderInfo, SettledFundingEvent, UpdatedSpreadTwapEvent, UpdatedPremiumTwapEvent, LiquidatedEvent, PostedOrderReceiptEvent, AllocatedCollateralEvent, DeallocatedCollateralEvent, UpdatedFundingEvent, UpdatedMarketVersionEvent, ReducedOrderEvent, CreatedStopOrderTicketEvent, DeletedStopOrderTicketEvent, EditedStopOrderTicketExecutorEvent, EditedStopOrderTicketDetailsEvent, ExecutedStopOrderTicketEvent, SetPositionInitialMarginRatioEvent, CreatedSubAccountEvent, SetSubAccountUsersEvent } from "../perpetualsTypes";
2
+ import { CanceledOrderEventOnChain, CreatedAccountEventOnChain, DepositedCollateralEventOnChain, WithdrewCollateralEventOnChain, FilledMakerOrdersEventOnChain, FilledTakerOrderEventOnChain, LiquidatedEventOnChain, SettledFundingEventOnChain, UpdatedPremiumTwapEventOnChain, UpdatedSpreadTwapEventOnChain, PostedOrderReceiptEventOnChain, AllocatedCollateralEventOnChain, DeallocatedCollateralEventOnChain, UpdatedFundingEventOnChain, UpdatedMarketVersionEventOnChain, ReducedOrderEventOnChain, CreatedStopOrderTicketEventOnChain, DeletedStopOrderTicketEventOnChain, EditedStopOrderTicketExecutorEventOnChain, EditedStopOrderTicketDetailsEventOnChain, ExecutedStopOrderTicketEventOnChain, SetPositionInitialMarginRatioEventOnChain, CreatedSubAccountEventOnChain, SetSubAccountUsersEventOnChain } from "../perpetualsCastingTypes";
5
3
  export declare class PerpetualsApiCasting {
6
- static rawAccountCapFromRaw(data: any, collateralCoinType: CoinType, version: ObjectVersion, digest: ObjectDigest): PerpetualsRawAccountCap;
7
- static positionFromIndexerReponse: (inputs: {
8
- position: PerpetualsPositionIndexerResponse;
9
- collateralCoinType: CoinType;
10
- marketId: PerpetualsMarketId;
11
- leverage: number;
12
- }) => PerpetualsPosition;
13
- static accountObjectFromIndexerResponse: (response: PerpetualsAccountPositionsIndexerResponse, collateralCoinType: CoinType) => PerpetualsAccountObject;
14
- static marketDataFromIndexerResponse(data: PerpetualsMarketDataIndexerResponse, collateralCoinType: CoinType, baseAssetSymbol: CoinSymbol): PerpetualsMarketData;
15
- private static marketParamsFromIndexerResponse;
16
- private static marketStateFromIndexerResponse;
17
- static orderbookFromIndexerResponse(data: PerpetualsOrderbookIndexerResponse, lotSize: bigint, tickSize: bigint): PerpetualsOrderbook;
18
4
  static orderbookPriceFromBytes: (bytes: number[]) => number;
19
5
  static orderInfoFromRaw: (data: any) => PerpetualsOrderInfo;
20
6
  static UpdatedMarketVersionEventFromOnChain: (eventOnChain: UpdatedMarketVersionEventOnChain) => UpdatedMarketVersionEvent;
@@ -25,12 +11,19 @@ export declare class PerpetualsApiCasting {
25
11
  static deallocatedCollateralEventFromOnChain: (eventOnChain: DeallocatedCollateralEventOnChain) => DeallocatedCollateralEvent;
26
12
  static liquidatedEventFromOnChain: (eventOnChain: LiquidatedEventOnChain) => LiquidatedEvent;
27
13
  static createdAccountEventFromOnChain: (eventOnChain: CreatedAccountEventOnChain) => CreatedAccountEvent;
14
+ static createdSubAccountEventFromOnChain: (eventOnChain: CreatedSubAccountEventOnChain) => CreatedSubAccountEvent;
15
+ static setSubAccountUsersEventFromOnChain: (eventOnChain: SetSubAccountUsersEventOnChain) => SetSubAccountUsersEvent;
16
+ static SetPositionInitialMarginRatioEventFromOnChain: (eventOnChain: SetPositionInitialMarginRatioEventOnChain) => SetPositionInitialMarginRatioEvent;
28
17
  static canceledOrderEventFromOnChain: (eventOnChain: CanceledOrderEventOnChain) => CanceledOrderEvent;
29
- static postedOrderEventFromOnChain: (eventOnChain: PostedOrderEventOnChain) => PostedOrderEvent;
30
- static filledMakerOrderEventFromOnChain: (eventOnChain: FilledMakerOrderEventOnChain) => FilledMakerOrderEvent;
18
+ static filledMakerOrdersEventFromOnChain: (eventOnChain: FilledMakerOrdersEventOnChain) => FilledMakerOrdersEvent;
31
19
  static filledTakerOrderEventFromOnChain: (eventOnChain: FilledTakerOrderEventOnChain) => FilledTakerOrderEvent;
32
20
  static postedOrderReceiptEventFromOnChain: (eventOnChain: PostedOrderReceiptEventOnChain) => PostedOrderReceiptEvent;
33
21
  static reducedOrderEventFromOnChain: (eventOnChain: ReducedOrderEventOnChain) => ReducedOrderEvent;
22
+ static createdStopOrderTicketEventFromOnChain: (eventOnChain: CreatedStopOrderTicketEventOnChain) => CreatedStopOrderTicketEvent;
23
+ static executedStopOrderTicketEventFromOnChain: (eventOnChain: ExecutedStopOrderTicketEventOnChain) => ExecutedStopOrderTicketEvent;
24
+ static deletedStopOrderTicketEventFromOnChain: (eventOnChain: DeletedStopOrderTicketEventOnChain) => DeletedStopOrderTicketEvent;
25
+ static editedStopOrderTicketDetailsEventFromOnChain: (eventOnChain: EditedStopOrderTicketDetailsEventOnChain) => EditedStopOrderTicketDetailsEvent;
26
+ static editedStopOrderTicketExecutorEventFromOnChain: (eventOnChain: EditedStopOrderTicketExecutorEventOnChain) => EditedStopOrderTicketExecutorEvent;
34
27
  static updatedPremiumTwapEventFromOnChain: (eventOnChain: UpdatedPremiumTwapEventOnChain) => UpdatedPremiumTwapEvent;
35
28
  static updatedSpreadTwapEventFromOnChain: (eventOnChain: UpdatedSpreadTwapEventOnChain) => UpdatedSpreadTwapEvent;
36
29
  static updatedFundingEventFromOnChain: (eventOnChain: UpdatedFundingEventOnChain) => UpdatedFundingEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"perpetualsApiCasting.d.ts","sourceRoot":"","sources":["../../../../src/packages/perpetuals/api/perpetualsApiCasting.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"perpetualsApiCasting.d.ts","sourceRoot":"","sources":["../../../../src/packages/perpetuals/api/perpetualsApiCasting.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.PerpetualsApiCasting = void 0;
5
4
  const perpetualsTypes_1 = require("../perpetualsTypes");
@@ -9,84 +8,14 @@ const fixedUtils_1 = require("../../../general/utils/fixedUtils");
9
8
  const bcs_1 = require("@mysten/sui/bcs");
10
9
  // TODO: handle 0xs and leading 0s everywhere
11
10
  class PerpetualsApiCasting {
12
- // =========================================================================
13
- // Objects
14
- // =========================================================================
15
- // =========================================================================
16
- // Account
17
- // =========================================================================
18
- static rawAccountCapFromRaw(data, collateralCoinType, version, digest) {
19
- return {
20
- collateralCoinType,
21
- objectId: utils_1.Helpers.addLeadingZeroesToType(data.id),
22
- objectType: data.objectType,
23
- objectVersion: version,
24
- objectDigest: digest,
25
- accountId: BigInt(data.accountId),
26
- collateral: BigInt(data.collateral.value),
27
- };
28
- }
29
- // =========================================================================
30
- // Clearing House
31
- // =========================================================================
32
- static marketDataFromIndexerResponse(data, collateralCoinType, baseAssetSymbol) {
33
- return {
34
- packageId: utils_1.Casting.addressFromStringBytes(data.pkg_id),
35
- objectId: utils_1.Casting.addressFromStringBytes(data.object.id.id),
36
- initialSharedVersion: Number(data.initial_shared_version),
37
- collateralCoinType,
38
- marketParams: this.marketParamsFromIndexerResponse(data.object.market_params, baseAssetSymbol),
39
- marketState: this.marketStateFromIndexerResponse(data.object.market_state),
40
- };
41
- }
42
- // =========================================================================
43
- // Orderbook
44
- // =========================================================================
45
- static orderbookFromIndexerResponse(data, lotSize, tickSize) {
46
- const partialOrderbook = {
47
- asks: Object.entries(data.asks).reduce((acc, [orderId, order]) => (Object.assign(Object.assign({}, acc), { [orderId]: {
48
- accountId: BigInt(order.account_id),
49
- size: Number(order.size) *
50
- __1.Perpetuals.lotOrTickSizeToNumber(lotSize),
51
- price: __1.Perpetuals.orderPriceToPrice({
52
- orderPrice: __1.Perpetuals.OrderUtils.price(BigInt(orderId)),
53
- lotSize,
54
- tickSize,
55
- }),
56
- } })), {}),
57
- bids: Object.entries(data.bids).reduce((acc, [orderId, order]) => (Object.assign(Object.assign({}, acc), { [orderId]: {
58
- accountId: BigInt(order.account_id),
59
- size: Number(order.size) *
60
- __1.Perpetuals.lotOrTickSizeToNumber(lotSize),
61
- price: __1.Perpetuals.orderPriceToPrice({
62
- orderPrice: __1.Perpetuals.OrderUtils.price(BigInt(orderId)),
63
- lotSize,
64
- tickSize,
65
- }),
66
- } })), {}),
67
- asksTotalSize: Number(data.asks_size) *
68
- __1.Perpetuals.lotOrTickSizeToNumber(lotSize),
69
- bidsTotalSize: Number(data.bids_size) *
70
- __1.Perpetuals.lotOrTickSizeToNumber(lotSize),
71
- };
72
- const bids = Object.values(partialOrderbook.bids);
73
- const asks = Object.values(partialOrderbook.asks);
74
- const bestBidPrice = bids.length <= 0
75
- ? undefined
76
- : Math.max(...bids.map((order) => order.price));
77
- const bestAskPrice = asks.length <= 0
78
- ? undefined
79
- : Math.min(...asks.map((order) => order.price));
80
- const midPrice = bestBidPrice === undefined || bestAskPrice === undefined
81
- ? undefined
82
- : (bestBidPrice + bestAskPrice) / 2;
83
- return Object.assign(Object.assign({}, partialOrderbook), { bestBidPrice,
84
- bestAskPrice,
85
- midPrice });
86
- }
87
11
  }
88
12
  exports.PerpetualsApiCasting = PerpetualsApiCasting;
89
- _a = PerpetualsApiCasting;
13
+ // =========================================================================
14
+ // Objects
15
+ // =========================================================================
16
+ // =========================================================================
17
+ // Account
18
+ // =========================================================================
90
19
  // public static partialPositionFromRaw = (
91
20
  // data: any
92
21
  // ): Omit<PerpetualsPosition, "collateralCoinType" | "marketId"> => {
@@ -103,85 +32,9 @@ _a = PerpetualsApiCasting;
103
32
  // takerFee: BigInt(data.takerFee),
104
33
  // };
105
34
  // };
106
- PerpetualsApiCasting.positionFromIndexerReponse = (inputs) => {
107
- const { position, collateralCoinType, marketId, leverage } = inputs;
108
- return {
109
- collateralCoinType,
110
- leverage,
111
- collateral: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.collateral),
112
- baseAssetAmount: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.base_asset_amount),
113
- quoteAssetNotionalAmount: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.quote_asset_notional_amount),
114
- cumFundingRateLong: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.cum_funding_rate_long),
115
- cumFundingRateShort: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.cum_funding_rate_short),
116
- asksQuantity: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.asks_quantity),
117
- bidsQuantity: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.bids_quantity),
118
- marketId: utils_1.Helpers.addLeadingZeroesToType(marketId),
119
- // NOTE: do we want to store all pending order data here as well ?
120
- pendingOrders: [
121
- ...Object.entries(position.pending_orders.bids).map(([orderId, size]) => ({
122
- size: BigInt(size),
123
- orderId: BigInt(orderId),
124
- side: perpetualsTypes_1.PerpetualsOrderSide.Bid,
125
- })),
126
- ...Object.entries(position.pending_orders.asks).map(([orderId, size]) => ({
127
- size: BigInt(size),
128
- orderId: BigInt(orderId),
129
- side: perpetualsTypes_1.PerpetualsOrderSide.Ask,
130
- })),
131
- ],
132
- makerFee: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.maker_fee),
133
- takerFee: utils_1.Casting.IFixed.iFixedFromStringBytes(position.position.taker_fee),
134
- };
135
- };
136
- PerpetualsApiCasting.accountObjectFromIndexerResponse = (response, collateralCoinType) => {
137
- return {
138
- positions: response.map(([marketIdAsStringBytes, position, leverageAsStringBytes]) => _a.positionFromIndexerReponse({
139
- position,
140
- collateralCoinType,
141
- leverage: utils_1.Casting.IFixed.numberFromIFixed(utils_1.Casting.IFixed.iFixedFromStringBytes(leverageAsStringBytes)) || 1,
142
- marketId: utils_1.Casting.addressFromStringBytes(marketIdAsStringBytes),
143
- })),
144
- };
145
- };
146
- PerpetualsApiCasting.marketParamsFromIndexerResponse = (data, baseAssetSymbol) => {
147
- return {
148
- baseAssetSymbol,
149
- basePriceFeedId: utils_1.Casting.addressFromStringBytes(data.base_pfs_id),
150
- collateralPriceFeedId: utils_1.Casting.addressFromStringBytes(data.collateral_pfs_id),
151
- marginRatioInitial: utils_1.Casting.IFixed.iFixedFromStringBytes(data.margin_ratio_initial),
152
- marginRatioMaintenance: utils_1.Casting.IFixed.iFixedFromStringBytes(data.margin_ratio_maintenance),
153
- fundingFrequencyMs: BigInt(data.funding_frequency_ms),
154
- fundingPeriodMs: BigInt(data.funding_period_ms),
155
- premiumTwapFrequencyMs: BigInt(data.premium_twap_frequency_ms),
156
- premiumTwapPeriodMs: BigInt(data.premium_twap_period_ms),
157
- spreadTwapFrequencyMs: BigInt(data.spread_twap_frequency_ms),
158
- spreadTwapPeriodMs: BigInt(data.spread_twap_period_ms),
159
- makerFee: utils_1.Casting.IFixed.iFixedFromStringBytes(data.maker_fee),
160
- takerFee: utils_1.Casting.IFixed.iFixedFromStringBytes(data.taker_fee),
161
- liquidationFee: utils_1.Casting.IFixed.iFixedFromStringBytes(data.liquidation_fee),
162
- forceCancelFee: utils_1.Casting.IFixed.iFixedFromStringBytes(data.force_cancel_fee),
163
- insuranceFundFee: utils_1.Casting.IFixed.iFixedFromStringBytes(data.insurance_fund_fee),
164
- lotSize: BigInt(data.lot_size),
165
- tickSize: BigInt(data.tick_size),
166
- liquidationTolerance: BigInt(data.liquidation_tolerance),
167
- maxPendingOrders: BigInt(data.max_pending_orders),
168
- minOrderUsdValue: utils_1.Casting.IFixed.iFixedFromStringBytes(data.min_order_usd_value),
169
- oracleTolerance: BigInt(data.oracle_tolerance),
170
- };
171
- };
172
- PerpetualsApiCasting.marketStateFromIndexerResponse = (data) => {
173
- return {
174
- cumFundingRateLong: utils_1.Casting.IFixed.iFixedFromStringBytes(data.cum_funding_rate_long),
175
- cumFundingRateShort: utils_1.Casting.IFixed.iFixedFromStringBytes(data.cum_funding_rate_short),
176
- fundingLastUpdateMs: Number(data.funding_last_upd_ms),
177
- premiumTwap: utils_1.Casting.IFixed.iFixedFromStringBytes(data.premium_twap),
178
- premiumTwapLastUpdateMs: Number(data.premium_twap_last_upd_ms),
179
- spreadTwap: utils_1.Casting.IFixed.iFixedFromStringBytes(data.spread_twap),
180
- spreadTwapLastUpdateMs: Number(data.spread_twap_last_upd_ms),
181
- openInterest: utils_1.Casting.IFixed.iFixedFromStringBytes(data.open_interest),
182
- feesAccrued: utils_1.Casting.IFixed.iFixedFromStringBytes(data.fees_accrued),
183
- };
184
- };
35
+ // =========================================================================
36
+ // Orderbook
37
+ // =========================================================================
185
38
  PerpetualsApiCasting.orderbookPriceFromBytes = (bytes) => {
186
39
  const unwrapped = bcs_1.bcs.option(bcs_1.bcs.u256()).parse(new Uint8Array(bytes));
187
40
  return fixedUtils_1.FixedUtils.directCast(unwrapped != null ? BigInt(unwrapped) : BigInt(0));
@@ -248,8 +101,8 @@ PerpetualsApiCasting.allocatedCollateralEventFromOnChain = (eventOnChain) => {
248
101
  const fields = eventOnChain.parsedJson;
249
102
  return {
250
103
  accountId: BigInt(fields.account_id),
104
+ marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
251
105
  collateralDelta: BigInt(fields.collateral),
252
- positionCollateralAfter: BigInt(fields.position_collateral_after),
253
106
  timestamp: eventOnChain.timestampMs,
254
107
  txnDigest: eventOnChain.id.txDigest,
255
108
  type: eventOnChain.type,
@@ -259,8 +112,8 @@ PerpetualsApiCasting.deallocatedCollateralEventFromOnChain = (eventOnChain) => {
259
112
  const fields = eventOnChain.parsedJson;
260
113
  return {
261
114
  accountId: BigInt(fields.account_id),
115
+ marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
262
116
  collateralDelta: BigInt(fields.collateral),
263
- positionCollateralAfter: BigInt(fields.position_collateral_after),
264
117
  timestamp: eventOnChain.timestampMs,
265
118
  txnDigest: eventOnChain.id.txDigest,
266
119
  type: eventOnChain.type,
@@ -273,11 +126,18 @@ PerpetualsApiCasting.liquidatedEventFromOnChain = (eventOnChain) => {
273
126
  const fields = eventOnChain.parsedJson;
274
127
  return {
275
128
  accountId: BigInt(fields.liqee_account_id),
276
- collateralDeltaUsd: BigInt(fields.liqee_collateral_change_usd),
129
+ collateralDeltaUsd: utils_1.Casting.IFixed.iFixedFromNumber(utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.liqee_pnl)) -
130
+ utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.liquidation_fees)) -
131
+ utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.force_cancel_fees)) -
132
+ utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.insurance_fund_fees))),
277
133
  liqorAccountId: BigInt(fields.liqor_account_id),
278
134
  marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
279
- markPrice: BigInt(fields.mark_price),
280
- size: BigInt(fields.size_liquidated),
135
+ baseLiquidated: BigInt(fields.base_liquidated),
136
+ quoteLiquidated: BigInt(fields.quote_liquidated),
137
+ liqeePnlUsd: BigInt(fields.liqee_pnl),
138
+ liquidationFeesUsd: BigInt(fields.liquidation_fees),
139
+ forceCancelFeesUsd: BigInt(fields.force_cancel_fees),
140
+ insuranceFundFeesUsd: BigInt(fields.insurance_fund_fees),
281
141
  side: fields.is_liqee_long
282
142
  ? perpetualsTypes_1.PerpetualsOrderSide.Bid
283
143
  : perpetualsTypes_1.PerpetualsOrderSide.Ask,
@@ -299,52 +159,71 @@ PerpetualsApiCasting.createdAccountEventFromOnChain = (eventOnChain) => {
299
159
  type: eventOnChain.type,
300
160
  };
301
161
  };
302
- // =========================================================================
303
- // Order
304
- // =========================================================================
305
- PerpetualsApiCasting.canceledOrderEventFromOnChain = (eventOnChain) => {
162
+ PerpetualsApiCasting.createdSubAccountEventFromOnChain = (eventOnChain) => {
306
163
  const fields = eventOnChain.parsedJson;
307
164
  return {
165
+ users: fields.users.map((user) => utils_1.Helpers.addLeadingZeroesToType(user)),
308
166
  accountId: BigInt(fields.account_id),
309
- marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
310
- side: __1.Perpetuals.orderIdToSide(BigInt(fields.order_id)),
311
- size: BigInt(fields.size),
312
- orderId: BigInt(fields.order_id),
167
+ subAccountId: utils_1.Helpers.addLeadingZeroesToType(fields.subaccount_id),
313
168
  timestamp: eventOnChain.timestampMs,
314
169
  txnDigest: eventOnChain.id.txDigest,
315
170
  type: eventOnChain.type,
316
171
  };
317
172
  };
318
- PerpetualsApiCasting.postedOrderEventFromOnChain = (eventOnChain) => {
173
+ PerpetualsApiCasting.setSubAccountUsersEventFromOnChain = (eventOnChain) => {
319
174
  const fields = eventOnChain.parsedJson;
320
175
  return {
176
+ users: fields.users.map((user) => utils_1.Helpers.addLeadingZeroesToType(user)),
321
177
  accountId: BigInt(fields.account_id),
178
+ subAccountId: utils_1.Helpers.addLeadingZeroesToType(fields.subaccount_id),
179
+ timestamp: eventOnChain.timestampMs,
180
+ txnDigest: eventOnChain.id.txDigest,
181
+ type: eventOnChain.type,
182
+ };
183
+ };
184
+ PerpetualsApiCasting.SetPositionInitialMarginRatioEventFromOnChain = (eventOnChain) => {
185
+ const fields = eventOnChain.parsedJson;
186
+ return {
322
187
  marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
323
- side: BigInt(fields.posted_base_ask) > BigInt(fields.posted_base_bid)
324
- ? perpetualsTypes_1.PerpetualsOrderSide.Ask
325
- : perpetualsTypes_1.PerpetualsOrderSide.Bid,
326
- size: BigInt(fields.posted_base_ask + fields.posted_base_bid),
327
- asksQuantity: BigInt(fields.pending_asks),
328
- bidsQuantity: BigInt(fields.pending_bids),
188
+ accountId: BigInt(fields.account_id),
189
+ initialMarginRatio: BigInt(fields.initial_margin_ratio),
329
190
  timestamp: eventOnChain.timestampMs,
330
191
  txnDigest: eventOnChain.id.txDigest,
331
192
  type: eventOnChain.type,
332
193
  };
333
194
  };
334
- PerpetualsApiCasting.filledMakerOrderEventFromOnChain = (eventOnChain) => {
195
+ // =========================================================================
196
+ // Order
197
+ // =========================================================================
198
+ PerpetualsApiCasting.canceledOrderEventFromOnChain = (eventOnChain) => {
335
199
  const fields = eventOnChain.parsedJson;
336
200
  return {
337
- baseAssetAmount: BigInt(fields.maker_base_amount),
338
- accountId: BigInt(fields.maker_account_id),
339
- collateralDeltaUsd: BigInt(fields.collateral_change_usd),
201
+ accountId: BigInt(fields.account_id),
340
202
  marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
341
- orderId: BigInt(fields.order_id),
342
203
  side: __1.Perpetuals.orderIdToSide(BigInt(fields.order_id)),
343
- size: BigInt(fields.maker_size),
344
- dropped: BigInt(fields.maker_final_size) === BigInt(0),
345
- quoteAssetNotionalAmount: BigInt(fields.maker_quote_amount),
346
- asksQuantity: BigInt(fields.maker_pending_asks_quantity),
347
- bidsQuantity: BigInt(fields.maker_pending_bids_quantity),
204
+ size: BigInt(fields.size),
205
+ orderId: BigInt(fields.order_id),
206
+ timestamp: eventOnChain.timestampMs,
207
+ txnDigest: eventOnChain.id.txDigest,
208
+ type: eventOnChain.type,
209
+ };
210
+ };
211
+ PerpetualsApiCasting.filledMakerOrdersEventFromOnChain = (eventOnChain) => {
212
+ return {
213
+ events: eventOnChain.parsedJson.events.map((fields) => ({
214
+ accountId: BigInt(fields.maker_account_id),
215
+ takerAccountId: BigInt(fields.taker_account_id),
216
+ collateralDeltaUsd: utils_1.Casting.IFixed.iFixedFromNumber(utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.pnl)) -
217
+ utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.fees))),
218
+ pnlUsd: BigInt(fields.pnl),
219
+ feesUsd: BigInt(fields.fees),
220
+ marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
221
+ orderId: BigInt(fields.order_id),
222
+ side: __1.Perpetuals.orderIdToSide(BigInt(fields.order_id)),
223
+ size: BigInt(fields.filled_size),
224
+ dropped: BigInt(fields.remaining_size) === BigInt(0),
225
+ sizeRemaining: BigInt(fields.remaining_size),
226
+ })),
348
227
  timestamp: eventOnChain.timestampMs,
349
228
  txnDigest: eventOnChain.id.txDigest,
350
229
  type: eventOnChain.type,
@@ -357,14 +236,14 @@ PerpetualsApiCasting.filledTakerOrderEventFromOnChain = (eventOnChain) => {
357
236
  return {
358
237
  baseAssetDelta,
359
238
  accountId: BigInt(fields.taker_account_id),
360
- collateralDeltaUsd: BigInt(fields.collateral_change_usd),
239
+ collateralDeltaUsd: utils_1.Casting.IFixed.iFixedFromNumber(utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.taker_pnl)) -
240
+ utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.taker_fees))),
241
+ takerPnlUsd: BigInt(fields.taker_pnl),
242
+ takerFeesUsd: BigInt(fields.taker_fees),
361
243
  marketId: utils_1.Helpers.addLeadingZeroesToType(fields.ch_id),
362
- baseAssetAmount: BigInt(fields.taker_base_amount),
363
- quoteAssetNotionalAmount: BigInt(fields.taker_quote_amount),
364
244
  side: __1.Perpetuals.positionSide({ baseAssetAmount: baseAssetDelta }),
365
245
  quoteAssetDelta: utils_1.Casting.IFixed.iFixedFromNumber(utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.quote_asset_delta_bid)) -
366
246
  utils_1.Casting.IFixed.numberFromIFixed(BigInt(fields.quote_asset_delta_ask))),
367
- liquidatedVolume: BigInt(fields.liquidated_volume),
368
247
  timestamp: eventOnChain.timestampMs,
369
248
  txnDigest: eventOnChain.id.txDigest,
370
249
  type: eventOnChain.type,
@@ -396,6 +275,136 @@ PerpetualsApiCasting.reducedOrderEventFromOnChain = (eventOnChain) => {
396
275
  };
397
276
  };
398
277
  // =========================================================================
278
+ // Stop Orders
279
+ // =========================================================================
280
+ PerpetualsApiCasting.createdStopOrderTicketEventFromOnChain = (eventOnChain) => {
281
+ const fields = eventOnChain.parsedJson;
282
+ return {
283
+ ticketId: utils_1.Helpers.addLeadingZeroesToType(fields.ticket_id),
284
+ accountId: BigInt(fields.account_id),
285
+ executors: fields.executors.map((executor) => utils_1.Helpers.addLeadingZeroesToType(executor)),
286
+ gas: BigInt(fields.gas),
287
+ stopOrderType: Number(fields.stop_order_type),
288
+ encryptedDetails: fields.encrypted_details,
289
+ timestamp: eventOnChain.timestampMs,
290
+ txnDigest: eventOnChain.id.txDigest,
291
+ type: eventOnChain.type,
292
+ };
293
+ };
294
+ PerpetualsApiCasting.executedStopOrderTicketEventFromOnChain = (eventOnChain) => {
295
+ const f = eventOnChain.parsedJson;
296
+ return {
297
+ ticketId: utils_1.Helpers.addLeadingZeroesToType(f.ticket_id),
298
+ executor: utils_1.Helpers.addLeadingZeroesToType(f.executor),
299
+ accountId: BigInt(f.account_id),
300
+ timestamp: eventOnChain.timestampMs,
301
+ txnDigest: eventOnChain.id.txDigest,
302
+ type: eventOnChain.type,
303
+ };
304
+ };
305
+ PerpetualsApiCasting.deletedStopOrderTicketEventFromOnChain = (eventOnChain) => {
306
+ const f = eventOnChain.parsedJson;
307
+ return {
308
+ ticketId: utils_1.Helpers.addLeadingZeroesToType(f.ticket_id),
309
+ executor: utils_1.Helpers.addLeadingZeroesToType(f.executor),
310
+ accountId: BigInt(f.account_id),
311
+ subAccountId: f.subaccount_id
312
+ ? utils_1.Helpers.addLeadingZeroesToType(f.subaccount_id)
313
+ : undefined,
314
+ timestamp: eventOnChain.timestampMs,
315
+ txnDigest: eventOnChain.id.txDigest,
316
+ type: eventOnChain.type,
317
+ };
318
+ };
319
+ PerpetualsApiCasting.editedStopOrderTicketDetailsEventFromOnChain = (eventOnChain) => {
320
+ const f = eventOnChain.parsedJson;
321
+ return {
322
+ ticketId: utils_1.Helpers.addLeadingZeroesToType(f.ticket_id),
323
+ stopOrderType: Number(f.stop_order_type),
324
+ accountId: BigInt(f.account_id),
325
+ subAccountId: f.subaccount_id
326
+ ? utils_1.Helpers.addLeadingZeroesToType(f.subaccount_id)
327
+ : undefined,
328
+ encryptedDetails: f.encrypted_details,
329
+ timestamp: eventOnChain.timestampMs,
330
+ txnDigest: eventOnChain.id.txDigest,
331
+ type: eventOnChain.type,
332
+ };
333
+ };
334
+ PerpetualsApiCasting.editedStopOrderTicketExecutorEventFromOnChain = (eventOnChain) => {
335
+ const f = eventOnChain.parsedJson;
336
+ return {
337
+ ticketId: utils_1.Helpers.addLeadingZeroesToType(f.ticket_id),
338
+ accountId: BigInt(f.account_id),
339
+ subAccountId: f.subaccount_id
340
+ ? utils_1.Helpers.addLeadingZeroesToType(f.subaccount_id)
341
+ : undefined,
342
+ executors: f.executors.map((executor) => utils_1.Helpers.addLeadingZeroesToType(executor)),
343
+ timestamp: eventOnChain.timestampMs,
344
+ txnDigest: eventOnChain.id.txDigest,
345
+ type: eventOnChain.type,
346
+ };
347
+ };
348
+ // public static addedStopOrderTicketCollateralEventFromOnChain = (
349
+ // eventOnChain: AddedStopOrderTicketCollateralEventOnChain
350
+ // ): AddedStopOrderTicketCollateralEvent => {
351
+ // const f = eventOnChain.parsedJson;
352
+ // return {
353
+ // ticketId: Helpers.addLeadingZeroesToType(f.ticket_id),
354
+ // accountId: BigInt(f.account_id),
355
+ // subAccountId: f.subaccount_id
356
+ // ? Helpers.addLeadingZeroesToType(f.subaccount_id)
357
+ // : undefined,
358
+ // collateralToAllocate: BigInt(f.collateral_to_allocate),
359
+ // timestamp: eventOnChain.timestampMs,
360
+ // txnDigest: eventOnChain.id.txDigest,
361
+ // type: eventOnChain.type,
362
+ // };
363
+ // };
364
+ // public static removedStopOrderTicketCollateralEventFromOnChain = (
365
+ // eventOnChain: RemovedStopOrderTicketCollateralEventOnChain
366
+ // ): RemovedStopOrderTicketCollateralEvent => {
367
+ // const f = eventOnChain.parsedJson;
368
+ // return {
369
+ // ticketId: Helpers.addLeadingZeroesToType(f.ticket_id),
370
+ // accountId: BigInt(f.account_id),
371
+ // subAccountId: f.subaccount_id
372
+ // ? Helpers.addLeadingZeroesToType(f.subaccount_id)
373
+ // : undefined,
374
+ // collateralToRemove: BigInt(f.collateral_to_remove),
375
+ // timestamp: eventOnChain.timestampMs,
376
+ // txnDigest: eventOnChain.id.txDigest,
377
+ // type: eventOnChain.type,
378
+ // };
379
+ // };
380
+ // public static transferredDeallocatedCollateralEventFromOnChain = (
381
+ // eventOnChain: TransferredDeallocatedCollateralEventOnChain
382
+ // ): TransferredDeallocatedCollateralEvent => {
383
+ // const f = eventOnChain.parsedJson;
384
+ // return {
385
+ // chId: Helpers.addLeadingZeroesToType(f.ch_id),
386
+ // objectId: Helpers.addLeadingZeroesToType(f.obj_id),
387
+ // accountId: BigInt(f.account_id),
388
+ // collateral: BigInt(f.collateral),
389
+ // timestamp: eventOnChain.timestampMs,
390
+ // txnDigest: eventOnChain.id.txDigest,
391
+ // type: eventOnChain.type,
392
+ // };
393
+ // };
394
+ // public static receivedCollateralEventFromOnChain = (
395
+ // eventOnChain: ReceivedCollateralEventOnChain
396
+ // ): ReceivedCollateralEvent => {
397
+ // const f = eventOnChain.parsedJson;
398
+ // return {
399
+ // objectId: Helpers.addLeadingZeroesToType(f.obj_id),
400
+ // accountId: BigInt(f.account_id),
401
+ // collateral: BigInt(f.collateral),
402
+ // timestamp: eventOnChain.timestampMs,
403
+ // txnDigest: eventOnChain.id.txDigest,
404
+ // type: eventOnChain.type,
405
+ // };
406
+ // };
407
+ // =========================================================================
399
408
  // Twap
400
409
  // =========================================================================
401
410
  PerpetualsApiCasting.updatedPremiumTwapEventFromOnChain = (eventOnChain) => {
@@ -1,11 +1,17 @@
1
1
  import { Caller } from "../../general/utils/caller";
2
- import { ApiPerpetualsCreateAccountBody, PerpetualsMarketId, ApiPerpetualsAccountsBody, PerpetualsOrderSide, CoinType, PerpetualsOrderId, FilledTakerOrderEvent, PerpetualsOrderPrice, Timestamp, ApiPerpetualsHistoricalMarketDataResponse, PerpetualsAccountCap, IFixed, CallerConfig } from "../../types";
2
+ import { PerpetualsMarketId, ApiPerpetualsOwnedAccountCapsBody, PerpetualsOrderSide, CoinType, PerpetualsOrderId, FilledTakerOrderEvent, PerpetualsOrderPrice, Timestamp, ApiPerpetualsHistoricalMarketDataResponse, PerpetualsAccountCap, PerpetualsAccountId, PerpetualsAccountObject, IFixed, CallerConfig, SuiAddress, ObjectId, ApiPerpetualsMarkets24hrStatsResponse, ApiPerpetualsAccountCapsBody } from "../../types";
3
3
  import { PerpetualsMarket } from "./perpetualsMarket";
4
4
  import { PerpetualsAccount } from "./perpetualsAccount";
5
5
  import { PerpetualsOrderUtils } from "./utils";
6
+ import { AftermathApi } from "../../general/providers";
7
+ import { Transaction } from "@mysten/sui/transactions";
6
8
  export declare class Perpetuals extends Caller {
9
+ readonly Provider?: AftermathApi | undefined;
7
10
  static readonly OrderUtils: typeof PerpetualsOrderUtils;
8
- constructor(config?: CallerConfig);
11
+ static readonly constants: {
12
+ stopOrderGasCostSUI: bigint;
13
+ };
14
+ constructor(config?: CallerConfig, Provider?: AftermathApi | undefined);
9
15
  getAllMarkets(inputs: {
10
16
  collateralCoinType: CoinType;
11
17
  }): Promise<PerpetualsMarket[]>;
@@ -19,18 +25,41 @@ export declare class Perpetuals extends Caller {
19
25
  }): Promise<PerpetualsMarket[]>;
20
26
  getAccount(inputs: {
21
27
  accountCap: PerpetualsAccountCap;
28
+ marketIds?: PerpetualsMarketId[];
22
29
  }): Promise<PerpetualsAccount>;
23
- getUserAccountCaps(inputs: ApiPerpetualsAccountsBody & {
30
+ getAccounts(inputs: {
31
+ accountCaps: PerpetualsAccountCap[];
32
+ marketIds?: PerpetualsMarketId[];
33
+ }): Promise<PerpetualsAccount[]>;
34
+ getAccountObjects(inputs: {
35
+ accountIds: PerpetualsAccountId[];
24
36
  collateralCoinType: CoinType;
37
+ marketIds?: PerpetualsMarketId[];
38
+ }): Promise<PerpetualsAccountObject[]>;
39
+ getUserAccountCaps(inputs: ApiPerpetualsOwnedAccountCapsBody & {
40
+ collateralCoinTypes?: CoinType[];
25
41
  }): Promise<PerpetualsAccountCap[]>;
42
+ getAccountCaps(inputs: ApiPerpetualsAccountCapsBody): Promise<PerpetualsAccountCap[]>;
26
43
  getMarketHistoricalData(inputs: {
27
- collateralCoinType: CoinType;
28
44
  marketId: PerpetualsMarketId;
29
45
  fromTimestamp: Timestamp;
30
46
  toTimestamp: Timestamp;
31
47
  intervalMs: number;
32
48
  }): Promise<ApiPerpetualsHistoricalMarketDataResponse>;
33
- getCreateAccountTx(inputs: ApiPerpetualsCreateAccountBody): Promise<import("@mysten/sui/transactions").Transaction>;
49
+ getMarkets24hrStats(inputs: {
50
+ marketIds: PerpetualsMarketId[];
51
+ }): Promise<ApiPerpetualsMarkets24hrStatsResponse>;
52
+ getPrices(inputs: {
53
+ marketIds: ObjectId[];
54
+ }): Promise<{
55
+ basePrice: number;
56
+ collateralPrice: number;
57
+ }[]>;
58
+ getCreateAccountTx(inputs: {
59
+ walletAddress: SuiAddress;
60
+ collateralCoinType: CoinType;
61
+ tx?: Transaction;
62
+ }): Promise<Transaction>;
34
63
  static positionSide(inputs: {
35
64
  baseAssetAmount: IFixed;
36
65
  }): PerpetualsOrderSide;
@@ -50,9 +79,14 @@ export declare class Perpetuals extends Caller {
50
79
  static lotOrTickSizeToNumber(lotOrTickSize: bigint): number;
51
80
  static lotOrTickSizeToBigInt(lotOrTickSize: number): bigint;
52
81
  static orderIdToSide: (orderId: PerpetualsOrderId) => PerpetualsOrderSide;
82
+ static eventTypeForCollateral: (inputs: {
83
+ eventType: string;
84
+ collateralCoinType: CoinType;
85
+ }) => string;
53
86
  static calcEntryPrice(inputs: {
54
87
  baseAssetAmount: IFixed;
55
88
  quoteAssetNotionalAmount: IFixed;
56
89
  }): number;
90
+ private useProvider;
57
91
  }
58
92
  //# sourceMappingURL=perpetuals.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"perpetuals.d.ts","sourceRoot":"","sources":["../../../src/packages/perpetuals/perpetuals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EACN,8BAA8B,EAM9B,kBAAkB,EAClB,yBAAyB,EAEzB,mBAAmB,EAEnB,QAAQ,EACR,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,SAAS,EAET,yCAAyC,EACzC,oBAAoB,EAGpB,MAAM,EAEN,YAAY,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAE/C,qBAAa,UAAW,SAAQ,MAAM;IAKrC,gBAAuB,UAAU,8BAAwB;gBAM7C,MAAM,CAAC,EAAE,YAAY;IAQpB,aAAa,CAAC,MAAM,EAAE;QAClC,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAUlB,SAAS,CAAC,MAAM,EAAE;QAC9B,QAAQ,EAAE,kBAAkB,CAAC;QAC7B,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAOhB,UAAU,CAAC,MAAM,EAAE;QAC/B,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAYlB,UAAU,CAAC,MAAM,EAAE;QAC/B,UAAU,EAAE,oBAAoB,CAAC;KACjC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQjB,kBAAkB,CAC9B,MAAM,EAAE,yBAAyB,GAAG;QACnC,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,GACC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAc3B,uBAAuB,CAAC,MAAM,EAAE;QACtC,kBAAkB,EAAE,QAAQ,CAAC;QAC7B,QAAQ,EAAE,kBAAkB,CAAC;QAC7B,aAAa,EAAE,SAAS,CAAC;QACzB,WAAW,EAAE,SAAS,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACnB;IAiBY,kBAAkB,CAAC,MAAM,EAAE,8BAA8B;WAexD,YAAY,CAAC,MAAM,EAAE;QAClC,eAAe,EAAE,MAAM,CAAC;KACxB,GAAG,mBAAmB;WAQT,UAAU,CAAC,MAAM,EAAE;QAChC,UAAU,EAAE,qBAAqB,CAAC;KAClC,GAAG,MAAM;IAQV,OAAc,iBAAiB,WAAY;QAC1C,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAC1B,KAAG,oBAAoB,CAqBtB;IAEF,OAAc,iBAAiB,WAAY;QAC1C,UAAU,EAAE,oBAAoB,CAAC;QACjC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAC1B,KAAG,MAAM,CAgBR;WAEY,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;WAIpD,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAIlE,OAAc,aAAa,YACjB,iBAAiB,KACxB,mBAAmB,CAIpB;WAMY,cAAc,CAAC,MAAM,EAAE;QACpC,eAAe,EAAE,MAAM,CAAC;QACxB,wBAAwB,EAAE,MAAM,CAAC;KACjC,GAAG,MAAM;CAWV"}
1
+ {"version":3,"file":"perpetuals.d.ts","sourceRoot":"","sources":["../../../src/packages/perpetuals/perpetuals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAON,kBAAkB,EAClB,iCAAiC,EAEjC,mBAAmB,EAEnB,QAAQ,EACR,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,SAAS,EAET,yCAAyC,EACzC,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,MAAM,EAEN,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,qCAAqC,EACrC,4BAA4B,EAC5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,qBAAa,UAAW,SAAQ,MAAM;aAiBpB,QAAQ,CAAC,EAAE,YAAY;IAZxC,gBAAuB,UAAU,8BAAwB;IAEzD,gBAAuB,SAAS;;MAE9B;gBAOD,MAAM,CAAC,EAAE,YAAY,EACL,QAAQ,CAAC,EAAE,YAAY,YAAA;IAS3B,aAAa,CAAC,MAAM,EAAE;QAClC,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAYlB,SAAS,CAAC,MAAM,EAAE;QAC9B,QAAQ,EAAE,kBAAkB,CAAC;QAC7B,kBAAkB,EAAE,QAAQ,CAAC;KAE7B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQhB,UAAU,CAAC,MAAM,EAAE;QAC/B,SAAS,EAAE,kBAAkB,EAAE,CAAC;QAChC,kBAAkB,EAAE,QAAQ,CAAC;KAE7B,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAuBlB,UAAU,CAAC,MAAM,EAAE;QAC/B,UAAU,EAAE,oBAAoB,CAAC;QACjC,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACjC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAWjB,WAAW,CAAC,MAAM,EAAE;QAChC,WAAW,EAAE,oBAAoB,EAAE,CAAC;QACpC,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACjC,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAsBnB,iBAAiB,CAAC,MAAM,EAAE;QACtC,UAAU,EAAE,mBAAmB,EAAE,CAAC;QAClC,kBAAkB,EAAE,QAAQ,CAAC;QAC7B,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;KACjC,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAkBzB,kBAAkB,CAC9B,MAAM,EAAE,iCAAiC,GAAG;QAC3C,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC;KACjC,GACC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAerB,cAAc,CAC1B,MAAM,EAAE,4BAA4B,GAClC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAW3B,uBAAuB,CAAC,MAAM,EAAE;QACtC,QAAQ,EAAE,kBAAkB,CAAC;QAC7B,aAAa,EAAE,SAAS,CAAC;QACzB,WAAW,EAAE,SAAS,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,yCAAyC,CAAC;IAU/C,mBAAmB,CAAC,MAAM,EAAE;QAClC,SAAS,EAAE,kBAAkB,EAAE,CAAC;KAChC,GAAG,OAAO,CAAC,qCAAqC,CAAC;IAarC,SAAS,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;KAAE,GAAG,OAAO,CACjE;QACC,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACxB,EAAE,CACH;IASY,kBAAkB,CAAC,MAAM,EAAE;QACvC,aAAa,EAAE,UAAU,CAAC;QAC1B,kBAAkB,EAAE,QAAQ,CAAC;QAC7B,EAAE,CAAC,EAAE,WAAW,CAAC;KACjB;WA0Ba,YAAY,CAAC,MAAM,EAAE;QAClC,eAAe,EAAE,MAAM,CAAC;KACxB,GAAG,mBAAmB;WAQT,UAAU,CAAC,MAAM,EAAE;QAChC,UAAU,EAAE,qBAAqB,CAAC;KAClC,GAAG,MAAM;IAQV,OAAc,iBAAiB,GAAI,QAAQ;QAC1C,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAC1B,KAAG,oBAAoB,CAqBtB;IAEF,OAAc,iBAAiB,GAAI,QAAQ;QAC1C,UAAU,EAAE,oBAAoB,CAAC;QACjC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAC1B,KAAG,MAAM,CAgBR;WAEY,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;WAIpD,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAIlE,OAAc,aAAa,GAC1B,SAAS,iBAAiB,KACxB,mBAAmB,CAIpB;IAEF,OAAc,sBAAsB,GAAI,QAAQ;QAC/C,SAAS,EAAE,MAAM,CAAC;QAClB,kBAAkB,EAAE,QAAQ,CAAC;KAC7B,KAAG,MAAM,CAER;WAMY,cAAc,CAAC,MAAM,EAAE;QACpC,eAAe,EAAE,MAAM,CAAC;QACxB,wBAAwB,EAAE,MAAM,CAAC;KACjC,GAAG,MAAM;IAgBV,OAAO,CAAC,WAAW,CAIjB;CACF"}