@bulletxyz/bullet-sdk 0.32.5 → 0.33.0-rc.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.
@@ -1,11 +1,13 @@
1
- import { type Transaction, type TransactionResult } from "@sovereign-sdk/web3";
2
- import type Decimal from "decimal.js";
3
- import { Connection } from "./connection";
1
+ import type { Transaction } from "@sovereign-sdk/types";
2
+ import { type StandardRollup, type TransactionResult } from "@sovereign-sdk/web3";
3
+ import Decimal from "decimal.js";
4
+ import type { EquityType, MarginType } from "./bullet-wasm";
4
5
  import { type Endpoints } from "./constants";
5
- import { ExchangeConnection } from "./exchange";
6
+ import type { Orderbook } from "./orderbook";
6
7
  import type { RuntimeCall } from "./rollupTypes";
7
- import { type Address, type AssetId, type AssetName, type MarketName, type MarkPriceUpdateArgs, type Network, type NewOrderArgs, type OraclePriceUpdateArgs, type SpotCollateralTransferDirection, type TokenId, type TpslPair } from "./types";
8
+ import { type Address, type AssetId, type AssetName, type MarketMetadata, type MarketName, type MarkPriceUpdateArgs, type Network, type NewOrderArgs, type OrderType, type OraclePriceUpdateArgs, type Side, type SpotCollateralTransferDirection, type TokenId, type TpslPair } from "./types";
8
9
  import type { Wallet } from "./wallet";
