@decibeltrade/sdk 0.2.3 → 0.2.4

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 (68) hide show
  1. package/dist/abi/generate-abis.js +9 -44
  2. package/dist/abi/types.js +1 -2
  3. package/dist/admin.js +10 -14
  4. package/dist/base.js +20 -27
  5. package/dist/constants.js +36 -43
  6. package/dist/fee-pay.js +1 -4
  7. package/dist/gas/gas-price-manager.js +3 -7
  8. package/dist/index.js +10 -26
  9. package/dist/order-event.types.js +1 -2
  10. package/dist/order-status.js +16 -23
  11. package/dist/read/account-overview/account-overview.reader.js +5 -9
  12. package/dist/read/account-overview/account-overview.types.d.ts +7 -7
  13. package/dist/read/account-overview/account-overview.types.js +23 -29
  14. package/dist/read/base-reader.js +5 -9
  15. package/dist/read/candlesticks/candlesticks.reader.js +8 -12
  16. package/dist/read/candlesticks/candlesticks.types.js +14 -20
  17. package/dist/read/delegations/delegations.reader.js +4 -8
  18. package/dist/read/delegations/delegations.types.js +6 -12
  19. package/dist/read/index.js +50 -68
  20. package/dist/read/leaderboard/leaderboard.reader.js +6 -10
  21. package/dist/read/leaderboard/leaderboard.types.js +10 -13
  22. package/dist/read/market-contexts/market-contexts.reader.js +4 -8
  23. package/dist/read/market-contexts/market-contexts.types.js +11 -17
  24. package/dist/read/market-depth/market-depth.reader.js +9 -13
  25. package/dist/read/market-depth/market-depth.types.js +8 -14
  26. package/dist/read/market-prices/market-prices.reader.js +11 -15
  27. package/dist/read/market-prices/market-prices.types.js +22 -25
  28. package/dist/read/market-trades/market-trades.reader.js +8 -12
  29. package/dist/read/market-trades/market-trades.types.js +18 -21
  30. package/dist/read/markets/markets.reader.js +7 -11
  31. package/dist/read/markets/markets.types.js +32 -35
  32. package/dist/read/pagination.types.js +4 -11
  33. package/dist/read/portfolio-chart/portfolio-chart.reader.js +4 -8
  34. package/dist/read/portfolio-chart/portfolio-chart.types.js +5 -11
  35. package/dist/read/types.js +58 -75
  36. package/dist/read/user-active-twaps/user-active-twaps.reader.js +5 -9
  37. package/dist/read/user-active-twaps/user-active-twaps.types.js +18 -24
  38. package/dist/read/user-bulk-orders/user-bulk-orders.reader.js +5 -9
  39. package/dist/read/user-bulk-orders/user-bulk-orders.types.js +16 -22
  40. package/dist/read/user-funding-history/user-funding-history.reader.js +5 -9
  41. package/dist/read/user-funding-history/user-funding-history.types.js +13 -19
  42. package/dist/read/user-notifications/user-notifications.reader.js +4 -8
  43. package/dist/read/user-notifications/user-notifications.types.js +19 -25
  44. package/dist/read/user-open-orders/user-open-orders.reader.js +5 -9
  45. package/dist/read/user-open-orders/user-open-orders.types.js +27 -33
  46. package/dist/read/user-order-history/user-order-history.reader.js +5 -9
  47. package/dist/read/user-order-history/user-order-history.types.js +32 -38
  48. package/dist/read/user-positions/user-positions.reader.js +5 -9
  49. package/dist/read/user-positions/user-positions.types.d.ts +13 -13
  50. package/dist/read/user-positions/user-positions.types.js +21 -27
  51. package/dist/read/user-subaccounts/user-subaccounts.reader.js +4 -8
  52. package/dist/read/user-subaccounts/user-subaccounts.types.js +8 -14
  53. package/dist/read/user-trade-history/user-trade-history.reader.js +5 -9
  54. package/dist/read/user-trade-history/user-trade-history.types.js +18 -24
  55. package/dist/read/vaults/vaults.reader.js +6 -10
  56. package/dist/read/vaults/vaults.types.js +53 -59
  57. package/dist/read/ws-subscription.d.ts +1 -1
  58. package/dist/read/ws-subscription.js +12 -19
  59. package/dist/subaccount-types.js +4 -10
  60. package/dist/transaction-builder.js +11 -16
  61. package/dist/tsconfig.tsbuildinfo +1 -1
  62. package/dist/utils.js +34 -50
  63. package/dist/write.d.ts +2 -2
  64. package/dist/write.d.ts.map +1 -1
  65. package/dist/write.js +22 -26
  66. package/package.json +1 -1
  67. package/src/read/ws-subscription.ts +2 -2
  68. package/src/write.ts +3 -3
