@lifi/perps-types 0.1.1-alpha.2 → 0.1.1-alpha.22

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 (193) hide show
  1. package/package.json +40 -10
  2. package/providers/hyperliquid/package.json +3 -3
  3. package/providers/lighter/package.json +5 -0
  4. package/src/_cjs/{market.js → action.js} +1 -1
  5. package/src/_cjs/action.js.map +1 -0
  6. package/src/_cjs/{trading.js → asset.js} +1 -1
  7. package/src/_cjs/asset.js.map +1 -0
  8. package/src/_cjs/enums.js +78 -15
  9. package/src/_cjs/enums.js.map +1 -1
  10. package/src/_cjs/index.js +3 -4
  11. package/src/_cjs/index.js.map +1 -1
  12. package/src/_cjs/providers/hyperliquid/assetId.js +11 -9
  13. package/src/_cjs/providers/hyperliquid/assetId.js.map +1 -1
  14. package/src/_cjs/providers/hyperliquid/mappers/activity.js +66 -0
  15. package/src/_cjs/providers/hyperliquid/mappers/activity.js.map +1 -0
  16. package/src/_cjs/providers/hyperliquid/mappers/{market.js → asset.js} +9 -9
  17. package/src/_cjs/providers/hyperliquid/mappers/asset.js.map +1 -0
  18. package/src/_cjs/providers/hyperliquid/mappers/fill.js +64 -0
  19. package/src/_cjs/providers/hyperliquid/mappers/fill.js.map +1 -0
  20. package/src/_cjs/providers/hyperliquid/mappers/index.js +12 -7
  21. package/src/_cjs/providers/hyperliquid/mappers/index.js.map +1 -1
  22. package/src/_cjs/providers/hyperliquid/mappers/order.js +59 -10
  23. package/src/_cjs/providers/hyperliquid/mappers/order.js.map +1 -1
  24. package/src/_cjs/providers/hyperliquid/mappers/position.js +7 -5
  25. package/src/_cjs/providers/hyperliquid/mappers/position.js.map +1 -1
  26. package/src/_cjs/providers/hyperliquid/mappers/shared.js +0 -10
  27. package/src/_cjs/providers/hyperliquid/mappers/shared.js.map +1 -1
  28. package/src/_cjs/providers/hyperliquid/types.js +14 -0
  29. package/src/_cjs/providers/hyperliquid/types.js.map +1 -1
  30. package/src/_cjs/{authorization.js → providers/lighter/apiTypes.js} +1 -1
  31. package/src/_cjs/providers/lighter/apiTypes.js.map +1 -0
  32. package/src/_cjs/providers/lighter/index.js +20 -0
  33. package/src/_cjs/providers/lighter/index.js.map +1 -0
  34. package/src/_cjs/providers/lighter/mappers/fill.js +28 -0
  35. package/src/_cjs/providers/lighter/mappers/fill.js.map +1 -0
  36. package/src/_cjs/providers/lighter/mappers/index.js +10 -0
  37. package/src/_cjs/providers/lighter/mappers/index.js.map +1 -0
  38. package/src/_cjs/providers/lighter/mappers/order.js +33 -0
  39. package/src/_cjs/providers/lighter/mappers/order.js.map +1 -0
  40. package/src/_cjs/providers/lighter/mappers/position.js +33 -0
  41. package/src/_cjs/providers/lighter/mappers/position.js.map +1 -0
  42. package/src/_cjs/providers/lighter/types.js +23 -0
  43. package/src/_cjs/providers/lighter/types.js.map +1 -0
  44. package/src/_cjs/{withdrawal.js → providers.js} +1 -1
  45. package/src/_cjs/providers.js.map +1 -0
  46. package/src/_esm/action.js +2 -0
  47. package/src/_esm/action.js.map +1 -0
  48. package/src/_esm/asset.js +2 -0
  49. package/src/_esm/asset.js.map +1 -0
  50. package/src/_esm/enums.js +77 -14
  51. package/src/_esm/enums.js.map +1 -1
  52. package/src/_esm/index.js +3 -4
  53. package/src/_esm/index.js.map +1 -1
  54. package/src/_esm/providers/hyperliquid/assetId.js +13 -11
  55. package/src/_esm/providers/hyperliquid/assetId.js.map +1 -1
  56. package/src/_esm/providers/hyperliquid/mappers/activity.js +69 -0
  57. package/src/_esm/providers/hyperliquid/mappers/activity.js.map +1 -0
  58. package/src/_esm/providers/hyperliquid/mappers/{market.js → asset.js} +7 -7
  59. package/src/_esm/providers/hyperliquid/mappers/asset.js.map +1 -0
  60. package/src/_esm/providers/hyperliquid/mappers/fill.js +62 -0
  61. package/src/_esm/providers/hyperliquid/mappers/fill.js.map +1 -0
  62. package/src/_esm/providers/hyperliquid/mappers/index.js +4 -4
  63. package/src/_esm/providers/hyperliquid/mappers/index.js.map +1 -1
  64. package/src/_esm/providers/hyperliquid/mappers/order.js +56 -9
  65. package/src/_esm/providers/hyperliquid/mappers/order.js.map +1 -1
  66. package/src/_esm/providers/hyperliquid/mappers/position.js +7 -5
  67. package/src/_esm/providers/hyperliquid/mappers/position.js.map +1 -1
  68. package/src/_esm/providers/hyperliquid/mappers/shared.js +1 -12
  69. package/src/_esm/providers/hyperliquid/mappers/shared.js.map +1 -1
  70. package/src/_esm/providers/hyperliquid/types.js +22 -2
  71. package/src/_esm/providers/hyperliquid/types.js.map +1 -1
  72. package/src/_esm/providers/lighter/apiTypes.js +5 -0
  73. package/src/_esm/providers/lighter/apiTypes.js.map +1 -0
  74. package/src/_esm/providers/lighter/index.js +4 -0
  75. package/src/_esm/providers/lighter/index.js.map +1 -0
  76. package/src/_esm/providers/lighter/mappers/fill.js +30 -0
  77. package/src/_esm/providers/lighter/mappers/fill.js.map +1 -0
  78. package/src/_esm/providers/lighter/mappers/index.js +4 -0
  79. package/src/_esm/providers/lighter/mappers/index.js.map +1 -0
  80. package/src/_esm/providers/lighter/mappers/order.js +34 -0
  81. package/src/_esm/providers/lighter/mappers/order.js.map +1 -0
  82. package/src/_esm/providers/lighter/mappers/position.js +34 -0
  83. package/src/_esm/providers/lighter/mappers/position.js.map +1 -0
  84. package/src/_esm/providers/lighter/types.js +30 -0
  85. package/src/_esm/providers/lighter/types.js.map +1 -0
  86. package/src/_esm/providers.js +2 -0
  87. package/src/_esm/providers.js.map +1 -0
  88. package/src/_types/account.d.ts +73 -18
  89. package/src/_types/account.d.ts.map +1 -1
  90. package/src/_types/action.d.ts +181 -0
  91. package/src/_types/action.d.ts.map +1 -0
  92. package/src/_types/{market.d.ts → asset.d.ts} +23 -34
  93. package/src/_types/asset.d.ts.map +1 -0
  94. package/src/_types/enums.d.ts +62 -5
  95. package/src/_types/enums.d.ts.map +1 -1
  96. package/src/_types/index.d.ts +3 -4
  97. package/src/_types/index.d.ts.map +1 -1
  98. package/src/_types/providers/hyperliquid/assetId.d.ts +8 -6
  99. package/src/_types/providers/hyperliquid/assetId.d.ts.map +1 -1
  100. package/src/_types/providers/hyperliquid/mappers/activity.d.ts +13 -0
  101. package/src/_types/providers/hyperliquid/mappers/activity.d.ts.map +1 -0
  102. package/src/_types/providers/hyperliquid/mappers/asset.d.ts +4 -0
  103. package/src/_types/providers/hyperliquid/mappers/asset.d.ts.map +1 -0
  104. package/src/_types/providers/hyperliquid/mappers/fill.d.ts +6 -0
  105. package/src/_types/providers/hyperliquid/mappers/fill.d.ts.map +1 -0
  106. package/src/_types/providers/hyperliquid/mappers/index.d.ts +4 -4
  107. package/src/_types/providers/hyperliquid/mappers/index.d.ts.map +1 -1
  108. package/src/_types/providers/hyperliquid/mappers/order.d.ts +8 -3
  109. package/src/_types/providers/hyperliquid/mappers/order.d.ts.map +1 -1
  110. package/src/_types/providers/hyperliquid/mappers/position.d.ts +1 -1
  111. package/src/_types/providers/hyperliquid/mappers/position.d.ts.map +1 -1
  112. package/src/_types/providers/hyperliquid/mappers/shared.d.ts +0 -6
  113. package/src/_types/providers/hyperliquid/mappers/shared.d.ts.map +1 -1
  114. package/src/_types/providers/hyperliquid/types.d.ts +63 -11
  115. package/src/_types/providers/hyperliquid/types.d.ts.map +1 -1
  116. package/src/_types/providers/lighter/apiTypes.d.ts +74 -0
  117. package/src/_types/providers/lighter/apiTypes.d.ts.map +1 -0
  118. package/src/_types/providers/lighter/index.d.ts +4 -0
  119. package/src/_types/providers/lighter/index.d.ts.map +1 -0
  120. package/src/_types/providers/lighter/mappers/fill.d.ts +10 -0
  121. package/src/_types/providers/lighter/mappers/fill.d.ts.map +1 -0
  122. package/src/_types/providers/lighter/mappers/index.d.ts +4 -0
  123. package/src/_types/providers/lighter/mappers/index.d.ts.map +1 -0
  124. package/src/_types/providers/lighter/mappers/order.d.ts +9 -0
  125. package/src/_types/providers/lighter/mappers/order.d.ts.map +1 -0
  126. package/src/_types/providers/lighter/mappers/position.d.ts +9 -0
  127. package/src/_types/providers/lighter/mappers/position.d.ts.map +1 -0
  128. package/src/_types/providers/lighter/types.d.ts +90 -0
  129. package/src/_types/providers/lighter/types.d.ts.map +1 -0
  130. package/src/_types/providers.d.ts +23 -0
  131. package/src/_types/providers.d.ts.map +1 -0
  132. package/src/_types/subscriptions.d.ts +24 -18
  133. package/src/_types/subscriptions.d.ts.map +1 -1
  134. package/src/_types/typedData.d.ts +13 -5
  135. package/src/_types/typedData.d.ts.map +1 -1
  136. package/src/account.ts +94 -18
  137. package/src/action.ts +246 -0
  138. package/src/asset.ts +88 -0
  139. package/src/enums.ts +72 -3
  140. package/src/index.ts +3 -4
  141. package/src/providers/hyperliquid/assetId.ts +18 -12
  142. package/src/providers/hyperliquid/mappers/activity.ts +94 -0
  143. package/src/providers/hyperliquid/mappers/{market.ts → asset.ts} +9 -12
  144. package/src/providers/hyperliquid/mappers/fill.ts +77 -0
  145. package/src/providers/hyperliquid/mappers/index.ts +10 -4
  146. package/src/providers/hyperliquid/mappers/order.ts +62 -15
  147. package/src/providers/hyperliquid/mappers/position.ts +7 -10
  148. package/src/providers/hyperliquid/mappers/shared.ts +0 -15
  149. package/src/providers/hyperliquid/types.ts +127 -20
  150. package/src/providers/lighter/apiTypes.ts +80 -0
  151. package/src/providers/lighter/index.ts +3 -0
  152. package/src/providers/lighter/mappers/fill.ts +45 -0
  153. package/src/providers/lighter/mappers/index.ts +3 -0
  154. package/src/providers/lighter/mappers/order.ts +37 -0
  155. package/src/providers/lighter/mappers/position.ts +43 -0
  156. package/src/providers/lighter/types.ts +115 -0
  157. package/src/providers.ts +26 -0
  158. package/src/subscriptions.ts +22 -20
  159. package/src/typedData.ts +15 -5
  160. package/src/_cjs/authorization.js.map +0 -1
  161. package/src/_cjs/market.js.map +0 -1
  162. package/src/_cjs/providers/hyperliquid/mappers/history.js +0 -22
  163. package/src/_cjs/providers/hyperliquid/mappers/history.js.map +0 -1
  164. package/src/_cjs/providers/hyperliquid/mappers/market.js.map +0 -1
  165. package/src/_cjs/trading.js.map +0 -1
  166. package/src/_cjs/withdrawal.js.map +0 -1
  167. package/src/_esm/authorization.js +0 -2
  168. package/src/_esm/authorization.js.map +0 -1
  169. package/src/_esm/market.js +0 -2
  170. package/src/_esm/market.js.map +0 -1
  171. package/src/_esm/providers/hyperliquid/mappers/history.js +0 -18
  172. package/src/_esm/providers/hyperliquid/mappers/history.js.map +0 -1
  173. package/src/_esm/providers/hyperliquid/mappers/market.js.map +0 -1
  174. package/src/_esm/trading.js +0 -2
  175. package/src/_esm/trading.js.map +0 -1
  176. package/src/_esm/withdrawal.js +0 -2
  177. package/src/_esm/withdrawal.js.map +0 -1
  178. package/src/_types/authorization.d.ts +0 -39
  179. package/src/_types/authorization.d.ts.map +0 -1
  180. package/src/_types/market.d.ts.map +0 -1
  181. package/src/_types/providers/hyperliquid/mappers/history.d.ts +0 -4
  182. package/src/_types/providers/hyperliquid/mappers/history.d.ts.map +0 -1
  183. package/src/_types/providers/hyperliquid/mappers/market.d.ts +0 -4
  184. package/src/_types/providers/hyperliquid/mappers/market.d.ts.map +0 -1
  185. package/src/_types/trading.d.ts +0 -82
  186. package/src/_types/trading.d.ts.map +0 -1
  187. package/src/_types/withdrawal.d.ts +0 -37
  188. package/src/_types/withdrawal.d.ts.map +0 -1
  189. package/src/authorization.ts +0 -46
  190. package/src/market.ts +0 -97
  191. package/src/providers/hyperliquid/mappers/history.ts +0 -25
  192. package/src/trading.ts +0 -99
  193. package/src/withdrawal.ts +0 -44
