@nktkas/hyperliquid 0.23.0 → 0.24.0

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 (169) hide show
  1. package/CONTRIBUTING.md +3 -2
  2. package/README.md +184 -186
  3. package/esm/mod.d.ts +2 -2
  4. package/esm/mod.d.ts.map +1 -1
  5. package/esm/src/base.d.ts +0 -5
  6. package/esm/src/base.d.ts.map +1 -1
  7. package/esm/src/clients/exchange.d.ts +430 -393
  8. package/esm/src/clients/exchange.d.ts.map +1 -1
  9. package/esm/src/clients/exchange.js +467 -927
  10. package/esm/src/clients/info.d.ts +330 -185
  11. package/esm/src/clients/info.d.ts.map +1 -1
  12. package/esm/src/clients/info.js +348 -334
  13. package/esm/src/clients/multiSign.d.ts +14 -1184
  14. package/esm/src/clients/multiSign.d.ts.map +1 -1
  15. package/esm/src/clients/multiSign.js +37 -2004
  16. package/esm/src/clients/subscription.d.ts +95 -93
  17. package/esm/src/clients/subscription.d.ts.map +1 -1
  18. package/esm/src/clients/subscription.js +101 -146
  19. package/esm/src/signing/_signTypedData/ethers.d.ts +16 -4
  20. package/esm/src/signing/_signTypedData/ethers.d.ts.map +1 -1
  21. package/esm/src/signing/_signTypedData/ethers.js +1 -1
  22. package/esm/src/signing/_signTypedData/mod.d.ts +12 -12
  23. package/esm/src/signing/_signTypedData/mod.d.ts.map +1 -1
  24. package/esm/src/signing/_signTypedData/mod.js +52 -24
  25. package/esm/src/signing/_signTypedData/private_key.d.ts +6 -5
  26. package/esm/src/signing/_signTypedData/private_key.d.ts.map +1 -1
  27. package/esm/src/signing/_signTypedData/private_key.js +40 -19
  28. package/esm/src/signing/_signTypedData/viem.d.ts +27 -6
  29. package/esm/src/signing/_signTypedData/viem.d.ts.map +1 -1
  30. package/esm/src/signing/_signTypedData/viem.js +1 -1
  31. package/esm/src/signing/_sorter.d.ts +12 -21
  32. package/esm/src/signing/_sorter.d.ts.map +1 -1
  33. package/esm/src/signing/_sorter.js +30 -63
  34. package/esm/src/signing/mod.d.ts +177 -127
  35. package/esm/src/signing/mod.d.ts.map +1 -1
  36. package/esm/src/signing/mod.js +182 -130
  37. package/esm/src/transports/base.d.ts +2 -1
  38. package/esm/src/transports/base.d.ts.map +1 -1
  39. package/esm/src/transports/http/http_transport.d.ts +3 -2
  40. package/esm/src/transports/http/http_transport.d.ts.map +1 -1
  41. package/esm/src/transports/http/http_transport.js +4 -4
  42. package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts +14 -6
  43. package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
  44. package/esm/src/transports/websocket/_hyperliquid_event_target.js +1 -2
  45. package/esm/src/transports/websocket/_reconnecting_websocket.d.ts +2 -1
  46. package/esm/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
  47. package/esm/src/transports/websocket/_reconnecting_websocket.js +1 -0
  48. package/esm/src/transports/websocket/_websocket_async_request.d.ts.map +1 -1
  49. package/esm/src/transports/websocket/_websocket_async_request.js +17 -21
  50. package/esm/src/transports/websocket/websocket_transport.d.ts +4 -4
  51. package/esm/src/transports/websocket/websocket_transport.d.ts.map +1 -1
  52. package/esm/src/transports/websocket/websocket_transport.js +6 -6
  53. package/esm/src/types/exchange/requests.d.ts +492 -306
  54. package/esm/src/types/exchange/requests.d.ts.map +1 -1
  55. package/esm/src/types/exchange/responses.d.ts +105 -25
  56. package/esm/src/types/exchange/responses.d.ts.map +1 -1
  57. package/esm/src/types/explorer/requests.d.ts +3 -3
  58. package/esm/src/types/explorer/requests.d.ts.map +1 -1
  59. package/esm/src/types/explorer/responses.d.ts +1 -1
  60. package/esm/src/types/explorer/responses.d.ts.map +1 -1
  61. package/esm/src/types/info/accounts.d.ts +403 -98
  62. package/esm/src/types/info/accounts.d.ts.map +1 -1
  63. package/esm/src/types/info/assets.d.ts +131 -35
  64. package/esm/src/types/info/assets.d.ts.map +1 -1
  65. package/esm/src/types/info/markets.d.ts +35 -8
  66. package/esm/src/types/info/markets.d.ts.map +1 -1
  67. package/esm/src/types/info/orders.d.ts +62 -17
  68. package/esm/src/types/info/orders.d.ts.map +1 -1
  69. package/esm/src/types/info/requests.d.ts +194 -76
  70. package/esm/src/types/info/requests.d.ts.map +1 -1
  71. package/{script/src/types/info/delegations.d.ts → esm/src/types/info/validators.d.ts} +45 -15
  72. package/esm/src/types/info/validators.d.ts.map +1 -0
  73. package/esm/src/types/info/vaults.d.ts +32 -10
  74. package/esm/src/types/info/vaults.d.ts.map +1 -1
  75. package/esm/src/types/mod.d.ts +2 -2
  76. package/esm/src/types/mod.d.ts.map +1 -1
  77. package/esm/src/types/subscriptions/requests.d.ts +21 -66
  78. package/esm/src/types/subscriptions/requests.d.ts.map +1 -1
  79. package/esm/src/types/subscriptions/responses.d.ts +46 -55
  80. package/esm/src/types/subscriptions/responses.d.ts.map +1 -1
  81. package/package.json +2 -3
  82. package/script/mod.d.ts +2 -2
  83. package/script/mod.d.ts.map +1 -1
  84. package/script/src/base.d.ts +0 -5
  85. package/script/src/base.d.ts.map +1 -1
  86. package/script/src/clients/exchange.d.ts +430 -393
  87. package/script/src/clients/exchange.d.ts.map +1 -1
  88. package/script/src/clients/exchange.js +466 -926
  89. package/script/src/clients/info.d.ts +330 -185
  90. package/script/src/clients/info.d.ts.map +1 -1
  91. package/script/src/clients/info.js +348 -334
  92. package/script/src/clients/multiSign.d.ts +14 -1184
  93. package/script/src/clients/multiSign.d.ts.map +1 -1
  94. package/script/src/clients/multiSign.js +38 -2005
  95. package/script/src/clients/subscription.d.ts +95 -93
  96. package/script/src/clients/subscription.d.ts.map +1 -1
  97. package/script/src/clients/subscription.js +101 -146
  98. package/script/src/signing/_signTypedData/ethers.d.ts +16 -4
  99. package/script/src/signing/_signTypedData/ethers.d.ts.map +1 -1
  100. package/script/src/signing/_signTypedData/ethers.js +2 -2
  101. package/script/src/signing/_signTypedData/mod.d.ts +12 -12
  102. package/script/src/signing/_signTypedData/mod.d.ts.map +1 -1
  103. package/script/src/signing/_signTypedData/mod.js +51 -26
  104. package/script/src/signing/_signTypedData/private_key.d.ts +6 -5
  105. package/script/src/signing/_signTypedData/private_key.d.ts.map +1 -1
  106. package/script/src/signing/_signTypedData/private_key.js +40 -18
  107. package/script/src/signing/_signTypedData/viem.d.ts +27 -6
  108. package/script/src/signing/_signTypedData/viem.d.ts.map +1 -1
  109. package/script/src/signing/_signTypedData/viem.js +2 -2
  110. package/script/src/signing/_sorter.d.ts +12 -21
  111. package/script/src/signing/_sorter.d.ts.map +1 -1
  112. package/script/src/signing/_sorter.js +30 -63
  113. package/script/src/signing/mod.d.ts +177 -127
  114. package/script/src/signing/mod.d.ts.map +1 -1
  115. package/script/src/signing/mod.js +185 -148
  116. package/script/src/transports/base.d.ts +2 -1
  117. package/script/src/transports/base.d.ts.map +1 -1
  118. package/script/src/transports/http/http_transport.d.ts +3 -2
  119. package/script/src/transports/http/http_transport.d.ts.map +1 -1
  120. package/script/src/transports/http/http_transport.js +4 -4
  121. package/script/src/transports/websocket/_hyperliquid_event_target.d.ts +14 -6
  122. package/script/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
  123. package/script/src/transports/websocket/_hyperliquid_event_target.js +1 -2
  124. package/script/src/transports/websocket/_reconnecting_websocket.d.ts +2 -1
  125. package/script/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
  126. package/script/src/transports/websocket/_reconnecting_websocket.js +1 -0
  127. package/script/src/transports/websocket/_websocket_async_request.d.ts.map +1 -1
  128. package/script/src/transports/websocket/_websocket_async_request.js +17 -21
  129. package/script/src/transports/websocket/websocket_transport.d.ts +4 -4
  130. package/script/src/transports/websocket/websocket_transport.d.ts.map +1 -1
  131. package/script/src/transports/websocket/websocket_transport.js +6 -6
  132. package/script/src/types/exchange/requests.d.ts +492 -306
  133. package/script/src/types/exchange/requests.d.ts.map +1 -1
  134. package/script/src/types/exchange/responses.d.ts +105 -25
  135. package/script/src/types/exchange/responses.d.ts.map +1 -1
  136. package/script/src/types/explorer/requests.d.ts +3 -3
  137. package/script/src/types/explorer/requests.d.ts.map +1 -1
  138. package/script/src/types/explorer/responses.d.ts +1 -1
  139. package/script/src/types/explorer/responses.d.ts.map +1 -1
  140. package/script/src/types/info/accounts.d.ts +403 -98
  141. package/script/src/types/info/accounts.d.ts.map +1 -1
  142. package/script/src/types/info/assets.d.ts +131 -35
  143. package/script/src/types/info/assets.d.ts.map +1 -1
  144. package/script/src/types/info/markets.d.ts +35 -8
  145. package/script/src/types/info/markets.d.ts.map +1 -1
  146. package/script/src/types/info/orders.d.ts +62 -17
  147. package/script/src/types/info/orders.d.ts.map +1 -1
  148. package/script/src/types/info/requests.d.ts +194 -76
  149. package/script/src/types/info/requests.d.ts.map +1 -1
  150. package/{esm/src/types/info/delegations.d.ts → script/src/types/info/validators.d.ts} +45 -15
  151. package/script/src/types/info/validators.d.ts.map +1 -0
  152. package/script/src/types/info/vaults.d.ts +32 -10
  153. package/script/src/types/info/vaults.d.ts.map +1 -1
  154. package/script/src/types/mod.d.ts +2 -2
  155. package/script/src/types/mod.d.ts.map +1 -1
  156. package/script/src/types/subscriptions/requests.d.ts +21 -66
  157. package/script/src/types/subscriptions/requests.d.ts.map +1 -1
  158. package/script/src/types/subscriptions/responses.d.ts +46 -55
  159. package/script/src/types/subscriptions/responses.d.ts.map +1 -1
  160. package/esm/src/signing/_signTypedData/window.d.ts +0 -29
  161. package/esm/src/signing/_signTypedData/window.d.ts.map +0 -1
  162. package/esm/src/signing/_signTypedData/window.js +0 -30
  163. package/esm/src/types/info/delegations.d.ts.map +0 -1
  164. package/script/src/signing/_signTypedData/window.d.ts +0 -29
  165. package/script/src/signing/_signTypedData/window.d.ts.map +0 -1
  166. package/script/src/signing/_signTypedData/window.js +0 -34
  167. package/script/src/types/info/delegations.d.ts.map +0 -1
  168. /package/esm/src/types/info/{delegations.js → validators.js} +0 -0
  169. /package/script/src/types/info/{delegations.js → validators.js} +0 -0