10
+ import { type AccountAddresses, type BorrowLendPool, type ExchangeAssets, type ExchangeInfo, type ExecutionIds, type Order, type OrderbookL2, type PerpMarket, type RiskEngine, type SpotMarket, type UserAccount } from "./zod-types/rest";
9
11
  export interface TransactionOpts {
10
12
  maxPriorityFeeBps: number;
11
13
  maxFee: string;
@@ -28,133 +30,53 @@ type CancelOrderOptions = {
28
30
  clientOrderId: bigint;
29
31
  };
30
32
  export declare class Client {
31
- connection: Connection;
32
- exchange: ExchangeConnection;
33
- address: Address;
34
- private rollup;
35
- private wallet;
36
- private queue;
37
- private generationOverride;
33
+ readonly rollup: StandardRollup<RuntimeCall>;
34
+ readonly endpoint: string;
35
+ readonly address?: Address;
36
+ private readonly wallet?;
37
+ private readonly wsManager?;
38
+ private exchangeInfo?;
39
+ private assetInfoRegistry?;
40
+ private assetInfoRegistryReverse?;
41
+ private marketRegistry?;
42
+ private marketRegistryReverse?;
43
+ private generationOverride?;
38
44
  private constructor();
39
- static fromEndpoints(endpoints: Endpoints, wallet: Wallet, txOpts?: TransactionOpts): Promise<Client>;
40
- static fromNetwork(network: Network, wallet: Wallet, txOpts?: TransactionOpts): Promise<Client>;
41
- static fromRestUrl(restUrl: string, wallet: Wallet, txOpts?: TransactionOpts): Promise<Client>;
45
+ static fromEndpoints(endpoints: Endpoints, wallet?: Wallet, // Optional!
46
+ txOpts?: TransactionOpts): Promise<Client>;
47
+ static fromNetwork(network: Network, wallet?: Wallet, txOpts?: TransactionOpts): Promise<Client>;
42
48
  setGenerationOverride(generation: (() => number) | undefined): void;
43
- getNonce(): Promise<import("@sovereign-sdk/web3").Dedup>;
44
- getTokenBalance(tokenId: string): Promise<bigint>;
45
- getUserAccount(): Promise<{
46
- account_variant: {
47
- type: "master";
48
- sub_account_indices: number[];
49
- } | {
50
- type: "sub";
51
- } | {
52
- type: "vault";
53
- } | {
54
- type: "protocol_vault";
55
- };
56
- address: string;
57
- usdc_ledger: {
58
- ledger: {
59
- asset: Decimal;
60
- liability: Decimal;
61
- };
62
- unrealized_loss_borrow: Decimal;
63
- unsettled_perp_profit: Decimal;
64
- };
65
- client_order_ids: Map<bigint, bigint>;
66
- balances: Map<number, {
67
- asset: Decimal;
68
- liability: Decimal;
69
- }>;
70
- perp_ledgers: Map<number, {
71
- orders: Map<bigint, {
72
- side: "bid" | "ask";
73
- market_id: number;
74
- order_id: bigint;
75
- client_order_id: bigint | null;
76
- price: Decimal;
77
- remaining_size: Decimal;
78
- reduce_only: boolean;
79
- filled_size: Decimal;
80
- average_filled_price: Decimal;
81
- owner: string;
82
- reserved_pending_tpsl_pair_ids: string | null;
83
- }>;
84
- position: {
85
- size: Decimal;
86
- cost_of_trades: Decimal;
87
- realized_pnl: Decimal;
88
- cached_mark_price: Decimal;
89
- last_accum_funding_applied_per_lot: [Decimal, bigint];
90
- funding_payments_on_side: Decimal;
91
- funding_payments_on_position: Decimal;
92
- };
93
- user_selected_max_leverage: number;
94
- trigger_orders: Map<bigint, {
95
- side: "bid" | "ask";
96
- market_id: number;
97
- trigger_order_id: bigint;
98
- order_price: Decimal;
99
- trigger_price: Decimal;
100
- trigger_direction: "greater_than_or_equal" | "less_than_or_equal";
101
- price_condition: "mark" | "oracle" | "last_trade";
102
- size: Decimal | null;
103
- order_type: "limit" | "post_only" | "fill_or_kill" | "immediate_or_cancel" | "post_only_slide" | "post_only_front";
104
- owner: string;
105
- last_update_timestamp: bigint;
106
- linked_trigger_order_id: bigint | null;
107
- }>;
108
- }>;
109
- spot_ledgers: Map<number, {
110
- orders: Map<bigint, {
111
- side: "bid" | "ask";
112
- market_id: number;
113
- order_id: bigint;
114
- quote_asset_id: number;
115
- base_asset_id: number;
116
- client_order_id: bigint | null;
117
- quote_lots: Decimal;
118
- remaining_base_lots: Decimal;
119
- filled_base_lots: Decimal;
120
- average_filled_price: Decimal;
121
- owner: string;
122
- }>;
123
- trigger_orders: Map<bigint, {
124
- side: "bid" | "ask";
125
- market_id: number;
126
- trigger_order_id: bigint;
127
- order_price: Decimal;
128
- trigger_price: Decimal;
129
- trigger_direction: "greater_than_or_equal" | "less_than_or_equal";
130
- price_condition: "mark" | "oracle" | "last_trade";
131
- size: Decimal | null;
132
- order_type: "limit" | "post_only" | "fill_or_kill" | "immediate_or_cancel" | "post_only_slide" | "post_only_front";
133
- owner: string;
134
- last_update_timestamp: bigint;
135
- linked_trigger_order_id: bigint | null;
136
- }>;
137
- }>;
138
- fee_tiers: Map<number, "tier0" | "tier1" | "tier2" | "tier3" | "tier4">;
139
- pending_tpsl_pairs: Map<string, {
140
- tpsl_pair: {
141
- tp: {
142
- order_price: Decimal;
143
- trigger_price: Decimal;
144
- price_condition: "mark" | "oracle" | "last_trade";
145
- order_type: "limit" | "post_only" | "fill_or_kill" | "immediate_or_cancel" | "post_only_slide" | "post_only_front";
146
- } | null;
147
- sl: {
148
- order_price: Decimal;
149
- trigger_price: Decimal;
150
- price_condition: "mark" | "oracle" | "last_trade";
151
- order_type: "limit" | "post_only" | "fill_or_kill" | "immediate_or_cancel" | "post_only_slide" | "post_only_front";
152
- } | null;
153
- };
154
- dynamic_size: boolean;
155
- }>;
156
- spot_collateral: Map<number, Decimal>;
157
- }>;
49
+ private requireWallet;
50
+ private fetchApiResource;
51
+ private fetchBulkApiResource;
52
+ private initializeExchangeInfo;
53
+ getOrder(orderId: bigint): Promise<Order | null>;
54
+ getExchangeInfo(): Promise<ExchangeInfo | null>;
55
+ private getMarketMapping;
56
+ getAssetId(asset: AssetName): number;
57
+ getAssetName(assetId: number): AssetName;
58
+ getTokenAddress(assetName: AssetName): string;
59
+ getTokenAddresses(): Record<string, string>;
60
+ getMarketId(market: MarketName): number;
61
+ getMarketMeta(market: MarketName): MarketMetadata;
62
+ getMarketName(marketId: number): string;
63
+ getOrderbookL2(market: MarketName, levels?: number): Promise<OrderbookL2>;
64
+ getOrderbookL2s(markets: MarketName[], levels?: number): Promise<Map<number, OrderbookL2>>;
65
+ getChainId(): Promise<number>;
66
+ getUserAccountAddresses(offset?: number, limit?: number): Promise<AccountAddresses>;
67
+ getUserAccount(address?: Address): Promise<UserAccount>;
68
+ getUserAccounts(addresses: Address[]): Promise<Map<string, UserAccount>>;
69
+ getExchangeAssets(): Promise<ExchangeAssets | null>;
70
+ getRiskEngine(): Promise<RiskEngine | null>;
71
+ getPerpMarket(market: MarketName): Promise<PerpMarket>;
72
+ getPerpMarkets(markets: MarketName[]): Promise<Map<number, PerpMarket>>;
73
+ getSpotMarket(market: MarketName): Promise<SpotMarket>;
74
+ getSpotMarkets(markets: MarketName[]): Promise<Map<number, SpotMarket>>;
75
+ getExecutionIds(): Promise<ExecutionIds | null>;
76
+ getNonce(): Promise<number>;
77
+ getTokenBalance(tokenId: string, address?: Address): Promise<bigint>;
78
+ getTotalSupply(tokenId: TokenId): Promise<bigint>;
79
+ getGasTokenAddress(): Promise<TokenId>;
158
80
  submitTransaction(runtimeCall: RuntimeCall): Promise<TransactionResult<Transaction<RuntimeCall>>>;
159
81
  transfer(to: Address, amount: bigint, tokenId: TokenId): Promise<TransactionResult<Transaction<RuntimeCall>>>;
160
82
  mint(to: Address, amount: bigint, tokenId: TokenId): Promise<TransactionResult<Transaction<RuntimeCall>>>;
@@ -198,6 +120,64 @@ export declare class Client {
198
120
  updateLeverageTable(market: MarketName, leverageTable: Record<string, number>): Promise<TransactionResult<Transaction<RuntimeCall>>>;
199
121
  createSubAccount(index: number): Promise<TransactionResult<Transaction<RuntimeCall>>>;
200
122
  transferSubAccount(subAccountIndex: number, toSubAccount: boolean, asset: AssetName, amount: Decimal): Promise<TransactionResult<Transaction<RuntimeCall>>>;
123
+ calculateOrderbookMidpoint(orderbook: OrderbookL2): Decimal | undefined;
124
+ calculateEntryPrice(market: MarketName, userAccount: UserAccount): Decimal;
125
+ calculateTotalPerpUnrealizedPnl(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
126
+ calculateAccountEquity(equityType: EquityType, conservative: boolean, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
127
+ calculateAccountLeverage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
128
+ calculateAvailableMargin(marginType: MarginType, conservative: boolean, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
129
+ calculateUsedMargin(withdrawal: boolean, marginType: MarginType, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
130
+ calculateUsedPerpMargin(userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): Decimal;
131
+ calculateUsedSpotMargin(userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): Decimal;
132
+ calculateWithdrawableAmountOfAsset(asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Promise<Decimal>;
133
+ calculateEstimatedLiquidationPrice(market: MarketName, asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
134
+ calculateLiquidationRiskPercentage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
135
+ calculateMarginBalance(userAccount: UserAccount, riskEngine: RiskEngine): {
136
+ collateral_value: Decimal;
137
+ assets: Decimal;
138
+ liabilities: Decimal;
139
+ pnl: Decimal;
140
+ };
141
+ calculateTotalPerpMarginRequirement(userAccount: UserAccount, marginType: MarginType, withdrawal: boolean, riskEngine: RiskEngine): Decimal;
142
+ calculateForceCancelRiskPercentage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
143
+ calculateMaxBorrowAmount(asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
144
+ calculateMaxOrderSize(market: MarketName, price: Decimal, side: Side, order_type: OrderType, reduce_only: boolean, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2, n_iterations?: number, error_tolerance?: Decimal): Decimal;
145
+ simulateUsedMarginOnBorrow(asset: AssetName, borrowAmount: Decimal, userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): {
146
+ current: Decimal;
147
+ updated: Decimal;
148
+ };
149
+ simulateUsedMarginOnOrder(market: MarketName, newOrderArgs: NewOrderArgs, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2): {
150
+ current: Decimal;
151
+ updated: Decimal;
152
+ };
153
+ simulateEstimatedLiquidationPriceOnOrder(market: MarketName, newOrderArgs: NewOrderArgs, baseAsset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2): {
154
+ current: Decimal;
155
+ updated: Decimal;
156
+ };
157
+ calculatePositionsAdditionalMetadata(userAccount: UserAccount, riskEngine: RiskEngine): Map<number, {
158
+ projected_funding_payment: Decimal;
159
+ unrealized_pnl: Decimal;
160
+ liquidation_price: Decimal;
161
+ liquidation_risk_percentage: Decimal;
162
+ max_leverage_to_use: number;
163
+ }>;
164
+ calculateBorrowLendPoolAdditionalMetadata(borrowLendPools: Map<AssetId, BorrowLendPool>, asset: AssetName): {
165
+ utilisation_rate: Decimal;
166
+ current_deposit_rate: Decimal;
167
+ current_borrow_rate: Decimal;
168
+ };
169
+ calculateAccountSummaryBatch(userAccounts: UserAccount[], riskEngine: RiskEngine, useWeightedEquity?: boolean): {
170
+ address: string;
171
+ equity: Decimal;
172
+ unrealized_pnl: Decimal;
173
+ available_initial_margin: Decimal;
174
+ available_maintenance_margin: Decimal;
175
+ leverage: Decimal;
176
+ account_variant?: string | undefined;
177
+ }[];
178
+ private getWebSocketManager;
179
+ subscribeOrderbook(market: MarketName): AsyncIterable<Orderbook>;
180
+ unsubscribeOrderbook(market: MarketName): Promise<void>;
201
181
  }
202
182
  export {};
203
183
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,86 @@
1
- export declare class ApiError extends Error {
2
- readonly title: string;
3
- readonly status: number;
4
- readonly details: Record<string, unknown>;
1
+ import { SovereignError } from "@sovereign-sdk/web3";
2
+ /**
3
+ * Structured error details from rollup responses.
4
+ *
5
+ * Standard fields: call, error_code, id
6
+ * Additional fields are dynamic based on the error type.
7
+ */
8
+ export interface RollupErrorDetails {
9
+ /** The module/component where the error occurred (e.g., 'risk_engine', 'exchange') */
10
+ call: string;
11
+ /** Error code identifying the specific error type (e.g., 'stale_price', 'insufficient_margin') */
12
+ error_code: string;
13
+ /** Identifier related to the error (e.g., asset ID, market ID, user address) */
14
+ id: string;
15
+ /** Additional dynamic fields specific to each error type */
16
+ [key: string]: unknown;
17
+ }
18
+ /**
19
+ * Error class for Bullet SDK transaction execution errors.
20
+ *
21
+ * Wraps errors from `rollup.call()` and provides structured rollup module error details.
22
+ * HTTP/API errors from data fetching are not wrapped and bubble up as Sovereign SDK errors.
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * try {
27
+ * await client.placeOrders("BTC-USD", [...]);
28
+ * } catch (error) {
29
+ * if (isBulletError(error)) {
30
+ * console.log(error.code); // 'stale_price'
31
+ * console.log(error.details); // { call: 'risk_engine', error_code: 'stale_price', ... }
32
+ *
33
+ * if (error.code === 'insufficient_margin') {
34
+ * // Show deposit modal
35
+ * }
36
+ * }
37
+ * }
38
+ * ```
39
+ */
40
+ export declare class BulletError extends SovereignError {
41
+ /** Error code (e.g., 'stale_price', 'insufficient_margin') */
42
+ readonly code: string;
43
+ /** HTTP status code */
44
+ readonly status?: number;
45
+ /** Structured error details from the rollup */
46
+ readonly details?: RollupErrorDetails;
47
+ /** Original error that caused this */
48
+ readonly cause?: Error;
5
49
  private constructor();
6
- static fromResponse(response: Response): Promise<ApiError>;
50
+ /**
51
+ * Creates a BulletError from a Sovereign SDK transaction error.
52
+ *
53
+ * Only use this for errors from `rollup.call()` which contain structured
54
+ * rollup module error details. HTTP/API errors should bubble up naturally.
55
+ *
56
+ * @param error - Error from rollup.call() transaction execution
57
+ * @returns A properly structured BulletError
58
+ */
59
+ static from(error: unknown): BulletError;
60
+ /**
61
+ * Serializes the error to JSON (safe for React state, Redux, etc.)
62
+ */
63
+ toJSON(): {
64
+ name: string;
65
+ code: string;
66
+ message: string;
67
+ status: number | undefined;
68
+ details: RollupErrorDetails | undefined;
69
+ stack: string | undefined;
70
+ };
7
71
  toString(): string;
8
72
  }
73
+ /**
74
+ * Type guard to check if an error is a BulletError.
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * catch (error) {
79
+ * if (isBulletError(error)) {
80
+ * console.log(error.code, error.details);
81
+ * }
82
+ * }
83
+ * ```
84
+ */
85
+ export declare function isBulletError(error: unknown): error is BulletError;
9
86
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"AACA,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1C,OAAO;WAWM,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiBhE,QAAQ,IAAI,MAAM;CAGnB"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;IACb,kGAAkG;IAClG,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,4DAA4D;IAC5D,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,WAAY,SAAQ,cAAc;IAC7C,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,sCAAsC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IAEvB,OAAO;IAoBP;;;;;;;;OAQG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW;IAoDxC;;OAEG;IACH,MAAM;;;;;;;;IAWN,QAAQ,IAAI,MAAM;CAGnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE"}
@@ -1,9 +1,7 @@
1
1
  export { BulletWasm } from "./bullet-wasm";
2
2
  export * from "./client";
3
- export { Connection } from "./connection";
4
3
  export * from "./constants";
5
4
  export * from "./error";
6
- export * from "./exchange";
7
5
  export * from "./orderbook";
8
6
  export * from "./types";
9
7
  export * from "./utils";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
@@ -18,13 +18,6 @@ export type OrderType = "limit" | "post_only" | "fill_or_kill" | "immediate_or_c
18
18
  export type MarginType = "initial" | "maintenance";
19
19
  export type EquityType = "unweighted" | "weighted_initial" | "weighted_maintenance";
20
20
  export type Network = "Localnet" | "Staging" | "Testnet" | "Mainnet";
21
- export type RollupErrorStructure = {
22
- error?: {
23
- details?: {
24
- error?: string;
25
- };
26
- };
27
- };
28
21
  export type NewOrderArgs = {
29
22
  price: Decimal;
30
23
  size: Decimal;
@@ -70,23 +63,4 @@ export type MarketMetadata = {
70
63
  baseAssetId: number;
71
64
  name: string;
72
65
  };
73
- export declare class BulletError extends Error {
74
- originalError?: Error | undefined;
75
- code: string;
76
- shortMessage: string;
77
- verboseMessage: string;
78
- httpStatus?: number;
79
- responseData?: unknown;
80
- constructor(code: string, shortMessage: string, verboseMessage: string, originalError?: Error | undefined, httpStatus?: number, responseData?: unknown);
81
- static fromModuleError(error: unknown): BulletError;
82
- toJSON(): {
83
- name: string;
84
- code: string;
85
- message: string;
86
- shortMessage: string;
87
- verboseMessage: string;
88
- httpStatus: number | undefined;
89
- responseData: unknown;
90
- };
91
- }
92
66
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAC/B,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAC9B,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAC7B,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzC,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;AAEjC,MAAM,MAAM,+BAA+B,GACvC,gBAAgB,GAChB,gBAAgB,CAAC;AAErB,MAAM,MAAM,gBAAgB,GAAG,uBAAuB,GAAG,oBAAoB,CAAC;AAE9E,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,CAAC;AAErE,MAAM,MAAM,SAAS,GACjB,OAAO,GACP,WAAW,GACX,cAAc,GACd,qBAAqB,GACrB,iBAAiB,GACjB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,CAAC;AAEnD,MAAM,MAAM,UAAU,GAClB,YAAY,GACZ,kBAAkB,GAClB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAErE,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,UAAU,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,qBAAqB,CAAC;IACtC,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,CAAC,EAAE,IAAI,CAAC;IACV,EAAE,CAAC,EAAE,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "type": "git",
5
5
  "url": "git+https://github.com/zetamarkets/bullet-sdk.git"
6
6
  },
7
- "version": "0.32.5",
7
+ "version": "0.33.0-rc.1",
8
8
  "description": "Bullet SDK",
9
9
  "author": "@bulletxyz",
10
10
  "license": "Apache-2.0",
@@ -67,6 +67,7 @@
67
67
  "@eslint/js": "^9.38.0",
68
68
  "@jest/globals": "^30.2.0",
69
69
  "@types/collections": "^5.1.5",
70
+ "@types/jest": "^30.0.0",
70
71
  "@types/node": "^24.9.2",
71
72
  "@typescript-eslint/eslint-plugin": "^8.46.2",
72
73
  "@typescript-eslint/parser": "^8.46.2",
@@ -87,15 +88,17 @@
87
88
  },
88
89
  "dependencies": {
89
90
  "@noble/ed25519": "^2.3.0",
90
- "@sovereign-sdk/serializers": "0.1.1",
91
- "@sovereign-sdk/signers": "^0.2.1",
92
- "@sovereign-sdk/web3": "0.10.0",
91
+ "@sovereign-sdk/serializers": "0.1.2",
92
+ "@sovereign-sdk/signers": "0.3.0",
93
+ "@sovereign-sdk/types": "0.1.2",
94
+ "@sovereign-sdk/web3": "0.11.1",
93
95
  "bs58": "^6.0.0",
94
96
  "collections": "^5.1.13",
95
97
  "eventemitter3": "^5.0.1",
96
98
  "isows": "^1.0.7",
97
99
  "p-queue": "^8.1.1",
98
- "path": "^0.12.7"
100
+ "path": "^0.12.7",
101
+ "upgrade": "^1.1.0"
99
102
  },
100
103
  "peerDependencies": {
101
104
  "decimal.js": ">=10.0.0",
@@ -1,13 +0,0 @@
1
- import type { Address, TokenId } from "./types";
2
- export declare class BaseConnection {
3
- endpoint: string;
4
- constructor(rawEndpoint: string);
5
- protected fetchApiResource<T>(path: string, params?: Record<string, string | undefined>): Promise<T>;
6
- protected fetchBulkApiResource<T>(path: string, body: Record<string, unknown>, params?: Record<string, string>): Promise<T>;
7
- }
8
- export declare class Connection extends BaseConnection {
9
- getTokenBalance(address: Address, token_id: TokenId): Promise<bigint>;
10
- getTotalSupply(token_id: TokenId): Promise<bigint>;
11
- getGasTokenAddress(): Promise<TokenId>;
12
- }
13
- //# sourceMappingURL=connection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/connection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAIhD,qBAAa,cAAc;IAClB,QAAQ,EAAE,MAAM,CAAC;gBAEZ,WAAW,EAAE,MAAM;cAOf,gBAAgB,CAAC,CAAC,EAChC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC;cAkBG,oBAAoB,CAAC,CAAC,EACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,CAAC,CAAC;CAqBd;AAED,qBAAa,UAAW,SAAQ,cAAc;IACtC,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAQrE,cAAc,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAQlD,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;CAM7C"}
@@ -1,103 +0,0 @@
1
- import Decimal from "decimal.js";
2
- import { type EquityType, type MarginType } from "./bullet-wasm";
3
- import { BaseConnection } from "./connection";
4
- import { type Endpoints } from "./constants";
5
- import type { Orderbook } from "./orderbook";
6
- import type { Address, AssetId, AssetName, MarketMetadata, MarketName, Network, NewOrderArgs, OrderType, Side } from "./types";
7
- import { type AccountAddresses, type BorrowLendPool, type ExchangeAssets, type ExchangeInfo, type ExecutionIds, type Order, type OrderbookL2, type PerpMarket, type RiskEngine, type SpotMarket, type UserAccount } from "./zod-types/rest";
8
- export declare class ExchangeConnection extends BaseConnection {
9
- private wsManager?;
10
- private exchangeInfo?;
11
- private assetInfoRegistry?;
12
- private assetInfoRegistryReverse?;
13
- private marketRegistry?;
14
- private marketRegistryReverse?;
15
- private constructor();
16
- static fromEndpoints(endpoints: Endpoints): Promise<ExchangeConnection>;
17
- static fromNetwork(network: Network): Promise<ExchangeConnection>;
18
- static fromRestUrl(restUrl: string): Promise<ExchangeConnection>;
19
- private initializeExchangeInfo;
20
- getOrder(orderId: bigint): Promise<Order | null>;
21
- getExchangeInfo(): Promise<ExchangeInfo | null>;
22
- private _getAssetMapping;
23
- private getMarketMapping;
24
- getAssetId(asset: AssetName): number;
25
- getAssetName(assetId: number): AssetName;
26
- getTokenAddress(assetName: AssetName): string;
27
- getTokenAddresses(): Record<string, string>;
28
- getMarketId(market: MarketName): number;
29
- getMarketMeta(market: MarketName): MarketMetadata;
30
- getMarketName(marketId: number): string;
31
- getOrderbookL2(market: MarketName, levels?: number): Promise<OrderbookL2>;
32
- getOrderbookL2s(markets: MarketName[], levels?: number): Promise<Map<number, OrderbookL2>>;
33
- getChainId(): Promise<number>;
34
- getUserAccountAddresses(offset?: number, limit?: number): Promise<AccountAddresses>;
35
- getUserAccount(address: Address): Promise<UserAccount>;
36
- getUserAccounts(addresses: Address[]): Promise<Map<string, UserAccount>>;
37
- getExchangeAssets(): Promise<ExchangeAssets | null>;
38
- getRiskEngine(): Promise<RiskEngine | null>;
39
- getPerpMarket(market: MarketName): Promise<PerpMarket>;
40
- getPerpMarkets(markets: MarketName[]): Promise<Map<number, PerpMarket>>;
41
- getSpotMarket(market: MarketName): Promise<SpotMarket>;
42
- getSpotMarkets(markets: MarketName[]): Promise<Map<number, SpotMarket>>;
43
- getExecutionIds(): Promise<ExecutionIds | null>;
44
- calculateOrderbookMidpoint(orderbook: OrderbookL2): Decimal | undefined;
45
- calculateEntryPrice(market: MarketName, userAccount: UserAccount): Decimal;
46
- calculateTotalPerpUnrealizedPnl(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
47
- calculateAccountEquity(equityType: EquityType, conservative: boolean, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
48
- calculateAccountLeverage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
49
- calculateAvailableMargin(marginType: MarginType, conservative: boolean, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
50
- calculateUsedMargin(withdrawal: boolean, marginType: MarginType, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
51
- calculateUsedPerpMargin(userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): Decimal;
52
- calculateUsedSpotMargin(userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): Decimal;
53
- calculateWithdrawableAmountOfAsset(asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Promise<Decimal>;
54
- calculateEstimatedLiquidationPrice(market: MarketName, asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
55
- calculateLiquidationRiskPercentage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
56
- calculateMarginBalance(userAccount: UserAccount, riskEngine: RiskEngine): {
57
- collateral_value: Decimal;
58
- assets: Decimal;
59
- liabilities: Decimal;
60
- pnl: Decimal;
61
- };
62
- calculateTotalPerpMarginRequirement(userAccount: UserAccount, marginType: MarginType, withdrawal: boolean, riskEngine: RiskEngine): Decimal;
63
- calculateForceCancelRiskPercentage(userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
64
- calculateMaxBorrowAmount(asset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine): Decimal;
65
- calculateMaxOrderSize(market: MarketName, price: Decimal, side: Side, order_type: OrderType, reduce_only: boolean, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2, n_iterations?: number, error_tolerance?: Decimal): Decimal;
66
- simulateUsedMarginOnBorrow(asset: AssetName, borrowAmount: Decimal, userAccount: UserAccount, marginType: MarginType, riskEngine: RiskEngine): {
67
- current: Decimal;
68
- updated: Decimal;
69
- };
70
- simulateUsedMarginOnOrder(market: MarketName, newOrderArgs: NewOrderArgs, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2): {
71
- current: Decimal;
72
- updated: Decimal;
73
- };
74
- simulateEstimatedLiquidationPriceOnOrder(market: MarketName, newOrderArgs: NewOrderArgs, baseAsset: AssetName, userAccount: UserAccount, riskEngine: RiskEngine, orderbook: OrderbookL2): {
75
- current: Decimal;
76
- updated: Decimal;
77
- };
78
- calculatePositionsAdditionalMetadata(userAccount: UserAccount, riskEngine: RiskEngine): Map<number, {
79
- projected_funding_payment: Decimal;
80
- unrealized_pnl: Decimal;
81
- liquidation_price: Decimal;
82
- liquidation_risk_percentage: Decimal;
83
- max_leverage_to_use: number;
84
- }>;
85
- calculateBorrowLendPoolAdditionalMetadata(borrowLendPools: Map<AssetId, BorrowLendPool>, asset: AssetName): {
86
- utilisation_rate: Decimal;
87
- current_deposit_rate: Decimal;
88
- current_borrow_rate: Decimal;
89
- };
90
- calculateAccountSummaryBatch(userAccounts: UserAccount[], riskEngine: RiskEngine, useWeightedEquity?: boolean): {
91
- address: string;
92
- equity: Decimal;
93
- unrealized_pnl: Decimal;
94
- available_initial_margin: Decimal;
95
- available_maintenance_margin: Decimal;
96
- leverage: Decimal;
97
- account_variant?: string | undefined;
98
- }[];
99
- private getWebSocketManager;
100
- subscribeOrderbook(market: MarketName): AsyncIterable<Orderbook>;
101
- unsubscribeOrderbook(market: MarketName): Promise<void>;
102
- }
103
- //# sourceMappingURL=exchange.d.ts.map