@@ -0,0 +1,80 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Lighter raw API response types — shared between backend (REST) and SDK (WS)
3
+ // ---------------------------------------------------------------------------
4
+
5
+ export type LtAccountPosition = {
6
+ market_id: number
7
+ symbol: string
8
+ initial_margin_fraction: string
9
+ open_order_count: number
10
+ pending_order_count: number
11
+ position_tied_order_count: number
12
+ sign: number
13
+ position: string
14
+ avg_entry_price: string
15
+ position_value: string
16
+ unrealized_pnl: string
17
+ realized_pnl: string
18
+ liquidation_price: string
19
+ total_funding_paid_out: string
20
+ margin_mode: number
21
+ allocated_margin: string
22
+ total_discount: string
23
+ }
24
+
25
+ export type LtAccountAsset = {
26
+ symbol: string
27
+ asset_id: number
28
+ balance: string
29
+ locked_balance: string
30
+ }
31
+
32
+ export type LtTrade = {
33
+ trade_id: number
34
+ tx_hash: string
35
+ type: string
36
+ market_id: number
37
+ size: string
38
+ price: string
39
+ usd_amount: string
40
+ ask_id: number
41
+ bid_id: number
42
+ ask_account_id: number
43
+ bid_account_id: number
44
+ is_maker_ask: boolean
45
+ block_height: number
46
+ timestamp: number
47
+ taker_fee: number
48
+ maker_fee: number
49
+ transaction_time: number
50
+ }
51
+
52
+ export type LtOrder = {
53
+ order_index: number
54
+ client_order_index: number
55
+ order_id: string
56
+ client_order_id: string
57
+ market_index: number
58
+ owner_account_index: number
59
+ initial_base_amount: string
60
+ price: string
61
+ nonce: number
62
+ remaining_base_amount: string
63
+ is_ask: boolean
64
+ filled_base_amount: string
65
+ filled_quote_amount: string
66
+ side: string
67
+ type: string
68
+ time_in_force: string
69
+ reduce_only: boolean
70
+ trigger_price: string
71
+ order_expiry: number
72
+ status: string
73
+ trigger_status: string
74
+ trigger_time: number
75
+ block_height: number
76
+ timestamp: number
77
+ created_at: number
78
+ updated_at: number
79
+ transaction_time: number
80
+ }
@@ -0,0 +1,3 @@
1
+ export * from './types.js'
2
+ export * from './apiTypes.js'
3
+ export * from './mappers/index.js'
@@ -0,0 +1,45 @@
1
+ import {
2
+ FillClassification,
3
+ FillStatus,
4
+ OrderSide,
5
+ OrderType,
6
+ } from '../../../enums.js'
7
+ import type { Fill } from '../../../account.js'
8
+ import type { LtTrade } from '../apiTypes.js'
9
+
10
+ const classifyFill = (isBuy: boolean): FillClassification =>
11
+ isBuy ? FillClassification.OPENED_LONG : FillClassification.OPENED_SHORT
12
+
13
+ /**
14
+ * Map a raw Lighter trade to the generic Fill type.
15
+ * @param trade - Raw trade from REST or WS
16
+ * @param accountIndex - The viewer's Lighter account index (to determine buy/sell side)
17
+ * @param symbol - Resolved symbol (market_id → symbol lookup)
18
+ */
19
+ export const mapFill = (
20
+ trade: LtTrade,
21
+ accountIndex: number,
22
+ symbol: string
23
+ ): Fill => {
24
+ const isBuyer = trade.bid_account_id === accountIndex
25
+ const isMaker =
26
+ (trade.is_maker_ask && !isBuyer) || (!trade.is_maker_ask && isBuyer)
27
+
28
+ return {
29
+ id: trade.trade_id.toString(),
30
+ asset: {
31
+ assetId: symbol,
32
+ market: 'lighter',
33
+ displaySymbol: symbol,
34
+ displayQuote: 'USDC',
35
+ },
36
+ side: isBuyer ? OrderSide.BUY : OrderSide.SELL,
37
+ type: OrderType.LIMIT,
38
+ size: trade.size,
39
+ price: trade.price,
40
+ status: FillStatus.FILLED,
41
+ fee: isMaker ? trade.maker_fee.toString() : trade.taker_fee.toString(),
42
+ classification: classifyFill(isBuyer),
43
+ createdAt: new Date(trade.timestamp * 1000).toISOString(),
44
+ }
45
+ }
@@ -0,0 +1,3 @@
1
+ export { mapPosition } from './position.js'
2
+ export { mapFill } from './fill.js'
3
+ export { mapOrder } from './order.js'
@@ -0,0 +1,37 @@
1
+ import { OrderSide, OrderType } from '../../../enums.js'
2
+ import type { OpenOrder } from '../../../account.js'
3
+ import type { LtOrder } from '../apiTypes.js'
4
+
5
+ const mapOrderType = (ltType: string): OrderType => {
6
+ const map: Record<string, OrderType> = {
7
+ limit: OrderType.LIMIT,
8
+ market: OrderType.MARKET,
9
+ stop_loss: OrderType.STOP_MARKET,
10
+ stop_loss_limit: OrderType.STOP_LIMIT,
11
+ take_profit: OrderType.TAKE_PROFIT_MARKET,
12
+ take_profit_limit: OrderType.TAKE_PROFIT_LIMIT,
13
+ }
14
+ return map[ltType] ?? OrderType.LIMIT
15
+ }
16
+
17
+ /**
18
+ * Map a raw Lighter order to the generic OpenOrder type.
19
+ * @param order - Raw order from REST or WS
20
+ * @param symbol - Resolved symbol (market_index → symbol lookup)
21
+ */
22
+ export const mapOrder = (order: LtOrder, symbol: string): OpenOrder => ({
23
+ id: order.order_id,
24
+ asset: {
25
+ assetId: symbol,
26
+ market: 'lighter',
27
+ displaySymbol: symbol,
28
+ displayQuote: 'USDC',
29
+ },
30
+ side: order.is_ask ? OrderSide.SELL : OrderSide.BUY,
31
+ type: mapOrderType(order.type),
32
+ size: order.initial_base_amount,
33
+ price: order.price,
34
+ filledSize: order.filled_base_amount,
35
+ reduceOnly: order.reduce_only,
36
+ createdAt: new Date(order.created_at * 1000).toISOString(),
37
+ })
@@ -0,0 +1,43 @@
1
+ import { MarginMode, PositionSide } from '../../../enums.js'
2
+ import type { Position } from '../../../account.js'
3
+ import type { LtAccountPosition } from '../apiTypes.js'
4
+ import { LT_MARGIN_MODE_ISOLATED } from '../types.js'
5
+
6
+ /**
7
+ * Map a raw Lighter account position to the generic Position type.
8
+ * @param pos - Raw position from REST or WS
9
+ * @param symbol - Resolved symbol (market_id → symbol lookup, or pos.symbol)
10
+ */
11
+ export const mapPosition = (
12
+ pos: LtAccountPosition,
13
+ symbol: string
14
+ ): Position => {
15
+ const size = parseFloat(pos.position)
16
+
17
+ return {
18
+ asset: {
19
+ assetId: symbol,
20
+ market: 'lighter',
21
+ displaySymbol: symbol,
22
+ displayQuote: 'USDC',
23
+ },
24
+ side: pos.sign >= 0 ? PositionSide.LONG : PositionSide.SHORT,
25
+ size: Math.abs(size).toString(),
26
+ entryPrice: pos.avg_entry_price,
27
+ markPrice:
28
+ pos.position_value === '0' || size === 0
29
+ ? '0'
30
+ : (parseFloat(pos.position_value) / Math.abs(size)).toString(),
31
+ liquidationPrice: pos.liquidation_price,
32
+ unrealizedPnl: pos.unrealized_pnl,
33
+ leverage:
34
+ parseFloat(pos.initial_margin_fraction) > 0
35
+ ? Math.round(10_000 / parseFloat(pos.initial_margin_fraction))
36
+ : 1,
37
+ marginUsed: pos.allocated_margin,
38
+ marginMode:
39
+ pos.margin_mode === LT_MARGIN_MODE_ISOLATED
40
+ ? MarginMode.ISOLATED
41
+ : MarginMode.CROSS,
42
+ }
43
+ }
@@ -0,0 +1,115 @@
1
+ // ---------------------------------------------------------------------------
2
+ // Lighter WASM signer parameter types
3
+ //
4
+ // These define the exact shapes that `wasmSignParams` takes for each Lighter
5
+ // action type. The backend populates these; the SDK passes them to the WASM
6
+ // signer along with SDK-managed fields (nonce, account_index, api_key_index).
7
+ // ---------------------------------------------------------------------------
8
+
9
+ /** Backend-provided params for SignCreateOrder. */
10
+ export type LtCreateOrderWasmParams = {
11
+ market_index: number
12
+ client_order_index: number
13
+ base_amount: number
14
+ price: number
15
+ is_ask: number
16
+ order_type: number
17
+ time_in_force: number
18
+ reduce_only: boolean
19
+ trigger_price: number
20
+ order_expiry: number
21
+ integrator_account_index: number
22
+ integrator_taker_fee: number
23
+ integrator_maker_fee: number
24
+ }
25
+
26
+ /** Backend-provided params for SignCancelOrder. */
27
+ export type LtCancelOrderWasmParams = {
28
+ market_index: number
29
+ order_index: number
30
+ }
31
+
32
+ /** Backend-provided params for SignModifyOrder. */
33
+ export type LtModifyOrderWasmParams = {
34
+ market_index: number
35
+ order_index: number
36
+ base_amount: number
37
+ price: number
38
+ trigger_price: number
39
+ integrator_account_index: number
40
+ integrator_taker_fee: number
41
+ integrator_maker_fee: number
42
+ }
43
+
44
+ /** Backend-provided params for SignUpdateLeverage. */
45
+ export type LtUpdateLeverageWasmParams = {
46
+ market_index: number
47
+ fraction: number
48
+ margin_mode: number
49
+ }
50
+
51
+ /** Backend-provided params for SignUpdateMargin. */
52
+ export type LtUpdateMarginWasmParams = {
53
+ market_index: number
54
+ usdc_amount: number
55
+ direction: number
56
+ }
57
+
58
+ /** Backend-provided params for SignWithdraw. */
59
+ export type LtWithdrawWasmParams = {
60
+ asset_index: number
61
+ route_type: number
62
+ amount: number
63
+ }
64
+
65
+ /** Backend-provided params for SignCancelAllOrders. */
66
+ export type LtCancelAllOrdersWasmParams = {
67
+ /** 0=immediate (cancel GTC), 1=scheduled, 2=abort scheduled */
68
+ time_in_force: number
69
+ /** Unix timestamp in milliseconds. Use Date.now() for immediate cancels. */
70
+ timestamp_ms: number
71
+ }
72
+
73
+ /**
74
+ * Backend-provided params for SignChangePubKey (REGISTER_API_KEY).
75
+ *
76
+ * NOTE: `new_public_key` is a placeholder here — the SDK generates the actual
77
+ * keypair via the WASM signer and fills this in before calling SignChangePubKey.
78
+ * This action also requires an L1 Ethereum signature (the user's wallet signs
79
+ * the ChangePubKey message), so it is a hybrid: WASM blob + EIP-191 eth_sign.
80
+ */
81
+ export type LtChangePubKeyWasmParams = {
82
+ /** API key slot index to register (0-255). SDK fills in the generated public key. */
83
+ api_key_index: number
84
+ nonce: number
85
+ }
86
+
87
+ // ---------------------------------------------------------------------------
88
+ // Lighter WASM signer constants
89
+ // ---------------------------------------------------------------------------
90
+
91
+ export const LT_ORDER_TYPE_LIMIT = 0
92
+ export const LT_ORDER_TYPE_MARKET = 1
93
+ export const LT_ORDER_TYPE_STOP_LOSS = 2
94
+ export const LT_ORDER_TYPE_STOP_LOSS_LIMIT = 3
95
+ export const LT_ORDER_TYPE_TAKE_PROFIT = 4
96
+ export const LT_ORDER_TYPE_TAKE_PROFIT_LIMIT = 5
97
+ export const LT_ORDER_TYPE_TWAP = 6
98
+
99
+ export const LT_TIME_IN_FORCE_IOC = 0
100
+ export const LT_TIME_IN_FORCE_GTC = 1
101
+ export const LT_TIME_IN_FORCE_POST_ONLY = 2
102
+
103
+ export const LT_MARGIN_MODE_CROSS = 0
104
+ export const LT_MARGIN_MODE_ISOLATED = 1
105
+
106
+ export const LT_MARGIN_DIRECTION_REMOVE = 0
107
+ export const LT_MARGIN_DIRECTION_ADD = 1
108
+
109
+ export const LT_ROUTE_PERP = 0
110
+ export const LT_ROUTE_SPOT = 1
111
+
112
+ export const LT_ASSET_ID_USDC = 3
113
+
114
+ export const LT_NIL_TRIGGER_PRICE = 0
115
+ export const LT_DEFAULT_ORDER_EXPIRY = -1
@@ -0,0 +1,26 @@
1
+ import type { ActionType, PerpsSigner, SigningMethod } from './enums.js'
2
+
3
+ export interface ActionDescriptor {
4
+ type: ActionType
5
+ signers: PerpsSigner[]
6
+ }
7
+
8
+ export interface ProviderMarketInfo {
9
+ id: string
10
+ quoteAsset: string | null
11
+ }
12
+
13
+ export interface Provider {
14
+ key: string
15
+ name: string
16
+ logoURI: string
17
+ signingMethod: SigningMethod
18
+ prepareAccountActions: ActionDescriptor[]
19
+ actions: ActionDescriptor[]
20
+ markets: ProviderMarketInfo[]
21
+ wsUrl?: string
22
+ }
23
+
24
+ export interface ProvidersResponse {
25
+ providers: Provider[]
26
+ }
@@ -1,12 +1,7 @@
1
1
  import type { Address } from './typedData.js'