@@ -1,27 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AllMarketPricesWsMessageSchema = exports.MarketPriceWsMessageSchema = exports.MarketPriceSchema = exports.MarketPricesSchema = exports.PricesSchema = void 0;
4
- const v4_1 = require("zod/v4");
5
- exports.PricesSchema = v4_1.z.object({
6
- market: v4_1.z.string(),
7
- mark_px: v4_1.z.number(),
8
- mid_px: v4_1.z.number(),
9
- oracle_px: v4_1.z.number(),
10
- funding_rate_bps: v4_1.z.number(),
11
- is_funding_positive: v4_1.z.boolean(),
12
- open_interest: v4_1.z.number(),
13
- transaction_unix_ms: v4_1.z.number(),
1
+ import { z } from "zod/v4";
2
+ export const PricesSchema = z.object({
3
+ market: z.string(),
4
+ mark_px: z.number(),
5
+ mid_px: z.number(),
6
+ oracle_px: z.number(),
7
+ funding_rate_bps: z.number(),
8
+ is_funding_positive: z.boolean(),
9
+ open_interest: z.number(),
10
+ transaction_unix_ms: z.number(),
14
11
  });
15
- exports.MarketPricesSchema = v4_1.z.array(exports.PricesSchema);
16
- exports.MarketPriceSchema = v4_1.z.object({
17
- market: v4_1.z.string(),
18
- mark_px: v4_1.z.number(),
19
- mid_px: v4_1.z.number(),
20
- oracle_px: v4_1.z.number(),
21
- funding_rate_bps: v4_1.z.number(),
22
- is_funding_positive: v4_1.z.boolean(),
23
- open_interest: v4_1.z.number(),
24
- transaction_unix_ms: v4_1.z.number(),
12
+ export const MarketPricesSchema = z.array(PricesSchema);
13
+ export const MarketPriceSchema = z.object({
14
+ market: z.string(),
15
+ mark_px: z.number(),
16
+ mid_px: z.number(),
17
+ oracle_px: z.number(),
18
+ funding_rate_bps: z.number(),
19
+ is_funding_positive: z.boolean(),
20
+ open_interest: z.number(),
21
+ transaction_unix_ms: z.number(),
25
22
  });
26
- exports.MarketPriceWsMessageSchema = v4_1.z.object({ price: exports.MarketPriceSchema });
27
- exports.AllMarketPricesWsMessageSchema = v4_1.z.object({ prices: exports.MarketPricesSchema });
23
+ export const MarketPriceWsMessageSchema = z.object({ price: MarketPriceSchema });
24
+ export const AllMarketPricesWsMessageSchema = z.object({ prices: MarketPricesSchema });
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketTradesReader = void 0;
4
- const utils_1 = require("../../utils");
5
- const base_reader_1 = require("../base-reader");
6
- const market_trades_types_1 = require("./market-trades.types");
7
- class MarketTradesReader extends base_reader_1.BaseReader {
1
+ import { getMarketAddr } from "../../utils";
2
+ import { BaseReader } from "../base-reader";
3
+ import { MarketTradesHistorySchema, MarketTradeWsMessageSchema, } from "./market-trades.types";
4
+ export class MarketTradesReader extends BaseReader {
8
5
  /**
9
6
  * Get the latest market trades for a given market
10
7
  * @param marketName The name of the market to get market trades for
@@ -12,13 +9,13 @@ class MarketTradesReader extends base_reader_1.BaseReader {
12
9
  * @returns The market trades for the given market
13
10
  */
14
11
  async getByName({ marketName, limit, fetchOptions }) {
15
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
12
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
16
13
  const queryParams = new URLSearchParams({ market: marketAddr.toString() });
17
14
  if (limit !== undefined) {
18
15
  queryParams.set("limit", limit.toString());
19
16
  }
20
17
  const response = await this.getRequest({
21
- schema: market_trades_types_1.MarketTradesHistorySchema,
18
+ schema: MarketTradesHistorySchema,
22
19
  url: `${this.deps.config.tradingHttpUrl}/api/v1/trades`,
23
20
  queryParams,
24
21
  options: fetchOptions,
@@ -32,9 +29,8 @@ class MarketTradesReader extends base_reader_1.BaseReader {
32
29
  * @returns A function to unsubscribe from the market trades updates
33
30
  */
34
31
  subscribeByName(marketName, onData) {
35
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
32
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
36
33
  const topic = `trades:${marketAddr}`;
37
- return this.deps.ws.subscribe(topic, market_trades_types_1.MarketTradeWsMessageSchema, onData);
34
+ return this.deps.ws.subscribe(topic, MarketTradeWsMessageSchema, onData);
38
35
  }
39
36
  }
40
- exports.MarketTradesReader = MarketTradesReader;
@@ -1,23 +1,20 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketTradeWsMessageSchema = exports.MarketTradesHistorySchema = exports.MarketTradeSchema = void 0;
4
- const v4_1 = require("zod/v4");
5
- exports.MarketTradeSchema = v4_1.z.object({
6
- account: v4_1.z.string(),
7
- market: v4_1.z.string(),
8
- action: v4_1.z.string(),
9
- size: v4_1.z.number(),
10
- price: v4_1.z.number(),
11
- is_profit: v4_1.z.boolean(),
12
- realized_pnl_amount: v4_1.z.number(),
13
- is_funding_positive: v4_1.z.boolean(),
14
- realized_funding_amount: v4_1.z.number(),
15
- is_rebate: v4_1.z.boolean(),
16
- fee_amount: v4_1.z.number(),
17
- transaction_unix_ms: v4_1.z.number(),
18
- transaction_version: v4_1.z.number(),
1
+ import { z } from "zod/v4";
2
+ export const MarketTradeSchema = z.object({
3
+ account: z.string(),
4
+ market: z.string(),
5
+ action: z.string(),
6
+ size: z.number(),
7
+ price: z.number(),
8
+ is_profit: z.boolean(),
9
+ realized_pnl_amount: z.number(),
10
+ is_funding_positive: z.boolean(),
11
+ realized_funding_amount: z.number(),
12
+ is_rebate: z.boolean(),
13
+ fee_amount: z.number(),
14
+ transaction_unix_ms: z.number(),
15
+ transaction_version: z.number(),
19
16
  });
20
- exports.MarketTradesHistorySchema = v4_1.z.array(exports.MarketTradeSchema);
21
- exports.MarketTradeWsMessageSchema = v4_1.z.object({
22
- trades: v4_1.z.array(exports.MarketTradeSchema),
17
+ export const MarketTradesHistorySchema = z.array(MarketTradeSchema);
18
+ export const MarketTradeWsMessageSchema = z.object({
19
+ trades: z.array(MarketTradeSchema),
23
20
  });
@@ -1,17 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MarketsReader = void 0;
4
- const utils_1 = require("../../utils");
5
- const base_reader_1 = require("../base-reader");
6
- const markets_types_1 = require("./markets.types");
7
- class MarketsReader extends base_reader_1.BaseReader {
1
+ import { getMarketAddr } from "../../utils";
2
+ import { BaseReader } from "../base-reader";
3
+ import { PerpMarketConfigSchema, PerpMarketsSchema } from "./markets.types";
4
+ export class MarketsReader extends BaseReader {
8
5
  /**
9
6
  * Get all of the available markets
10
7
  * @returns The list of available markets
11
8
  */
12
9
  async getAll({ fetchOptions } = {}) {
13
10
  const response = await this.getRequest({
14
- schema: markets_types_1.PerpMarketsSchema,
11
+ schema: PerpMarketsSchema,
15
12
  url: `${this.deps.config.tradingHttpUrl}/api/v1/markets`,
16
13
  options: fetchOptions,
17
14
  });
@@ -32,7 +29,7 @@ class MarketsReader extends base_reader_1.BaseReader {
32
29
  * @returns The market config for the given name
33
30
  */
34
31
  async getByName(marketName) {
35
- const marketAddr = (0, utils_1.getMarketAddr)(marketName, this.deps.config.deployment.perpEngineGlobal);
32
+ const marketAddr = getMarketAddr(marketName, this.deps.config.deployment.perpEngineGlobal);
36
33
  try {
37
34
  // TODO: Fix lint error
38
35
  // eslint-disable-next-line custom/no-get-account-resource
@@ -41,7 +38,7 @@ class MarketsReader extends base_reader_1.BaseReader {
41
38
  resourceType: `${this.deps.config.deployment.package}::perp_market_config::PerpMarketConfig`,
42
39
  });
43
40
  // TODO: Handle different __variant__ values
44
- return markets_types_1.PerpMarketConfigSchema.parse(market);
41
+ return PerpMarketConfigSchema.parse(market);
45
42
  }
46
43
  catch (e) {
47
44
  console.error(e);
@@ -78,4 +75,3 @@ class MarketsReader extends base_reader_1.BaseReader {
78
75
  return name[0];
79
76
  }
80
77
  }
81
- exports.MarketsReader = MarketsReader;
@@ -1,46 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PerpMarketsSchema = exports.PerpMarketSchema = exports.MarketModeSchema = exports.PerpMarketConfigSchema = exports.MarketModeConfigSchema = void 0;
4
- const v4_1 = require("zod/v4");
5
- exports.MarketModeConfigSchema = v4_1.z.discriminatedUnion("__variant__", [
6
- v4_1.z.object({ __variant__: v4_1.z.literal("Open") }),
7
- v4_1.z.object({ __variant__: v4_1.z.literal("ReduceOnly") }),
8
- v4_1.z.object({
9
- __variant__: v4_1.z.literal("AllowlistOnly"),
10
- allowlist: v4_1.z.array(v4_1.z.string()),
1
+ import { z } from "zod/v4";
2
+ export const MarketModeConfigSchema = z.discriminatedUnion("__variant__", [
3
+ z.object({ __variant__: z.literal("Open") }),
4
+ z.object({ __variant__: z.literal("ReduceOnly") }),
5
+ z.object({
6
+ __variant__: z.literal("AllowlistOnly"),
7
+ allowlist: z.array(z.string()),
11
8
  }),
12
- v4_1.z.object({ __variant__: v4_1.z.literal("Halt") }),
9
+ z.object({ __variant__: z.literal("Halt") }),
13
10
  ]);
14
- exports.PerpMarketConfigSchema = v4_1.z.object({
15
- __variant__: v4_1.z.literal("V1"),
16
- name: v4_1.z.string(),
17
- sz_precision: v4_1.z.object({
18
- decimals: v4_1.z.number(),
19
- multiplier: v4_1.z.string(),
11
+ export const PerpMarketConfigSchema = z.object({
12
+ __variant__: z.literal("V1"),
13
+ name: z.string(),
14
+ sz_precision: z.object({
15
+ decimals: z.number(),
16
+ multiplier: z.string(),
20
17
  }),
21
- min_size: v4_1.z.string(),
22
- lot_size: v4_1.z.string(),
23
- ticker_size: v4_1.z.string(),
24
- max_leverage: v4_1.z.number(),
25
- mode: exports.MarketModeConfigSchema,
18
+ min_size: z.string(),
19
+ lot_size: z.string(),
20
+ ticker_size: z.string(),
21
+ max_leverage: z.number(),
22
+ mode: MarketModeConfigSchema,
26
23
  });
27
- exports.MarketModeSchema = v4_1.z.enum([
24
+ export const MarketModeSchema = z.enum([
28
25
  "Open",
29
26
  "ReduceOnly",
30
27
  "AllowlistOnly",
31
28
  "Halt",
32
29
  "Delisting",
33
30
  ]);
34
- exports.PerpMarketSchema = v4_1.z.object({
35
- market_addr: v4_1.z.string(),
36
- market_name: v4_1.z.string(),
37
- sz_decimals: v4_1.z.number(),
38
- px_decimals: v4_1.z.number(),
39
- max_leverage: v4_1.z.number(),
40
- tick_size: v4_1.z.number(),
41
- min_size: v4_1.z.number(),
42
- lot_size: v4_1.z.number(),
43
- max_open_interest: v4_1.z.number(),
44
- mode: exports.MarketModeSchema,
31
+ export const PerpMarketSchema = z.object({
32
+ market_addr: z.string(),
33
+ market_name: z.string(),
34
+ sz_decimals: z.number(),
35
+ px_decimals: z.number(),
36
+ max_leverage: z.number(),
37
+ tick_size: z.number(),
38
+ min_size: z.number(),
39
+ lot_size: z.number(),
40
+ max_open_interest: z.number(),
41
+ mode: MarketModeSchema,
45
42
  });
46
- exports.PerpMarketsSchema = v4_1.z.array(exports.PerpMarketSchema);
43
+ export const PerpMarketsSchema = z.array(PerpMarketSchema);
@@ -1,12 +1,5 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PaginatedResponseSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- const PaginatedResponseSchema = (itemSchema) => v4_1.default.object({
9
- items: v4_1.default.array(itemSchema),
10
- total_count: v4_1.default.number(),
1
+ import z from "zod/v4";
2
+ export const PaginatedResponseSchema = (itemSchema) => z.object({
3
+ items: z.array(itemSchema),
4
+ total_count: z.number(),
11
5
  });
12
- exports.PaginatedResponseSchema = PaginatedResponseSchema;
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PortfolioChartReader = void 0;
4
- const base_reader_1 = require("../base-reader");
5
- const portfolio_chart_types_1 = require("./portfolio-chart.types");
6
- class PortfolioChartReader extends base_reader_1.BaseReader {
1
+ import { BaseReader } from "../base-reader";
2
+ import { PortfolioChartSchema } from "./portfolio-chart.types";
3
+ export class PortfolioChartReader extends BaseReader {
7
4
  /**
8
5
  * Get the portfolio chart for a given user
9
6
  * @param subAddr The subaccount address to get the account overview for
@@ -11,7 +8,7 @@ class PortfolioChartReader extends base_reader_1.BaseReader {
11
8
  */
12
9
  async getByAddr({ subAddr, range, type, fetchOptions }) {
13
10
  const response = await this.getRequest({
14
- schema: portfolio_chart_types_1.PortfolioChartSchema,
11
+ schema: PortfolioChartSchema,
15
12
  url: `${this.deps.config.tradingHttpUrl}/api/v1/portfolio_chart`,
16
13
  queryParams: { user: subAddr, range, data_type: type },
17
14
  options: fetchOptions,
@@ -19,4 +16,3 @@ class PortfolioChartReader extends base_reader_1.BaseReader {
19
16
  return response.data;
20
17
  }
21
18
  }
22
- exports.PortfolioChartReader = PortfolioChartReader;
@@ -1,12 +1,6 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PortfolioChartSchema = exports.PortfolioChartPnlItemSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.PortfolioChartPnlItemSchema = v4_1.default.object({
9
- timestamp: v4_1.default.number(),
10
- data_points: v4_1.default.number(),
1
+ import z from "zod/v4";
2
+ export const PortfolioChartPnlItemSchema = z.object({
3
+ timestamp: z.number(),
4
+ data_points: z.number(),
11
5
  });
12
- exports.PortfolioChartSchema = v4_1.default.array(exports.PortfolioChartPnlItemSchema);
6
+ export const PortfolioChartSchema = z.array(PortfolioChartPnlItemSchema);
@@ -1,87 +1,70 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.GlobalAccountsState = exports.GlobalAccountsStateV1 = exports.CollateralBalanceSheet = exports.LiquidationConfigV1 = exports.CrossedPosition = exports.PerpPosition = void 0;
18
- const v4_1 = require("zod/v4");
1
+ import { z } from "zod/v4";
19
2
  // Export all types from readers
20
- __exportStar(require("./account-overview/account-overview.types"), exports);
21
- __exportStar(require("./candlesticks/candlesticks.types"), exports);
22
- __exportStar(require("./delegations/delegations.types"), exports);
23
- __exportStar(require("./leaderboard/leaderboard.types"), exports);
24
- __exportStar(require("./market-contexts/market-contexts.types"), exports);
25
- __exportStar(require("./market-depth/market-depth.types"), exports);
26
- __exportStar(require("./market-prices/market-prices.types"), exports);
27
- __exportStar(require("./market-trades/market-trades.types"), exports);
28
- __exportStar(require("./markets/markets.types"), exports);
29
- __exportStar(require("./pagination.types"), exports);
30
- __exportStar(require("./portfolio-chart/portfolio-chart.types"), exports);
31
- __exportStar(require("./user-active-twaps/user-active-twaps.types"), exports);
32
- __exportStar(require("./user-bulk-orders/user-bulk-orders.types"), exports);
33
- __exportStar(require("./user-funding-history/user-funding-history.types"), exports);
34
- __exportStar(require("./user-notifications/user-notifications.types"), exports);
35
- __exportStar(require("./user-open-orders/user-open-orders.types"), exports);
36
- __exportStar(require("./user-order-history/user-order-history.types"), exports);
37
- __exportStar(require("./user-positions/user-positions.types"), exports);
38
- __exportStar(require("./user-subaccounts/user-subaccounts.types"), exports);
39
- __exportStar(require("./user-trade-history/user-trade-history.types"), exports);
40
- __exportStar(require("./vaults/vaults.types"), exports);
41
- exports.PerpPosition = v4_1.z.object({
42
- size: v4_1.z.number(),
43
- sz_decimals: v4_1.z.number(),
44
- entry_px: v4_1.z.number(),
45
- max_leverage: v4_1.z.number(),
46
- is_long: v4_1.z.boolean(),
47
- token_type: v4_1.z.string(),
3
+ export * from "./account-overview/account-overview.types";
4
+ export * from "./candlesticks/candlesticks.types";
5
+ export * from "./delegations/delegations.types";
6
+ export * from "./leaderboard/leaderboard.types";
7
+ export * from "./market-contexts/market-contexts.types";
8
+ export * from "./market-depth/market-depth.types";
9
+ export * from "./market-prices/market-prices.types";
10
+ export * from "./market-trades/market-trades.types";
11
+ export * from "./markets/markets.types";
12
+ export * from "./pagination.types";
13
+ export * from "./portfolio-chart/portfolio-chart.types";
14
+ export * from "./user-active-twaps/user-active-twaps.types";
15
+ export * from "./user-bulk-orders/user-bulk-orders.types";
16
+ export * from "./user-funding-history/user-funding-history.types";
17
+ export * from "./user-notifications/user-notifications.types";
18
+ export * from "./user-open-orders/user-open-orders.types";
19
+ export * from "./user-order-history/user-order-history.types";
20
+ export * from "./user-positions/user-positions.types";
21
+ export * from "./user-subaccounts/user-subaccounts.types";
22
+ export * from "./user-trade-history/user-trade-history.types";
23
+ export * from "./vaults/vaults.types";
24
+ export const PerpPosition = z.object({
25
+ size: z.number(),
26
+ sz_decimals: z.number(),
27
+ entry_px: z.number(),
28
+ max_leverage: z.number(),
29
+ is_long: z.boolean(),
30
+ token_type: z.string(),
48
31
  });
49
- exports.CrossedPosition = v4_1.z.object({
50
- positions: v4_1.z.array(exports.PerpPosition),
32
+ export const CrossedPosition = z.object({
33
+ positions: z.array(PerpPosition),
51
34
  });
52
- exports.LiquidationConfigV1 = v4_1.z.object({
53
- __variant__: v4_1.z.literal("V1"),
54
- backstop_liquidator: v4_1.z.string(),
55
- backstop_margin_maintenance_divisor: v4_1.z.string(),
56
- backstop_margin_maintenance_multiplier: v4_1.z.string(),
57
- maintenance_margin_leverage_divisor: v4_1.z.string(),
58
- maintenance_margin_leverage_multiplier: v4_1.z.string(),
35
+ export const LiquidationConfigV1 = z.object({
36
+ __variant__: z.literal("V1"),
37
+ backstop_liquidator: z.string(),
38
+ backstop_margin_maintenance_divisor: z.string(),
39
+ backstop_margin_maintenance_multiplier: z.string(),
40
+ maintenance_margin_leverage_divisor: z.string(),
41
+ maintenance_margin_leverage_multiplier: z.string(),
59
42
  });
60
- exports.CollateralBalanceSheet = v4_1.z.object({
61
- asset_type: v4_1.z.object({
62
- inner: v4_1.z.string(),
43
+ export const CollateralBalanceSheet = z.object({
44
+ asset_type: z.object({
45
+ inner: z.string(),
63
46
  }),
64
- asset_precision: v4_1.z.object({
65
- decimals: v4_1.z.number(),
66
- multiplier: v4_1.z.string(),
47
+ asset_precision: z.object({
48
+ decimals: z.number(),
49
+ multiplier: z.string(),
67
50
  }),
68
- balance_precision: v4_1.z.object({
69
- decimals: v4_1.z.number(),
70
- multiplier: v4_1.z.string(),
51
+ balance_precision: z.object({
52
+ decimals: z.number(),
53
+ multiplier: z.string(),
71
54
  }),
72
- balance_table: v4_1.z.object({
73
- handle: v4_1.z.string(),
55
+ balance_table: z.object({
56
+ handle: z.string(),
74
57
  }),
75
- store: v4_1.z.object({
76
- inner: v4_1.z.string(),
58
+ store: z.object({
59
+ inner: z.string(),
77
60
  }),
78
- store_extend_ref: v4_1.z.object({
79
- self: v4_1.z.string(),
61
+ store_extend_ref: z.object({
62
+ self: z.string(),
80
63
  }),
81
64
  });
82
- exports.GlobalAccountsStateV1 = v4_1.z.object({
83
- __variant__: v4_1.z.string(),
84
- collateral: exports.CollateralBalanceSheet,
85
- liquidation_config: exports.LiquidationConfigV1,
65
+ export const GlobalAccountsStateV1 = z.object({
66
+ __variant__: z.string(),
67
+ collateral: CollateralBalanceSheet,
68
+ liquidation_config: LiquidationConfigV1,
86
69
  });
87
- exports.GlobalAccountsState = exports.GlobalAccountsStateV1;
70
+ export const GlobalAccountsState = GlobalAccountsStateV1;
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UserActiveTwapsReader = void 0;
4
- const base_reader_1 = require("../base-reader");
5
- const user_active_twaps_types_1 = require("./user-active-twaps.types");
6
- class UserActiveTwapsReader extends base_reader_1.BaseReader {
1
+ import { BaseReader } from "../base-reader";
2
+ import { UserActiveTwapsSchema, UserActiveTwapsWsMessageSchema, } from "./user-active-twaps.types";
3
+ export class UserActiveTwapsReader extends BaseReader {
7
4
  /**
8
5
  * Get the active twaps for a given user
9
6
  * @param subAddr The subaccount address of the user to get active twaps for
@@ -11,7 +8,7 @@ class UserActiveTwapsReader extends base_reader_1.BaseReader {
11
8
  */
12
9
  async getByAddr({ subAddr, fetchOptions }) {
13
10
  const response = await this.getRequest({
14
- schema: user_active_twaps_types_1.UserActiveTwapsSchema,
11
+ schema: UserActiveTwapsSchema,
15
12
  url: `${this.deps.config.tradingHttpUrl}/api/v1/active_twaps`,
16
13
  queryParams: { user: subAddr },
17
14
  options: fetchOptions,
@@ -26,7 +23,6 @@ class UserActiveTwapsReader extends base_reader_1.BaseReader {
26
23
  */
27
24
  subscribeByAddr(subAddr, onData) {
28
25
  const topic = `user_active_twaps:${subAddr}`;
29
- return this.deps.ws.subscribe(topic, user_active_twaps_types_1.UserActiveTwapsWsMessageSchema, onData);
26
+ return this.deps.ws.subscribe(topic, UserActiveTwapsWsMessageSchema, onData);
30
27
  }
31
28
  }
32
- exports.UserActiveTwapsReader = UserActiveTwapsReader;
@@ -1,26 +1,20 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UserActiveTwapsWsMessageSchema = exports.UserActiveTwapsSchema = exports.UserActiveTwapSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.UserActiveTwapSchema = v4_1.default.object({
9
- market: v4_1.default.string(),
10
- is_buy: v4_1.default.boolean(),
11
- order_id: v4_1.default.string(),
12
- client_order_id: v4_1.default.string().nullable().optional(),
13
- is_reduce_only: v4_1.default.boolean(),
14
- start_unix_ms: v4_1.default.number(),
15
- frequency_s: v4_1.default.number(),
16
- duration_s: v4_1.default.number(),
17
- orig_size: v4_1.default.number(),
18
- remaining_size: v4_1.default.number(),
19
- status: v4_1.default.string(),
20
- transaction_unix_ms: v4_1.default.number(),
21
- transaction_version: v4_1.default.number(),
1
+ import z from "zod/v4";
2
+ export const UserActiveTwapSchema = z.object({
3
+ market: z.string(),
4
+ is_buy: z.boolean(),
5
+ order_id: z.string(),
6
+ client_order_id: z.string().nullable().optional(),
7
+ is_reduce_only: z.boolean(),
8
+ start_unix_ms: z.number(),
9
+ frequency_s: z.number(),
10
+ duration_s: z.number(),
11
+ orig_size: z.number(),
12
+ remaining_size: z.number(),
13
+ status: z.string(),
14
+ transaction_unix_ms: z.number(),
15
+ transaction_version: z.number(),
22
16
  });
23
- exports.UserActiveTwapsSchema = v4_1.default.array(exports.UserActiveTwapSchema);
24
- exports.UserActiveTwapsWsMessageSchema = v4_1.default.object({
25
- twaps: v4_1.default.array(exports.UserActiveTwapSchema),
17
+ export const UserActiveTwapsSchema = z.array(UserActiveTwapSchema);
18
+ export const UserActiveTwapsWsMessageSchema = z.object({
19
+ twaps: z.array(UserActiveTwapSchema),
26
20
  });
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UserBulkOrdersReader = void 0;
4
- const base_reader_1 = require("../base-reader");
5
- const user_bulk_orders_types_1 = require("./user-bulk-orders.types");
6
- class UserBulkOrdersReader extends base_reader_1.BaseReader {
1
+ import { BaseReader } from "../base-reader";
2
+ import { UserBulkOrdersSchema, UserBulkOrdersWsMessageSchema, } from "./user-bulk-orders.types";
3
+ export class UserBulkOrdersReader extends BaseReader {
7
4
  /**
8
5
  * Get the bulk orders for a given user
9
6
  * @param subAddr The subaccount address of the user to get bulk orders for
@@ -12,7 +9,7 @@ class UserBulkOrdersReader extends base_reader_1.BaseReader {
12
9
  */
13
10
  async getByAddr({ subAddr, market, fetchOptions }) {
14
11
  const response = await this.getRequest({
15
- schema: user_bulk_orders_types_1.UserBulkOrdersSchema,
12
+ schema: UserBulkOrdersSchema,
16
13
  url: `${this.deps.config.tradingHttpUrl}/api/v1/bulk_orders`,
17
14
  queryParams: { user: subAddr, market: market || "all" },
18
15
  options: fetchOptions,
@@ -27,7 +24,6 @@ class UserBulkOrdersReader extends base_reader_1.BaseReader {
27
24
  */
28
25
  subscribeByAddr(subAddr, onData) {
29
26
  const topic = `bulk_orders:${subAddr}`;
30
- return this.deps.ws.subscribe(topic, user_bulk_orders_types_1.UserBulkOrdersWsMessageSchema, onData);
27
+ return this.deps.ws.subscribe(topic, UserBulkOrdersWsMessageSchema, onData);
31
28
  }
32
29
  }
33
- exports.UserBulkOrdersReader = UserBulkOrdersReader;
@@ -1,24 +1,18 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.UserBulkOrdersWsMessageSchema = exports.UserBulkOrdersSchema = exports.UserBulkOrderSchema = void 0;
7
- const v4_1 = __importDefault(require("zod/v4"));
8
- exports.UserBulkOrderSchema = v4_1.default.object({
9
- market: v4_1.default.string(),
10
- sequence_number: v4_1.default.number(),
11
- previous_seq_num: v4_1.default.number(),
12
- bid_prices: v4_1.default.array(v4_1.default.number()),
13
- bid_sizes: v4_1.default.array(v4_1.default.number()),
14
- ask_prices: v4_1.default.array(v4_1.default.number()),
15
- ask_sizes: v4_1.default.array(v4_1.default.number()),
16
- cancelled_bid_prices: v4_1.default.array(v4_1.default.number()),
17
- cancelled_bid_sizes: v4_1.default.array(v4_1.default.number()),
18
- cancelled_ask_prices: v4_1.default.array(v4_1.default.number()),
19
- cancelled_ask_sizes: v4_1.default.array(v4_1.default.number()),
1
+ import z from "zod/v4";
2
+ export const UserBulkOrderSchema = z.object({
3
+ market: z.string(),
4
+ sequence_number: z.number(),
5
+ previous_seq_num: z.number(),
6
+ bid_prices: z.array(z.number()),
7
+ bid_sizes: z.array(z.number()),
8
+ ask_prices: z.array(z.number()),
9
+ ask_sizes: z.array(z.number()),
10
+ cancelled_bid_prices: z.array(z.number()),
11
+ cancelled_bid_sizes: z.array(z.number()),
12
+ cancelled_ask_prices: z.array(z.number()),
13
+ cancelled_ask_sizes: z.array(z.number()),
20
14
  });
21
- exports.UserBulkOrdersSchema = v4_1.default.array(exports.UserBulkOrderSchema);
22
- exports.UserBulkOrdersWsMessageSchema = v4_1.default.object({
23
- bulk_orders: v4_1.default.array(exports.UserBulkOrderSchema),
15
+ export const UserBulkOrdersSchema = z.array(UserBulkOrderSchema);
16
+ export const UserBulkOrdersWsMessageSchema = z.object({
17
+ bulk_orders: z.array(UserBulkOrderSchema),
24
18
  });