@@ -1,24 +1,39 @@
1
- import type { Hex } from "../../base.js";
1
+ import type { Hex } from "../mod.js";
2
+ /**
3
+ * Request user active asset data.
4
+ * @returns {ActiveAssetData}
5
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-users-active-asset-data
6
+ */
7
+ export interface ActiveAssetDataRequest {
8
+ /** Type of request. */
9
+ type: "activeAssetData";
10
+ /** Asset symbol (e.g., BTC). */
11
+ coin: string;
12
+ /** User address. */
13
+ user: Hex;
14
+ }
2
15
  /**
3
16
  * Request mid coin prices.
4
17
  * @returns {AllMids}
18
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-mids-for-all-coins
5
19
  */
6
20
  export interface AllMidsRequest {
7
21
  /** Type of request. */
8
22
  type: "allMids";
9
- /** Name of perp dex. */
23
+ /** DEX name (empty string for main dex). */
10
24
  dex?: string;
11
25
  }
12
26
  /**
13
27
  * Request candlestick snapshots.
14
28
  * @returns {Candle[]}
29
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#candle-snapshot
15
30
  */
16
31
  export interface CandleSnapshotRequest {
17
32
  /** Type of request. */
18
33
  type: "candleSnapshot";
19
34
  /** Request parameters. */
20
35
  req: {
21
- /** Asset symbol. */
36
+ /** Asset symbol (e.g., BTC). */
22
37
  coin: string;
23
38
  /** Time interval. */
24
39
  interval: "1m" | "3m" | "5m" | "15m" | "30m" | "1h" | "2h" | "4h" | "8h" | "12h" | "1d" | "3d" | "1w" | "1M";
@@ -31,83 +46,100 @@ export interface CandleSnapshotRequest {
31
46
  /**
32
47
  * Request clearinghouse state.
33
48
  * @returns {PerpsClearinghouseState}
49
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-users-perpetuals-account-summary
34
50
  */
35
51
  export interface ClearinghouseStateRequest {
36
52
  /** Type of request. */
37
53
  type: "clearinghouseState";
38
- /** User's address. */
54
+ /** User address. */
39
55
  user: Hex;
40
56
  }
41
57
  /**
42
58
  * Request user staking delegations.
43
59
  * @returns {Delegation[]}
60
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-delegations
44
61
  */
45
62
  export interface DelegationsRequest {
46
63
  /** Type of request. */
47
64
  type: "delegations";
48
- /** User's address. */
65
+ /** User address. */
49
66
  user: Hex;
50
67
  }
51
68
  /**
52
69
  * Request user staking history.
53
70
  * @returns {DelegatorUpdate[]}
71
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-history
54
72
  */
55
73
  export interface DelegatorHistoryRequest {
56
74
  /** Type of request. */
57
75
  type: "delegatorHistory";
58
- /** User's address. */
76
+ /** User address. */
59
77
  user: Hex;
60
78
  }
61
79
  /**
62
80
  * Request user staking rewards.
63
81
  * @returns {DelegatorReward[]}
82
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-rewards
64
83
  */
65
84
  export interface DelegatorRewardsRequest {
66
85
  /** Type of request. */
67
86
  type: "delegatorRewards";
68
- /** User's address. */
87
+ /** User address. */
69
88
  user: Hex;
70
89
  }
71
90
  /**
72
91
  * Request user staking summary.
73
92
  * @returns {DelegatorSummary}
93
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
74
94
  */
75
95
  export interface DelegatorSummaryRequest {
76
96
  /** Type of request. */
77
97
  type: "delegatorSummary";
78
- /** User's address. */
98
+ /** User address. */
79
99
  user: Hex;
80
100
  }
81
101
  /**
82
- * Request user's extra agents.
102
+ * Request exchange status information.
103
+ * @returns {ExchangeStatus}
104
+ * @see null
105
+ */
106
+ export interface ExchangeStatusRequest {
107
+ /** Type of request. */
108
+ type: "exchangeStatus";
109
+ }
110
+ /**
111
+ * Request user extra agents.
83
112
  * @returns {ExtraAgent[]}
113
+ * @see null
84
114
  */
85
115
  export interface ExtraAgentsRequest {
86
116
  /** Type of request. */
87
117
  type: "extraAgents";
88
- /** User's address. */
118
+ /** User address. */
89
119
  user: Hex;
90
120
  }
91
121
  /**
92
122
  * Request frontend open orders.
93
123
  * @returns {FrontendOrder[]}
124
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-open-orders-with-additional-frontend-info
94
125
  */
95
126
  export interface FrontendOpenOrdersRequest {
96
127
  /** Type of request. */
97
128
  type: "frontendOpenOrders";
98
- /** User's address. */
129
+ /** User address. */
99
130
  user: Hex;
100
- /** Name of perp dex. */
131
+ /** DEX name (empty string for main dex). */
101
132
  dex?: string;
102
133
  }
103
134
  /**
104
135
  * Request funding history.
105
136
  * @returns {FundingHistory[]}
137
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-historical-funding-rates
106
138
  */
107
139
  export interface FundingHistoryRequest {
108
140
  /** Type of request. */
109
141
  type: "fundingHistory";
110
- /** Asset symbol. */
142
+ /** Asset symbol (e.g., BTC). */
111
143
  coin: string;
112
144
  /** Start time (in ms since epoch). */
113
145
  startTime: number;
@@ -117,104 +149,154 @@ export interface FundingHistoryRequest {
117
149
  /**
118
150
  * Request user historical orders.
119
151
  * @returns {OrderStatus<FrontendOrder>[]}
152
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-historical-orders
120
153
  */
121
154
  export interface HistoricalOrdersRequest {
122
155
  /** Type of request. */
123
156
  type: "historicalOrders";
124
- /** User's address. */
157
+ /** User address. */
125
158
  user: Hex;
126
159
  }
127
160
  /**
128
161
  * Request to check if a user is a VIP.
129
- * @returns {boolean}
162
+ * @returns {boolean | null}
163
+ * @see null
130
164
  */
131
165
  export interface IsVipRequest {
132
166
  /** Type of request. */
133
167
  type: "isVip";
134
- /** User's address. */
168
+ /** User address. */
135
169
  user: Hex;
136
170
  }
137
171
  /**
138
172
  * Request L2 order book.
139
173
  * @returns {Book}
174
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#l2-book-snapshot
140
175
  */
141
176
  export interface L2BookRequest {
142
177
  /** Type of request. */
143
178
  type: "l2Book";
144
- /** Asset symbol. */
179
+ /** Asset symbol (e.g., BTC). */
145
180
  coin: string;
146
181
  /** Number of significant figures. */
147
182
  nSigFigs?: 2 | 3 | 4 | 5 | null;
148
183
  /** Mantissa for aggregation (if {@link nSigFigs} is 5). */
149
184
  mantissa?: 2 | 5 | null;
150
185
  }
186
+ /**
187
+ * Request leading vaults for a user.
188
+ * @returns {VaultLeading[]}
189
+ * @see null
190
+ */
191
+ export interface LeadingVaultsRequest {
192
+ /** Type of request. */
193
+ type: "leadingVaults";
194
+ /** User address. */
195
+ user: Hex;
196
+ }
151
197
  /**
152
198
  * Request legal verification status of a user.
153
199
  * @returns {LegalCheck}
200
+ * @see null
154
201
  */
155
202
  export interface LegalCheckRequest {
156
203
  /** Type of request. */
157
204
  type: "legalCheck";
158
- /** User's address. */
205
+ /** User address. */
159
206
  user: Hex;
160
207
  }
208
+ /**
209
+ * Request liquidatable.
210
+ * @returns {unknown[]} FIXME: Define the return type
211
+ * @see null
212
+ */
213
+ export interface LiquidatableRequest {
214
+ /** Type of request. */
215
+ type: "liquidatable";
216
+ }
217
+ /**
218
+ * Request margin table data.
219
+ * @returns {MarginTable}
220
+ * @see null
221
+ */
222
+ export interface MarginTableRequest {
223
+ /** Type of request. */
224
+ type: "marginTable";
225
+ /** Margin requirements table. */
226
+ id: number;
227
+ }
161
228
  /**
162
229
  * Request builder fee approval.
163
230
  * @returns {number}
231
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#check-builder-fee-approval
164
232
  */
165
233
  export interface MaxBuilderFeeRequest {
166
234
  /** Type of request. */
167
235
  type: "maxBuilderFee";
168
- /** User's address. */
236
+ /** User address. */
169
237
  user: Hex;
170
238
  /** Builder address. */
171
239
  builder: Hex;
172
240
  }
173
241
  /**
174
- * Request metadata and asset contexts.
175
- * @returns {PerpsMetaAndAssetCtxs}
242
+ * Request maximum market order notionals.
243
+ * @returns {[number, string][]}
244
+ * @see null
176
245
  */
177
- export interface MetaAndAssetCtxsRequest {
246
+ export interface MaxMarketOrderNtlsRequest {
178
247
  /** Type of request. */
179
- type: "metaAndAssetCtxs";
248
+ type: "maxMarketOrderNtls";
180
249
  }
181
250
  /**
182
251
  * Request trading metadata.
183
252
  * @returns {PerpsMeta}
253
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-perpetuals-metadata-universe-and-margin-tables
184
254
  */
185
255
  export interface MetaRequest {
186
256
  /** Type of request. */
187
257
  type: "meta";
188
- /** Name of perp dex. */
258
+ /** DEX name (empty string for main dex). */
189
259
  dex?: string;
190
260
  }
261
+ /**
262
+ * Request metadata and asset contexts.
263
+ * @returns {PerpsMetaAndAssetCtxs}
264
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-perpetuals-asset-contexts-includes-mark-price-current-funding-open-interest-etc
265
+ */
266
+ export interface MetaAndAssetCtxsRequest {
267
+ /** Type of request. */
268
+ type: "metaAndAssetCtxs";
269
+ }
191
270
  /**
192
271
  * Request open orders.
193
272
  * @returns {Order[]}
273
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-open-orders
194
274
  */
195
275
  export interface OpenOrdersRequest {
196
276
  /** Type of request. */
197
277
  type: "openOrders";
198
- /** User's address. */
278
+ /** User address. */
199
279
  user: Hex;
200
- /** Name of perp dex. */
280
+ /** DEX name (empty string for main dex). */
201
281
  dex?: string;
202
282
  }
203
283
  /**
204
284
  * Request order status.
205
285
  * @returns {OrderLookup}
286
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-order-status-by-oid-or-cloid
206
287
  */
207
288
  export interface OrderStatusRequest {
208
289
  /** Type of request. */
209
290
  type: "orderStatus";
210
- /** User's address. */
291
+ /** User address. */
211
292
  user: Hex;
212
- /** Order ID or client order ID. */
293
+ /** Order ID or Client Order ID. */
213
294
  oid: number | Hex;
214
295
  }
215
296
  /**
216
297
  * Request for the status of the perpetual deploy auction.
217
298
  * @returns {DeployAuctionStatus}
299
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-information-about-the-perp-deploy-auction
218
300
  */
219
301
  export interface PerpDeployAuctionStatusRequest {
220
302
  /** Type of request. */
@@ -223,6 +305,7 @@ export interface PerpDeployAuctionStatusRequest {
223
305
  /**
224
306
  * Request all perpetual dexs.
225
307
  * @returns {PerpDexs}
308
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-all-perpetual-dexs
226
309
  */
227
310
  export interface PerpDexsRequest {
228
311
  /** Type of request. */
@@ -231,6 +314,7 @@ export interface PerpDexsRequest {
231
314
  /**
232
315
  * Request perpetuals at open interest cap.
233
316
  * @returns {string[]}
317
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#query-perps-at-open-interest-caps
234
318
  */
235
319
  export interface PerpsAtOpenInterestCapRequest {
236
320
  /** Type of request. */
@@ -239,29 +323,32 @@ export interface PerpsAtOpenInterestCapRequest {
239
323
  /**
240
324
  * Request user portfolio.
241
325
  * @returns {PortfolioPeriods}
326
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-portfolio
242
327
  */
243
328
  export interface PortfolioRequest {
244
329
  /** Type of request. */
245
330
  type: "portfolio";
246
- /** User's address. */
331
+ /** User address. */
247
332
  user: Hex;
248
333
  }
249
334
  /**
250
335
  * Request predicted funding rates.
251
336
  * @returns {PredictedFunding[]}
337
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-predicted-funding-rates-for-different-venues
252
338
  */
253
339
  export interface PredictedFundingsRequest {
254
340
  /** Type of request. */
255
341
  type: "predictedFundings";
256
342
  }
257
343
  /**
258
- * Request user's existence check before transfer.
344
+ * Request user existence check before transfer.
259
345
  * @returns {PreTransferCheck}
346
+ * @see null
260
347
  */
261
348
  export interface PreTransferCheckRequest {
262
349
  /** Type of request. */
263
350
  type: "preTransferCheck";
264
- /** Destination address. */
351
+ /** User address. */
265
352
  user: Hex;
266
353
  /** Source address. */
267
354
  source: Hex;
@@ -269,64 +356,71 @@ export interface PreTransferCheckRequest {
269
356
  /**
270
357
  * Request user referral.
271
358
  * @returns {Referral}
359
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-referral-information
272
360
  */
273
361
  export interface ReferralRequest {
274
362
  /** Type of request. */
275
363
  type: "referral";
276
- /** User's address. */
364
+ /** User address. */
277
365
  user: Hex;
278
366
  }
279
367
  /**
280
368
  * Request spot clearinghouse state.
281
369
  * @returns {SpotClearinghouseState}
370
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-a-users-token-balances
282
371
  */
283
372
  export interface SpotClearinghouseStateRequest {
284
373
  /** Type of request. */
285
374
  type: "spotClearinghouseState";
286
- /** User's address. */
375
+ /** User address. */
287
376
  user: Hex;
288
- /** Name of perp dex. */
377
+ /** DEX name (empty string for main dex). */
289
378
  dex?: string;
290
379
  }
291
380
  /**
292
381
  * Request spot deploy state.
293
382
  * @returns {SpotDeployState}
383
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-information-about-the-spot-deploy-auction
294
384
  */
295
385
  export interface SpotDeployStateRequest {
296
386
  /** Type of request. */
297
387
  type: "spotDeployState";
298
- /** User's address. */
388
+ /** User address. */
299
389
  user: Hex;
300
390
  }
301
- /**
302
- * Request spot metadata and asset contexts.
303
- * @returns {SpotMetaAndAssetCtxs}
304
- */
305
- export interface SpotMetaAndAssetCtxsRequest {
306
- /** Type of request. */
307
- type: "spotMetaAndAssetCtxs";
308
- }
309
391
  /**
310
392
  * Request spot trading metadata.
311
393
  * @returns {SpotMeta}
394
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-spot-metadata
312
395
  */
313
396
  export interface SpotMetaRequest {
314
397
  /** Type of request. */
315
398
  type: "spotMeta";
316
399
  }
400
+ /**
401
+ * Request spot metadata and asset contexts.
402
+ * @returns {SpotMetaAndAssetCtxs}
403
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-spot-asset-contexts
404
+ */
405
+ export interface SpotMetaAndAssetCtxsRequest {
406
+ /** Type of request. */
407
+ type: "spotMetaAndAssetCtxs";
408
+ }
317
409
  /**
318
410
  * Request user sub-accounts.
319
411
  * @returns {SubAccount[] | null}
412
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-subaccounts
320
413
  */
321
414
  export interface SubAccountsRequest {
322
415
  /** Type of request. */
323
416
  type: "subAccounts";
324
- /** User's address. */
417
+ /** User address. */
325
418
  user: Hex;
326
419
  }
327
420
  /**
328
421
  * Request token details.
329
422
  * @returns {TokenDetails}
423
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-information-about-a-token
330
424
  */
331
425
  export interface TokenDetailsRequest {
332
426
  /** Type of request. */
@@ -337,59 +431,64 @@ export interface TokenDetailsRequest {
337
431
  /**
338
432
  * Request twap history of a user.
339
433
  * @returns {TwapHistory[]}
434
+ * @see null
340
435
  */
341
436
  export interface TwapHistoryRequest {
342
437
  /** Type of request. */
343
438
  type: "twapHistory";
344
- /** User's address. */
439
+ /** User address. */
345
440
  user: Hex;
346
441
  }
347
442
  /**
348
443
  * Request user fees.
349
444
  * @returns {UserFees}
445
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-fees
350
446
  */
351
447
  export interface UserFeesRequest {
352
448
  /** Type of request. */
353
449
  type: "userFees";
354
- /** User's address. */
450
+ /** User address. */
355
451
  user: Hex;
356
452
  }
357
453
  /**
358
- * Request user fills by time.
454
+ * Request user fills.
359
455
  * @returns {Fill[]}
456
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-fills
360
457
  */
361
- export interface UserFillsByTimeRequest {
458
+ export interface UserFillsRequest {
362
459
  /** Type of request. */
363
- type: "userFillsByTime";
364
- /** User's address. */
460
+ type: "userFills";
461
+ /** User address. */
365
462
  user: Hex;
366
- /** Start time (in ms since epoch). */
367
- startTime: number;
368
- /** End time (in ms since epoch). */
369
- endTime?: number | null;
370
463
  /** If true, partial fills are aggregated when a crossing order fills multiple resting orders. */
371
464
  aggregateByTime?: boolean;
372
465
  }
373
466
  /**
374
- * Request user fills.
467
+ * Request user fills by time.
375
468
  * @returns {Fill[]}
469
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-fills-by-time
376
470
  */
377
- export interface UserFillsRequest {
471
+ export interface UserFillsByTimeRequest {
378
472
  /** Type of request. */
379
- type: "userFills";
380
- /** User's address. */
473
+ type: "userFillsByTime";
474
+ /** User address. */
381
475
  user: Hex;
476
+ /** Start time (in ms since epoch). */
477
+ startTime: number;
478
+ /** End time (in ms since epoch). */
479
+ endTime?: number | null;
382
480
  /** If true, partial fills are aggregated when a crossing order fills multiple resting orders. */
383
481
  aggregateByTime?: boolean;
384
482
  }
385
483
  /**
386
484
  * Request user funding.
387
485
  * @returns {UserFundingUpdate[]}
486
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-a-users-funding-history-or-non-funding-ledger-updates
388
487
  */
389
488
  export interface UserFundingRequest {
390
489
  /** Type of request. */
391
490
  type: "userFunding";
392
- /** User's address. */
491
+ /** User address. */
393
492
  user: Hex;
394
493
  /** Start time (in ms since epoch). */
395
494
  startTime: number;
@@ -399,11 +498,12 @@ export interface UserFundingRequest {
399
498
  /**
400
499
  * Request user non-funding ledger updates.
401
500
  * @returns {UserNonFundingLedgerUpdate[]}
501
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-a-users-funding-history-or-non-funding-ledger-updates
402
502
  */
403
503
  export interface UserNonFundingLedgerUpdatesRequest {
404
504
  /** Type of request. */
405
505
  type: "userNonFundingLedgerUpdates";
406
- /** User's address. */
506
+ /** User address. */
407
507
  user: Hex;
408
508
  /** Start time (in ms since epoch). */
409
509
  startTime: number;
@@ -413,41 +513,56 @@ export interface UserNonFundingLedgerUpdatesRequest {
413
513
  /**
414
514
  * Request user rate limits.
415
515
  * @returns {UserRateLimit}
516
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-user-rate-limits
416
517
  */
417
518
  export interface UserRateLimitRequest {
418
519
  /** Type of request. */
419
520
  type: "userRateLimit";
420
- /** User's address. */
521
+ /** User address. */
421
522
  user: Hex;
422
523
  }
423
524
  /**
424
525
  * Request user role.
425
526
  * @returns {UserRole}
527
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-role
426
528
  */
427
529
  export interface UserRoleRequest {
428
530
  /** Type of request. */
429
531
  type: "userRole";
430
- /** User's address. */
532
+ /** User address. */
431
533
  user: Hex;
432
534
  }
433
535
  /**
434
536
  * Request multi-sig signers for a user.
435
537
  * @returns {MultiSigSigners | null}
538
+ * @see null
436
539
  */
437
540
  export interface UserToMultiSigSignersRequest {
438
541
  /** Type of request. */
439
542
  type: "userToMultiSigSigners";
440
- /** User's address. */
543
+ /** User address. */
544
+ user: Hex;
545
+ }
546
+ /**
547
+ * Request user TWAP slice fills.
548
+ * @returns {TwapSliceFill[]}
549
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-twap-slice-fills
550
+ */
551
+ export interface UserTwapSliceFillsRequest {
552
+ /** Type of request. */
553
+ type: "userTwapSliceFills";
554
+ /** User address. */
441
555
  user: Hex;
442
556
  }
443
557
  /**
444
558
  * Request user TWAP slice fills by time.
445
559
  * @returns {TwapSliceFill[]}
560
+ * @see null
446
561
  */
447
562
  export interface UserTwapSliceFillsByTimeRequest {
448
563
  /** Type of request. */
449
564
  type: "userTwapSliceFillsByTime";
450
- /** User's address. */
565
+ /** User address. */
451
566
  user: Hex;
452
567
  /** Start time (in ms since epoch). */
453
568
  startTime: number;
@@ -456,29 +571,30 @@ export interface UserTwapSliceFillsByTimeRequest {
456
571
  /** If true, partial fills are aggregated when a crossing order fills multiple resting orders. */
457
572
  aggregateByTime?: boolean;
458
573
  }
459
- /**
460
- * Request user TWAP slice fills.
461
- * @returns {TwapSliceFill[]}
462
- */
463
- export interface UserTwapSliceFillsRequest {
464
- /** Type of request. */
465
- type: "userTwapSliceFills";
466
- /** User's address. */
467
- user: Hex;
468
- }
469
574
  /**
470
575
  * Request user vault deposits.
471
576
  * @returns {VaultEquity[]}
577
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-vault-deposits
472
578
  */
473
579
  export interface UserVaultEquitiesRequest {
474
580
  /** Type of request. */
475
581
  type: "userVaultEquities";
476
- /** User's address. */
582
+ /** User address. */
477
583
  user: Hex;
478
584
  }
585
+ /**
586
+ * Request validator L1 votes.
587
+ * @returns {unknown[]} FIXME: Define the return type
588
+ * @see null
589
+ */
590
+ export interface ValidatorL1VotesRequest {
591
+ /** Type of request. */
592
+ type: "validatorL1Votes";
593
+ }
479
594
  /**
480
595
  * Request validator summaries.
481
596
  * @returns {ValidatorSummary[]}
597
+ * @see null
482
598
  */
483
599
  export interface ValidatorSummariesRequest {
484
600
  /** Type of request. */
@@ -487,18 +603,20 @@ export interface ValidatorSummariesRequest {
487
603
  /**
488
604
  * Request details of a vault.
489
605
  * @returns {VaultDetails | null}
606
+ * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-details-for-a-vault
490
607
  */
491
608
  export interface VaultDetailsRequest {
492
609
  /** Type of request. */
493
610
  type: "vaultDetails";
494
611
  /** Vault address. */
495
612
  vaultAddress: Hex;
496
- /** User's address. */
613
+ /** User address. */
497
614
  user?: Hex | null;
498
615
  }
499
616
  /**
500
617
  * Request a list of vaults less than 2 hours old.
501
618
  * @returns {VaultSummary[]}
619
+ * @see null
502
620
  */
503
621
  export interface VaultSummariesRequest {
504
622
  /** Type of request. */