2
- import type {
3
- Candle,
4
- OhlcvInterval,
5
- OrderbookResponse,
6
- PricesResponse,
7
- } from './market.js'
8
- import type { HistoryItem, Position } from './account.js'
9
- import type { Order } from './trading.js'
2
+ import type { Candle, OhlcvInterval, OrderbookResponse } from './asset.js'
3
+ import type { Fill, Position } from './account.js'
4
+ import type { Order } from './action.js'
10
5
 
11
6
  // --- Channels the user can subscribe to ---
12
7
 
@@ -14,17 +9,13 @@ export type PricesSubscription = { channel: 'prices'; dex: string }
14
9
  export type OrderbookSubscription = {
15
10
  channel: 'orderbook'
16
11
  dex: string
17
- symbol: string
18
- }
19
- export type TradesSubscription = {
20
- channel: 'trades'
21
- dex: string
22
- symbol: string
12
+ assetId: string
13
+ depth?: number
23
14
  }
24
15
  export type CandleSubscription = {
25
16
  channel: 'candle'
26
17
  dex: string
27
- symbol: string
18
+ assetId: string
28
19
  interval: OhlcvInterval
29
20
  }
30
21
  export type OrderUpdatesSubscription = {
@@ -42,31 +33,42 @@ export type PositionsSubscription = {
42
33
  dex: string
43
34
  address: Address
44
35
  }
36
+ export type SpotBalancesSubscription = {
37
+ channel: 'spotBalances'
38
+ dex: string
39
+ address: Address
40
+ }
45
41
 
46
42
  export type Subscription =
47
43
  | PricesSubscription
48
44
  | OrderbookSubscription
49
- | TradesSubscription
50
45
  | CandleSubscription
51
46
  | OrderUpdatesSubscription
52
47
  | FillsSubscription
53
48
  | PositionsSubscription
49
+ | SpotBalancesSubscription
54
50
 
55
51
  // --- Events emitted to listeners ---
56
52
 
57
- export type PricesEvent = { channel: 'prices'; data: PricesResponse }
53
+ export interface SpotBalance {
54
+ coin: string
55
+ total: string
56
+ hold: string
57
+ }
58
+
59
+ export type PricesEvent = { channel: 'prices'; data: Record<string, string> }
58
60
  export type OrderbookEvent = { channel: 'orderbook'; data: OrderbookResponse }
59
- export type TradesEvent = { channel: 'trades'; data: HistoryItem[] }
60
61
  export type CandleEvent = { channel: 'candle'; data: Candle }
61
62
  export type OrderUpdatesEvent = { channel: 'orderUpdates'; data: Order[] }
62
- export type FillsEvent = { channel: 'fills'; data: HistoryItem[] }
63
+ export type FillsEvent = { channel: 'fills'; data: Fill[] }
63
64
  export type PositionsEvent = { channel: 'positions'; data: Position[] }
65
+ export type SpotBalancesEvent = { channel: 'spotBalances'; data: SpotBalance[] }
64
66
 
65
67
  export type SubscriptionEvent =
66
68
  | PricesEvent
67
69
  | OrderbookEvent
68
- | TradesEvent
69
70
  | CandleEvent
70
71
  | OrderUpdatesEvent
71
72
  | FillsEvent
72
73
  | PositionsEvent
74
+ | SpotBalancesEvent
package/src/typedData.ts CHANGED
@@ -1,12 +1,22 @@
1
- import type { TypedData, SignedTypedData } from '@lifi/types'
2
1
  import type { Address, Hex, TypedDataDomain, TypedDataParameter } from 'viem'
2
+ import type { HlPrimaryType } from './providers/hyperliquid/types.js'
3
3
 
4
- export type PerpsTypedData = Omit<TypedData, 'primaryType'> & {
5
- primaryType: string
4
+ /**
5
+ * All known EIP-712 primaryType values across supported providers.
6
+ * Extend this union when adding a new EIP-712 provider.
7
+ */
8
+ export type PerpsPrimaryType = HlPrimaryType
9
+
10
+ export type PerpsTypedData = {
11
+ domain: TypedDataDomain
12
+ types: Record<string, readonly TypedDataParameter[]>
13
+ primaryType: PerpsPrimaryType
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ message: Record<string, any>
6
16
  }
7
17
 
8
- export type PerpsSignedTypedData = Omit<SignedTypedData, 'primaryType'> & {
9
- primaryType: string
18
+ export type PerpsSignedTypedData = PerpsTypedData & {
19
+ signature: Hex
10
20
  }
11
21
 
12
22
  // Re-export viem primitives used across perps types
@@ -1 +0,0 @@
1
- {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../authorization.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.js","sourceRoot":"","sources":["../market.ts"],"names":[],"mappings":""}
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mapHistoryItem = void 0;
4
- const enums_js_1 = require("../../../enums.js");
5
- const shared_js_1 = require("./shared.js");
6
- const mapHistoryItem = (fill, dexKey, assetIdLookup) => ({
7
- id: String(fill.tid),
8
- symbol: fill.coin,
9
- assetId: (0, shared_js_1.resolveAssetIdFromLookup)(assetIdLookup, fill.coin),
10
- dex: dexKey,
11
- side: fill.side === 'B' ? enums_js_1.OrderSide.BUY : enums_js_1.OrderSide.SELL,
12
- type: fill.dir?.includes('Limit') ? enums_js_1.OrderType.LIMIT : enums_js_1.OrderType.MARKET,
13
- size: fill.sz,
14
- price: fill.px,
15
- status: enums_js_1.HistoryItemStatus.FILLED,
16
- filledSize: fill.sz,
17
- fee: fill.fee,
18
- realizedPnl: fill.closedPnl === '0' ? null : fill.closedPnl,
19
- createdAt: new Date(fill.time).toISOString(),
20
- });
21
- exports.mapHistoryItem = mapHistoryItem;
22
- //# sourceMappingURL=history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/history.ts"],"names":[],"mappings":";;;AAAA,gDAA2E;AAI3E,2CAAsD;AAE/C,MAAM,cAAc,GAAG,CAC5B,IAAgB,EAChB,MAAc,EACd,aAAkC,EACrB,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IACpB,MAAM,EAAE,IAAI,CAAC,IAAI;IACjB,OAAO,EAAE,IAAA,oCAAwB,EAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC;IAC3D,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,oBAAS,CAAC,GAAG,CAAC,CAAC,CAAC,oBAAS,CAAC,IAAI;IACxD,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAS,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAS,CAAC,MAAM;IACtE,IAAI,EAAE,IAAI,CAAC,EAAE;IACb,KAAK,EAAE,IAAI,CAAC,EAAE;IACd,MAAM,EAAE,4BAAiB,CAAC,MAAM;IAChC,UAAU,EAAE,IAAI,CAAC,EAAE;IACnB,GAAG,EAAE,IAAI,CAAC,GAAG;IACb,WAAW,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;IAC3D,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;CAC7C,CAAC,CAAA;AAlBW,QAAA,cAAc,kBAkBzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.js","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/market.ts"],"names":[],"mappings":";;;AACA,8CAAgD;AAGhD,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAExC,MAAM,SAAS,GAAG,CACvB,QAAwB,EACxB,QAAoB,EACpB,QAAgB,EAChB,UAAkB,EAClB,MAAc,EACN,EAAE;IACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,eAAe,GACnB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,wBAAwB,CAAC,GAAG,wBAAwB,CAAA;IAEtE,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,IAAI;QACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,OAAO,EAAE,qCAAqC,QAAQ,CAAC,IAAI,MAAM;QACjE,OAAO,EAAE,IAAA,6BAAgB,EAAC,QAAQ,EAAE,UAAU,CAAC;QAC/C,GAAG,EAAE,MAAM;QACX,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,YAAY,EAAE,QAAQ,CAAC,YAAY,KAAK,IAAI;QAC5C,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ,CAAC,OAAO;YACtB,eAAe;SAChB;QACD,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM;KAC3B,CAAA;AACH,CAAC,CAAA;AA5BY,QAAA,SAAS,aA4BrB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"trading.js","sourceRoot":"","sources":["../trading.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"withdrawal.js","sourceRoot":"","sources":["../withdrawal.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=authorization.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../authorization.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=market.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.js","sourceRoot":"","sources":["../market.ts"],"names":[],"mappings":""}
@@ -1,18 +0,0 @@
1
- import { HistoryItemStatus, OrderSide, OrderType } from '../../../enums.js';
2
- import { resolveAssetIdFromLookup } from './shared.js';
3
- export const mapHistoryItem = (fill, dexKey, assetIdLookup) => ({
4
- id: String(fill.tid),
5
- symbol: fill.coin,
6
- assetId: resolveAssetIdFromLookup(assetIdLookup, fill.coin),
7
- dex: dexKey,
8
- side: fill.side === 'B' ? OrderSide.BUY : OrderSide.SELL,
9
- type: fill.dir?.includes('Limit') ? OrderType.LIMIT : OrderType.MARKET,
10
- size: fill.sz,
11
- price: fill.px,
12
- status: HistoryItemStatus.FILLED,
13
- filledSize: fill.sz,
14
- fee: fill.fee,
15
- realizedPnl: fill.closedPnl === '0' ? null : fill.closedPnl,
16
- createdAt: new Date(fill.time).toISOString(),
17
- });
18
- //# sourceMappingURL=history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAI3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAEtD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,IAAgB,EAChB,MAAc,EACd,aAAkC,EACrB,EAAE,CAAC,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IACpB,MAAM,EAAE,IAAI,CAAC,IAAI;IACjB,OAAO,EAAE,wBAAwB,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC;IAC3D,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI;IACxD,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM;IACtE,IAAI,EAAE,IAAI,CAAC,EAAE;IACb,KAAK,EAAE,IAAI,CAAC,EAAE;IACd,MAAM,EAAE,iBAAiB,CAAC,MAAM;IAChC,UAAU,EAAE,IAAI,CAAC,EAAE;IACnB,GAAG,EAAE,IAAI,CAAC,GAAG;IACb,WAAW,EAAE,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS;IAC3D,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;CAC7C,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.js","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/market.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGhD,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,SAAS;AAEzD,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,QAAwB,EACxB,QAAoB,EACpB,QAAgB,EAChB,UAAkB,EAClB,MAAc,EACN,EAAE;IACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,eAAe,GACnB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,wBAAwB,CAAC,GAAG,wBAAwB,CAAA;IAEtE,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,IAAI;QACrB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,OAAO,EAAE,qCAAqC,QAAQ,CAAC,IAAI,MAAM;QACjE,OAAO,EAAE,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC/C,GAAG,EAAE,MAAM;QACX,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,YAAY,EAAE,QAAQ,CAAC,YAAY,KAAK,IAAI;QAC5C,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ,CAAC,OAAO;YACtB,eAAe;SAChB;QACD,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM;KAC3B,CAAA;AACH,CAAC,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=trading.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trading.js","sourceRoot":"","sources":["../trading.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=withdrawal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"withdrawal.js","sourceRoot":"","sources":["../withdrawal.ts"],"names":[],"mappings":""}
@@ -1,39 +0,0 @@
1
- import type { Address, Hex, PerpsTypedData } from './typedData.js';
2
- export interface AuthorizationInput {
3
- key: string;
4
- params?: Record<string, unknown>;
5
- }
6
- export interface CreateAuthorizationRequest {
7
- dex: string;
8
- address: Address;
9
- signerAddress?: Address;
10
- authorizations: AuthorizationInput[];
11
- }
12
- export interface AuthorizationAction {
13
- action: string;
14
- description?: string;
15
- typedData: PerpsTypedData;
16
- }
17
- export interface CreateAuthorizationResponse {
18
- actions: AuthorizationAction[];
19
- }
20
- export interface SignedAuthorization {
21
- action: string;
22
- typedData: PerpsTypedData;
23
- signature: Hex;
24
- }
25
- export interface AuthorizationsRequest {
26
- dex: string;
27
- address: Address;
28
- signerAddress?: Address;
29
- actions: SignedAuthorization[];
30
- }
31
- export interface AuthorizationResult {
32
- action: string;
33
- success: boolean;
34
- error?: string;
35
- }
36
- export interface AuthorizationsResponse {
37
- results: AuthorizationResult[];
38
- }
39
- //# sourceMappingURL=authorization.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"authorization.d.ts","sourceRoot":"","sources":["../authorization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAElE,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED,MAAM,WAAW,0BAA0B;IACzC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,cAAc,EAAE,kBAAkB,EAAE,CAAA;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,cAAc,CAAA;CAC1B;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,cAAc,CAAA;IACzB,SAAS,EAAE,GAAG,CAAA;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAC/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../market.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;IACrC,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,GAAG;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,aAAa,EAAE,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,GAAG,EAAE,CAAA;CACb;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,OAAO,EAAE,WAAW,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,MAAM,aAAa,GACrB,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAA;AAER,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,cAAc,EAAE,CAAA;IACtB,IAAI,EAAE,cAAc,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;CAClB"}
@@ -1,4 +0,0 @@
1
- import type { HistoryItem } from '../../../account.js';
2
- import type { HlUserFill } from '../types.js';
3
- export declare const mapHistoryItem: (fill: HlUserFill, dexKey: string, assetIdLookup: Map<string, number>) => HistoryItem;
4
- //# sourceMappingURL=history.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/history.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAI7C,eAAO,MAAM,cAAc,GACzB,MAAM,UAAU,EAChB,QAAQ,MAAM,EACd,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KACjC,WAcD,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { Market } from '../../../market.js';
2
- import type { HlAssetCtx, HlUniverseItem } from '../types.js';
3
- export declare const mapMarket: (universe: HlUniverseItem, assetCtx: HlAssetCtx, dexIndex: number, indexInDex: number, dexKey: string) => Market;
4
- //# sourceMappingURL=market.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../../providers/hyperliquid/mappers/market.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAI7D,eAAO,MAAM,SAAS,GACpB,UAAU,cAAc,EACxB,UAAU,UAAU,EACpB,UAAU,MAAM,EAChB,YAAY,MAAM,EAClB,QAAQ,MAAM,KACb,MAsBF,CAAA"}