@nktkas/hyperliquid 0.22.2 → 0.23.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.
- package/README.md +79 -67
- package/esm/mod.d.ts +1 -1
- package/esm/mod.d.ts.map +1 -1
- package/esm/src/base.d.ts +4 -1
- package/esm/src/base.d.ts.map +1 -1
- package/esm/src/base.js +2 -2
- package/esm/src/clients/exchange.d.ts +289 -207
- package/esm/src/clients/exchange.d.ts.map +1 -1
- package/esm/src/clients/exchange.js +605 -410
- package/esm/src/clients/info.d.ts +264 -48
- package/esm/src/clients/info.d.ts.map +1 -1
- package/esm/src/clients/info.js +273 -31
- package/esm/src/clients/multiSign.d.ts +285 -204
- package/esm/src/clients/multiSign.d.ts.map +1 -1
- package/esm/src/clients/multiSign.js +521 -493
- package/esm/src/clients/subscription.d.ts +38 -3
- package/esm/src/clients/subscription.d.ts.map +1 -1
- package/esm/src/clients/subscription.js +36 -3
- package/esm/src/signing/{_ethers.d.ts → _signTypedData/ethers.d.ts} +1 -1
- package/esm/src/signing/_signTypedData/ethers.d.ts.map +1 -0
- package/esm/src/signing/_signTypedData/mod.d.ts +35 -0
- package/esm/src/signing/_signTypedData/mod.d.ts.map +1 -0
- package/esm/src/signing/_signTypedData/mod.js +59 -0
- package/esm/src/signing/_signTypedData/private_key.d.ts +26 -0
- package/esm/src/signing/_signTypedData/private_key.d.ts.map +1 -0
- package/esm/src/signing/_signTypedData/private_key.js +144 -0
- package/esm/src/signing/{_viem.d.ts → _signTypedData/viem.d.ts} +2 -2
- package/esm/src/signing/_signTypedData/viem.d.ts.map +1 -0
- package/{script/src/signing/_window.d.ts → esm/src/signing/_signTypedData/window.d.ts} +18 -12
- package/esm/src/signing/_signTypedData/window.d.ts.map +1 -0
- package/esm/src/signing/{_window.js → _signTypedData/window.js} +3 -2
- package/esm/src/signing/_sorter.d.ts +56 -82
- package/esm/src/signing/_sorter.d.ts.map +1 -1
- package/esm/src/signing/_sorter.js +36 -49
- package/esm/src/signing/mod.d.ts +151 -130
- package/esm/src/signing/mod.d.ts.map +1 -1
- package/esm/src/signing/mod.js +182 -228
- package/esm/src/transports/base.d.ts +1 -1
- package/esm/src/transports/base.d.ts.map +1 -1
- package/esm/src/transports/base.js +2 -2
- package/esm/src/transports/http/http_transport.d.ts +9 -15
- package/esm/src/transports/http/http_transport.d.ts.map +1 -1
- package/esm/src/transports/http/http_transport.js +64 -59
- package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts +1 -1
- package/esm/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
- package/esm/src/transports/websocket/_hyperliquid_event_target.js +1 -1
- package/esm/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
- package/esm/src/transports/websocket/_reconnecting_websocket.js +17 -4
- package/esm/src/transports/websocket/_websocket_async_request.d.ts +0 -9
- package/esm/src/transports/websocket/_websocket_async_request.d.ts.map +1 -1
- package/esm/src/transports/websocket/_websocket_async_request.js +14 -20
- package/esm/src/transports/websocket/websocket_transport.d.ts +8 -4
- package/esm/src/transports/websocket/websocket_transport.d.ts.map +1 -1
- package/esm/src/transports/websocket/websocket_transport.js +83 -54
- package/esm/src/types/exchange/requests.d.ts +27 -51
- package/esm/src/types/exchange/requests.d.ts.map +1 -1
- package/esm/src/types/explorer/requests.d.ts +5 -8
- package/esm/src/types/explorer/requests.d.ts.map +1 -1
- package/esm/src/types/info/accounts.d.ts +5 -5
- package/esm/src/types/info/accounts.d.ts.map +1 -1
- package/esm/src/types/info/markets.d.ts +6 -0
- package/esm/src/types/info/markets.d.ts.map +1 -1
- package/esm/src/types/info/orders.d.ts +1 -1
- package/esm/src/types/info/orders.d.ts.map +1 -1
- package/esm/src/types/info/requests.d.ts +129 -124
- package/esm/src/types/info/requests.d.ts.map +1 -1
- package/{script/src/types/info/delegations.d.ts → esm/src/types/info/validators.d.ts} +2 -2
- package/esm/src/types/info/validators.d.ts.map +1 -0
- package/esm/src/types/info/vaults.d.ts +7 -0
- package/esm/src/types/info/vaults.d.ts.map +1 -1
- package/esm/src/types/mod.d.ts +1 -1
- package/esm/src/types/mod.d.ts.map +1 -1
- package/esm/src/types/subscriptions/requests.d.ts +72 -18
- package/esm/src/types/subscriptions/requests.d.ts.map +1 -1
- package/esm/src/types/subscriptions/responses.d.ts +2 -0
- package/esm/src/types/subscriptions/responses.d.ts.map +1 -1
- package/package.json +8 -5
- package/script/mod.d.ts +1 -1
- package/script/mod.d.ts.map +1 -1
- package/script/mod.js +13 -23
- package/script/src/base.d.ts +4 -1
- package/script/src/base.d.ts.map +1 -1
- package/script/src/base.js +10 -20
- package/script/src/clients/exchange.d.ts +289 -207
- package/script/src/clients/exchange.d.ts.map +1 -1
- package/script/src/clients/exchange.js +2000 -1815
- package/script/src/clients/info.d.ts +264 -48
- package/script/src/clients/info.d.ts.map +1 -1
- package/script/src/clients/info.js +1442 -1210
- package/script/src/clients/multiSign.d.ts +285 -204
- package/script/src/clients/multiSign.d.ts.map +1 -1
- package/script/src/clients/multiSign.js +2043 -2025
- package/script/src/clients/subscription.d.ts +38 -3
- package/script/src/clients/subscription.d.ts.map +1 -1
- package/script/src/clients/subscription.js +568 -545
- package/script/src/signing/{_ethers.d.ts → _signTypedData/ethers.d.ts} +1 -1
- package/script/src/signing/_signTypedData/ethers.d.ts.map +1 -0
- package/script/src/signing/_signTypedData/ethers.js +16 -0
- package/script/src/signing/_signTypedData/mod.d.ts +35 -0
- package/script/src/signing/_signTypedData/mod.d.ts.map +1 -0
- package/script/src/signing/_signTypedData/mod.js +67 -0
- package/script/src/signing/_signTypedData/private_key.d.ts +26 -0
- package/script/src/signing/_signTypedData/private_key.d.ts.map +1 -0
- package/script/src/signing/_signTypedData/private_key.js +148 -0
- package/script/src/signing/{_viem.d.ts → _signTypedData/viem.d.ts} +2 -2
- package/script/src/signing/_signTypedData/viem.d.ts.map +1 -0
- package/script/src/signing/_signTypedData/viem.js +9 -0
- package/{esm/src/signing/_window.d.ts → script/src/signing/_signTypedData/window.d.ts} +18 -12
- package/script/src/signing/_signTypedData/window.d.ts.map +1 -0
- package/script/src/signing/_signTypedData/window.js +34 -0
- package/script/src/signing/_sorter.d.ts +56 -82
- package/script/src/signing/_sorter.d.ts.map +1 -1
- package/script/src/signing/_sorter.js +655 -678
- package/script/src/signing/mod.d.ts +151 -130
- package/script/src/signing/mod.d.ts.map +1 -1
- package/script/src/signing/mod.js +286 -342
- package/script/src/transports/base.d.ts +1 -1
- package/script/src/transports/base.d.ts.map +1 -1
- package/script/src/transports/base.js +11 -21
- package/script/src/transports/http/http_transport.d.ts +9 -15
- package/script/src/transports/http/http_transport.d.ts.map +1 -1
- package/script/src/transports/http/http_transport.js +97 -102
- package/script/src/transports/websocket/_hyperliquid_event_target.d.ts +1 -1
- package/script/src/transports/websocket/_hyperliquid_event_target.d.ts.map +1 -1
- package/script/src/transports/websocket/_hyperliquid_event_target.js +51 -61
- package/script/src/transports/websocket/_reconnecting_websocket.d.ts.map +1 -1
- package/script/src/transports/websocket/_reconnecting_websocket.js +271 -268
- package/script/src/transports/websocket/_websocket_async_request.d.ts +0 -9
- package/script/src/transports/websocket/_websocket_async_request.d.ts.map +1 -1
- package/script/src/transports/websocket/_websocket_async_request.js +157 -174
- package/script/src/transports/websocket/websocket_transport.d.ts +8 -4
- package/script/src/transports/websocket/websocket_transport.d.ts.map +1 -1
- package/script/src/transports/websocket/websocket_transport.js +209 -189
- package/script/src/types/exchange/requests.d.ts +27 -51
- package/script/src/types/exchange/requests.d.ts.map +1 -1
- package/script/src/types/exchange/requests.js +2 -12
- package/script/src/types/exchange/responses.js +2 -12
- package/script/src/types/explorer/requests.d.ts +5 -8
- package/script/src/types/explorer/requests.d.ts.map +1 -1
- package/script/src/types/explorer/requests.js +2 -12
- package/script/src/types/explorer/responses.js +2 -12
- package/script/src/types/info/accounts.d.ts +5 -5
- package/script/src/types/info/accounts.d.ts.map +1 -1
- package/script/src/types/info/accounts.js +2 -12
- package/script/src/types/info/assets.js +2 -12
- package/script/src/types/info/markets.d.ts +6 -0
- package/script/src/types/info/markets.d.ts.map +1 -1
- package/script/src/types/info/markets.js +2 -12
- package/script/src/types/info/orders.d.ts +1 -1
- package/script/src/types/info/orders.d.ts.map +1 -1
- package/script/src/types/info/orders.js +2 -12
- package/script/src/types/info/requests.d.ts +129 -124
- package/script/src/types/info/requests.d.ts.map +1 -1
- package/script/src/types/info/requests.js +2 -12
- package/{esm/src/types/info/delegations.d.ts → script/src/types/info/validators.d.ts} +2 -2
- package/script/src/types/info/validators.d.ts.map +1 -0
- package/script/src/types/info/validators.js +2 -0
- package/script/src/types/info/vaults.d.ts +7 -0
- package/script/src/types/info/vaults.d.ts.map +1 -1
- package/script/src/types/info/vaults.js +2 -12
- package/script/src/types/mod.d.ts +1 -1
- package/script/src/types/mod.d.ts.map +1 -1
- package/script/src/types/mod.js +2 -12
- package/script/src/types/subscriptions/requests.d.ts +72 -18
- package/script/src/types/subscriptions/requests.d.ts.map +1 -1
- package/script/src/types/subscriptions/requests.js +2 -12
- package/script/src/types/subscriptions/responses.d.ts +2 -0
- package/script/src/types/subscriptions/responses.d.ts.map +1 -1
- package/script/src/types/subscriptions/responses.js +2 -12
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.d.ts +0 -2
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.d.ts.map +0 -1
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.js +0 -1
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.d.ts +0 -95
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.d.ts.map +0 -1
- package/esm/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.js +0 -10
- package/esm/deps/jsr.io/@std/async/1.0.13/delay.d.ts +0 -43
- package/esm/deps/jsr.io/@std/async/1.0.13/delay.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/async/1.0.13/delay.js +0 -63
- package/esm/deps/jsr.io/@std/bytes/1.0.6/_types.d.ts +0 -9
- package/esm/deps/jsr.io/@std/bytes/1.0.6/_types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/bytes/1.0.6/_types.js +0 -2
- package/esm/deps/jsr.io/@std/bytes/1.0.6/concat.d.ts +0 -21
- package/esm/deps/jsr.io/@std/bytes/1.0.6/concat.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/bytes/1.0.6/concat.js +0 -32
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts +0 -23
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common16.js +0 -51
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +0 -4
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +0 -13
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +0 -9
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.js +0 -2
- package/esm/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts +0 -39
- package/esm/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/encoding/1.0.10/hex.js +0 -87
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/_types.d.ts +0 -9
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/_types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/_types.js +0 -2
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/encode.d.ts +0 -39
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/encode.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/msgpack/1.0.3/encode.js +0 -237
- package/esm/src/signing/_ethers.d.ts.map +0 -1
- package/esm/src/signing/_private_key.d.ts +0 -22
- package/esm/src/signing/_private_key.d.ts.map +0 -1
- package/esm/src/signing/_private_key.js +0 -124
- package/esm/src/signing/_viem.d.ts.map +0 -1
- package/esm/src/signing/_window.d.ts.map +0 -1
- package/esm/src/types/info/delegations.d.ts.map +0 -1
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.d.ts +0 -2
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.d.ts.map +0 -1
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/mod.js +0 -27
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.d.ts +0 -95
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.d.ts.map +0 -1
- package/script/deps/jsr.io/@derzade/typescript-event-target/1.1.1/src/TypedEventTarget.js +0 -24
- package/script/deps/jsr.io/@std/async/1.0.13/delay.d.ts +0 -43
- package/script/deps/jsr.io/@std/async/1.0.13/delay.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/async/1.0.13/delay.js +0 -76
- package/script/deps/jsr.io/@std/bytes/1.0.6/_types.d.ts +0 -9
- package/script/deps/jsr.io/@std/bytes/1.0.6/_types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/bytes/1.0.6/_types.js +0 -13
- package/script/deps/jsr.io/@std/bytes/1.0.6/concat.d.ts +0 -21
- package/script/deps/jsr.io/@std/bytes/1.0.6/concat.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/bytes/1.0.6/concat.js +0 -45
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts +0 -23
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common16.js +0 -67
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +0 -4
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +0 -26
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +0 -9
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/_types.js +0 -13
- package/script/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts +0 -39
- package/script/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/encoding/1.0.10/hex.js +0 -101
- package/script/deps/jsr.io/@std/msgpack/1.0.3/_types.d.ts +0 -9
- package/script/deps/jsr.io/@std/msgpack/1.0.3/_types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/msgpack/1.0.3/_types.js +0 -13
- package/script/deps/jsr.io/@std/msgpack/1.0.3/encode.d.ts +0 -39
- package/script/deps/jsr.io/@std/msgpack/1.0.3/encode.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/msgpack/1.0.3/encode.js +0 -250
- package/script/src/signing/_ethers.d.ts.map +0 -1
- package/script/src/signing/_ethers.js +0 -26
- package/script/src/signing/_private_key.d.ts +0 -22
- package/script/src/signing/_private_key.d.ts.map +0 -1
- package/script/src/signing/_private_key.js +0 -138
- package/script/src/signing/_viem.d.ts.map +0 -1
- package/script/src/signing/_viem.js +0 -19
- package/script/src/signing/_window.d.ts.map +0 -1
- package/script/src/signing/_window.js +0 -43
- package/script/src/types/info/delegations.d.ts.map +0 -1
- package/script/src/types/info/delegations.js +0 -12
- /package/esm/src/signing/{_ethers.js → _signTypedData/ethers.js} +0 -0
- /package/esm/src/signing/{_viem.js → _signTypedData/viem.js} +0 -0
- /package/esm/src/types/info/{delegations.js → validators.js} +0 -0
|
@@ -1,1215 +1,1447 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InfoClient = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Info client for interacting with the Hyperliquid API.
|
|
6
|
+
* @typeParam T The type of transport used to connect to the Hyperliquid API.
|
|
7
|
+
*/
|
|
8
|
+
class InfoClient {
|
|
9
|
+
transport;
|
|
10
|
+
/**
|
|
11
|
+
* Initialises a new instance.
|
|
12
|
+
* @param args - The arguments for initialisation.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
17
|
+
*
|
|
18
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
19
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
constructor(args) {
|
|
23
|
+
this.transport = args.transport;
|
|
24
|
+
}
|
|
25
|
+
allMids(args_or_signal, maybeSignal) {
|
|
26
|
+
const args = args_or_signal instanceof AbortSignal ? {} : args_or_signal;
|
|
27
|
+
const signal = args_or_signal instanceof AbortSignal ? args_or_signal : maybeSignal;
|
|
28
|
+
const request = {
|
|
29
|
+
type: "allMids",
|
|
30
|
+
...args,
|
|
31
|
+
};
|
|
32
|
+
return this.transport.request("info", request, signal);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Block details by block height.
|
|
36
|
+
* @param args - The parameters for the request.
|
|
37
|
+
* @param signal - An optional abort signal.
|
|
38
|
+
* @returns Block details.
|
|
39
|
+
*
|
|
40
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
41
|
+
*
|
|
42
|
+
* @see null
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
46
|
+
*
|
|
47
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
48
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
49
|
+
*
|
|
50
|
+
* const data = await infoClient.blockDetails({ height: 123 });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
async blockDetails(args, signal) {
|
|
54
|
+
const request = {
|
|
55
|
+
type: "blockDetails",
|
|
56
|
+
...args,
|
|
57
|
+
};
|
|
58
|
+
const { blockDetails } = await this.transport.request("explorer", request, signal);
|
|
59
|
+
return blockDetails;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Request candlestick snapshots.
|
|
63
|
+
* @param args - The parameters for the request.
|
|
64
|
+
* @param signal - An optional abort signal.
|
|
65
|
+
* @returns Array of candlestick data points.
|
|
66
|
+
*
|
|
67
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
68
|
+
*
|
|
69
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#candle-snapshot
|
|
70
|
+
* @example
|
|
71
|
+
* ```ts
|
|
72
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
73
|
+
*
|
|
74
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
75
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
76
|
+
*
|
|
77
|
+
* const data = await infoClient.candleSnapshot({
|
|
78
|
+
* coin: "ETH",
|
|
79
|
+
* interval: "1h",
|
|
80
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
81
|
+
* });
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
candleSnapshot(args, signal) {
|
|
85
|
+
const request = {
|
|
86
|
+
type: "candleSnapshot",
|
|
87
|
+
req: args,
|
|
88
|
+
};
|
|
89
|
+
return this.transport.request("info", request, signal);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Request clearinghouse state.
|
|
93
|
+
* @param args - The parameters for the request.
|
|
94
|
+
* @param signal - An optional abort signal.
|
|
95
|
+
* @returns Account summary for perpetual trading.
|
|
96
|
+
*
|
|
97
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
98
|
+
*
|
|
99
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-users-perpetuals-account-summary
|
|
100
|
+
* @example
|
|
101
|
+
* ```ts
|
|
102
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
103
|
+
*
|
|
104
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
105
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
106
|
+
*
|
|
107
|
+
* const data = await infoClient.clearinghouseState({ user: "0x..." });
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
clearinghouseState(args, signal) {
|
|
111
|
+
const request = {
|
|
112
|
+
type: "clearinghouseState",
|
|
113
|
+
...args,
|
|
114
|
+
};
|
|
115
|
+
return this.transport.request("info", request, signal);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Request user staking delegations.
|
|
119
|
+
* @param args - The parameters for the request.
|
|
120
|
+
* @param signal - An optional abort signal.
|
|
121
|
+
* @returns Array of user's delegations to validators.
|
|
122
|
+
*
|
|
123
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
124
|
+
*
|
|
125
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-delegations
|
|
126
|
+
* @example
|
|
127
|
+
* ```ts
|
|
128
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
129
|
+
*
|
|
130
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
131
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
132
|
+
*
|
|
133
|
+
* const data = await infoClient.delegations({ user: "0x..." });
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
delegations(args, signal) {
|
|
137
|
+
const request = {
|
|
138
|
+
type: "delegations",
|
|
139
|
+
...args,
|
|
140
|
+
};
|
|
141
|
+
return this.transport.request("info", request, signal);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Request user staking history.
|
|
145
|
+
* @param args - The parameters for the request.
|
|
146
|
+
* @param signal - An optional abort signal.
|
|
147
|
+
* @returns Array of user's staking updates.
|
|
148
|
+
*
|
|
149
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
150
|
+
*
|
|
151
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-history
|
|
152
|
+
* @example
|
|
153
|
+
* ```ts
|
|
154
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
155
|
+
*
|
|
156
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
157
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
158
|
+
*
|
|
159
|
+
* const data = await infoClient.delegatorHistory({ user: "0x..." });
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
delegatorHistory(args, signal) {
|
|
163
|
+
const request = {
|
|
164
|
+
type: "delegatorHistory",
|
|
165
|
+
...args,
|
|
166
|
+
};
|
|
167
|
+
return this.transport.request("info", request, signal);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Request user staking rewards.
|
|
171
|
+
* @param args - The parameters for the request.
|
|
172
|
+
* @param signal - An optional abort signal.
|
|
173
|
+
* @returns Array of user's staking rewards.
|
|
174
|
+
*
|
|
175
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
176
|
+
*
|
|
177
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-rewards
|
|
178
|
+
* @example
|
|
179
|
+
* ```ts
|
|
180
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
181
|
+
*
|
|
182
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
183
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
184
|
+
*
|
|
185
|
+
* const data = await infoClient.delegatorRewards({ user: "0x..." });
|
|
186
|
+
* ```
|
|
187
|
+
*/
|
|
188
|
+
delegatorRewards(args, signal) {
|
|
189
|
+
const request = {
|
|
190
|
+
type: "delegatorRewards",
|
|
191
|
+
...args,
|
|
192
|
+
};
|
|
193
|
+
return this.transport.request("info", request, signal);
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Request user staking summary.
|
|
197
|
+
* @param args - The parameters for the request.
|
|
198
|
+
* @param signal - An optional abort signal.
|
|
199
|
+
* @returns Summary of a user's staking delegations.
|
|
200
|
+
*
|
|
201
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
202
|
+
*
|
|
203
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
204
|
+
* @example
|
|
205
|
+
* ```ts
|
|
206
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
207
|
+
*
|
|
208
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
209
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
210
|
+
*
|
|
211
|
+
* const data = await infoClient.delegatorSummary({ user: "0x..." });
|
|
212
|
+
* ```
|
|
213
|
+
*/
|
|
214
|
+
delegatorSummary(args, signal) {
|
|
215
|
+
const request = {
|
|
216
|
+
type: "delegatorSummary",
|
|
217
|
+
...args,
|
|
218
|
+
};
|
|
219
|
+
return this.transport.request("info", request, signal);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Request exchange status information.
|
|
223
|
+
* @param signal - An optional abort signal.
|
|
224
|
+
* @returns Exchange system status information.
|
|
225
|
+
*
|
|
226
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
227
|
+
*
|
|
228
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
229
|
+
* @example
|
|
230
|
+
* ```ts
|
|
231
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
232
|
+
*
|
|
233
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
234
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
235
|
+
*
|
|
236
|
+
* const data = await infoClient.exchangeStatus();
|
|
237
|
+
* ```
|
|
238
|
+
*/
|
|
239
|
+
exchangeStatus(signal) {
|
|
240
|
+
const request = {
|
|
241
|
+
type: "exchangeStatus",
|
|
242
|
+
};
|
|
243
|
+
return this.transport.request("info", request, signal);
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Request user's extra agents.
|
|
247
|
+
* @param args - The parameters for the request.
|
|
248
|
+
* @param signal - An optional abort signal.
|
|
249
|
+
* @returns User's extra agents.
|
|
250
|
+
*
|
|
251
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
252
|
+
*
|
|
253
|
+
* @see null
|
|
254
|
+
* @example
|
|
255
|
+
* ```ts
|
|
256
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
257
|
+
*
|
|
258
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
259
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
260
|
+
*
|
|
261
|
+
* const data = await infoClient.extraAgents({ user: "0x..." });
|
|
262
|
+
* ```
|
|
263
|
+
*/
|
|
264
|
+
extraAgents(args, signal) {
|
|
265
|
+
const request = {
|
|
266
|
+
type: "extraAgents",
|
|
267
|
+
...args,
|
|
268
|
+
};
|
|
269
|
+
return this.transport.request("info", request, signal);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Request frontend open orders.
|
|
273
|
+
* @param args - The parameters for the request.
|
|
274
|
+
* @param signal - An optional abort signal.
|
|
275
|
+
* @returns Array of open orders with additional frontend information.
|
|
276
|
+
*
|
|
277
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
278
|
+
*
|
|
279
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-open-orders-with-additional-frontend-info
|
|
280
|
+
* @example
|
|
281
|
+
* ```ts
|
|
282
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
283
|
+
*
|
|
284
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
285
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
286
|
+
*
|
|
287
|
+
* const data = await infoClient.frontendOpenOrders({ user: "0x..." });
|
|
288
|
+
* ```
|
|
289
|
+
*/
|
|
290
|
+
frontendOpenOrders(args, signal) {
|
|
291
|
+
const request = {
|
|
292
|
+
type: "frontendOpenOrders",
|
|
293
|
+
...args,
|
|
294
|
+
};
|
|
295
|
+
return this.transport.request("info", request, signal);
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Request funding history.
|
|
299
|
+
* @param args - The parameters for the request.
|
|
300
|
+
* @param signal - An optional abort signal.
|
|
301
|
+
* @returns Array of historical funding rate data for an asset.
|
|
302
|
+
*
|
|
303
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
304
|
+
*
|
|
305
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-historical-funding-rates
|
|
306
|
+
* @example
|
|
307
|
+
* ```ts
|
|
308
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
309
|
+
*
|
|
310
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
311
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
312
|
+
*
|
|
313
|
+
* const data = await infoClient.fundingHistory({
|
|
314
|
+
* coin: "ETH",
|
|
315
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
316
|
+
* });
|
|
317
|
+
* ```
|
|
318
|
+
*/
|
|
319
|
+
fundingHistory(args, signal) {
|
|
320
|
+
const request = {
|
|
321
|
+
type: "fundingHistory",
|
|
322
|
+
...args,
|
|
323
|
+
};
|
|
324
|
+
return this.transport.request("info", request, signal);
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Request user's historical orders.
|
|
328
|
+
* @param args - The parameters for the request.
|
|
329
|
+
* @param signal - An optional abort signal.
|
|
330
|
+
* @returns Array of user's historical orders.
|
|
331
|
+
*
|
|
332
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
333
|
+
*
|
|
334
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-historical-orders
|
|
335
|
+
* @example
|
|
336
|
+
* ```ts
|
|
337
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
338
|
+
*
|
|
339
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
340
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
341
|
+
*
|
|
342
|
+
* const data = await infoClient.historicalOrders({ user: "0x..." });
|
|
343
|
+
* ```
|
|
344
|
+
*/
|
|
345
|
+
historicalOrders(args, signal) {
|
|
346
|
+
const request = {
|
|
347
|
+
type: "historicalOrders",
|
|
348
|
+
...args,
|
|
349
|
+
};
|
|
350
|
+
return this.transport.request("info", request, signal);
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Request to check if a user is a VIP.
|
|
354
|
+
* @param args - The parameters for the request.
|
|
355
|
+
* @param signal - An optional abort signal.
|
|
356
|
+
* @returns Boolean indicating user's VIP status.
|
|
357
|
+
*
|
|
358
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
359
|
+
*
|
|
360
|
+
* @see null
|
|
361
|
+
* @example
|
|
362
|
+
* ```ts
|
|
363
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
364
|
+
*
|
|
365
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
366
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
367
|
+
*
|
|
368
|
+
* const data = await infoClient.isVip({ user: "0x..." });
|
|
369
|
+
* ```
|
|
370
|
+
*/
|
|
371
|
+
isVip(args, signal) {
|
|
372
|
+
const request = {
|
|
373
|
+
type: "isVip",
|
|
374
|
+
...args,
|
|
375
|
+
};
|
|
376
|
+
return this.transport.request("info", request, signal);
|
|
377
|
+
}
|
|
378
|
+
/**
|
|
379
|
+
* Request L2 order book.
|
|
380
|
+
* @param args - The parameters for the request.
|
|
381
|
+
* @param signal - An optional abort signal.
|
|
382
|
+
* @returns L2 order book snapshot.
|
|
383
|
+
*
|
|
384
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
385
|
+
*
|
|
386
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#l2-book-snapshot
|
|
387
|
+
* @example
|
|
388
|
+
* ```ts
|
|
389
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
390
|
+
*
|
|
391
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
392
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
393
|
+
*
|
|
394
|
+
* const data = await infoClient.l2Book({ coin: "ETH", nSigFigs: 2 });
|
|
395
|
+
* ```
|
|
396
|
+
*/
|
|
397
|
+
l2Book(args, signal) {
|
|
398
|
+
const request = {
|
|
399
|
+
type: "l2Book",
|
|
400
|
+
...args,
|
|
401
|
+
};
|
|
402
|
+
return this.transport.request("info", request, signal);
|
|
5
403
|
}
|
|
6
|
-
|
|
7
|
-
|
|
404
|
+
/**
|
|
405
|
+
* Request leading vaults for a user.
|
|
406
|
+
* @param args - The parameters for the request.
|
|
407
|
+
* @param signal - An optional abort signal.
|
|
408
|
+
* @returns
|
|
409
|
+
*
|
|
410
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
411
|
+
*
|
|
412
|
+
* @see null
|
|
413
|
+
* @example
|
|
414
|
+
* ```ts
|
|
415
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
416
|
+
*
|
|
417
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
418
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
419
|
+
*
|
|
420
|
+
* const data = await infoClient.leadingVaults({ user: "0x..." });
|
|
421
|
+
* ```
|
|
422
|
+
*/
|
|
423
|
+
leadingVaults(args, signal) {
|
|
424
|
+
const request = {
|
|
425
|
+
type: "leadingVaults",
|
|
426
|
+
...args,
|
|
427
|
+
};
|
|
428
|
+
return this.transport.request("info", request, signal);
|
|
8
429
|
}
|
|
9
|
-
})(function (require, exports) {
|
|
10
|
-
"use strict";
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.InfoClient = void 0;
|
|
13
430
|
/**
|
|
14
|
-
*
|
|
15
|
-
* @
|
|
431
|
+
* Request legal verification status of a user.
|
|
432
|
+
* @param args - The parameters for the request.
|
|
433
|
+
* @param signal - An optional abort signal.
|
|
434
|
+
* @returns Legal verification status for a user.
|
|
435
|
+
*
|
|
436
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
437
|
+
*
|
|
438
|
+
* @see null
|
|
439
|
+
* @example
|
|
440
|
+
* ```ts
|
|
441
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
442
|
+
*
|
|
443
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
444
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
445
|
+
*
|
|
446
|
+
* const data = await infoClient.legalCheck({ user: "0x..." });
|
|
447
|
+
* ```
|
|
16
448
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
type: "userRateLimit",
|
|
1014
|
-
...args,
|
|
1015
|
-
};
|
|
1016
|
-
return this.transport.request("info", request, signal);
|
|
1017
|
-
}
|
|
1018
|
-
/**
|
|
1019
|
-
* Request user role.
|
|
1020
|
-
* @param args - The parameters for the request.
|
|
1021
|
-
* @param signal - An optional abort signal.
|
|
1022
|
-
* @returns User's role.
|
|
1023
|
-
*
|
|
1024
|
-
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-role
|
|
1025
|
-
* @example
|
|
1026
|
-
* ```ts
|
|
1027
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1028
|
-
*
|
|
1029
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1030
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1031
|
-
*
|
|
1032
|
-
* const data = await infoClient.userRole({ user: "0x..." });
|
|
1033
|
-
* ```
|
|
1034
|
-
*/
|
|
1035
|
-
userRole(args, signal) {
|
|
1036
|
-
const request = {
|
|
1037
|
-
type: "userRole",
|
|
1038
|
-
...args,
|
|
1039
|
-
};
|
|
1040
|
-
return this.transport.request("info", request, signal);
|
|
1041
|
-
}
|
|
1042
|
-
/**
|
|
1043
|
-
* Request multi-sig signers for a user.
|
|
1044
|
-
* @param args - The parameters for the request.
|
|
1045
|
-
* @param signal - An optional abort signal.
|
|
1046
|
-
* @returns Multi-sig signers for a user or null if the user does not have any multi-sig signers.
|
|
1047
|
-
*
|
|
1048
|
-
* @see null - no documentation
|
|
1049
|
-
* @example
|
|
1050
|
-
* ```ts
|
|
1051
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1052
|
-
*
|
|
1053
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1054
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1055
|
-
*
|
|
1056
|
-
* const data = await infoClient.userToMultiSigSigners({ user: "0x..." });
|
|
1057
|
-
* ```
|
|
1058
|
-
*/
|
|
1059
|
-
userToMultiSigSigners(args, signal) {
|
|
1060
|
-
const request = {
|
|
1061
|
-
type: "userToMultiSigSigners",
|
|
1062
|
-
...args,
|
|
1063
|
-
};
|
|
1064
|
-
return this.transport.request("info", request, signal);
|
|
1065
|
-
}
|
|
1066
|
-
/**
|
|
1067
|
-
* Request user twap slice fills.
|
|
1068
|
-
* @param args - The parameters for the request.
|
|
1069
|
-
* @param signal - An optional abort signal.
|
|
1070
|
-
* @returns Array of user's twap slice fill.
|
|
1071
|
-
*
|
|
1072
|
-
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-twap-slice-fills
|
|
1073
|
-
* @example
|
|
1074
|
-
* ```ts
|
|
1075
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1076
|
-
*
|
|
1077
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1078
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1079
|
-
*
|
|
1080
|
-
* const data = await infoClient.userTwapSliceFills({ user: "0x..." });
|
|
1081
|
-
* ```
|
|
1082
|
-
*/
|
|
1083
|
-
userTwapSliceFills(args, signal) {
|
|
1084
|
-
const request = {
|
|
1085
|
-
type: "userTwapSliceFills",
|
|
1086
|
-
...args,
|
|
1087
|
-
};
|
|
1088
|
-
return this.transport.request("info", request, signal);
|
|
1089
|
-
}
|
|
1090
|
-
/**
|
|
1091
|
-
* Request user twap slice fills by time.
|
|
1092
|
-
* @param args - The parameters for the request.
|
|
1093
|
-
* @param signal - An optional abort signal.
|
|
1094
|
-
* @returns Array of user's twap slice fill.
|
|
1095
|
-
*
|
|
1096
|
-
* @see null - no documentation
|
|
1097
|
-
* @example
|
|
1098
|
-
* ```ts
|
|
1099
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1100
|
-
*
|
|
1101
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1102
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1103
|
-
*
|
|
1104
|
-
* const data = await infoClient.userTwapSliceFillsByTime({
|
|
1105
|
-
* user: "0x...",
|
|
1106
|
-
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
1107
|
-
* });
|
|
1108
|
-
* ```
|
|
1109
|
-
*/
|
|
1110
|
-
userTwapSliceFillsByTime(args, signal) {
|
|
1111
|
-
const request = {
|
|
1112
|
-
type: "userTwapSliceFillsByTime",
|
|
1113
|
-
...args,
|
|
1114
|
-
};
|
|
1115
|
-
return this.transport.request("info", request, signal);
|
|
1116
|
-
}
|
|
1117
|
-
/**
|
|
1118
|
-
* Request user vault deposits.
|
|
1119
|
-
* @param args - The parameters for the request.
|
|
1120
|
-
* @param signal - An optional abort signal.
|
|
1121
|
-
* @returns Array of user's vault deposits.
|
|
1122
|
-
*
|
|
1123
|
-
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-vault-deposits
|
|
1124
|
-
* @example
|
|
1125
|
-
* ```ts
|
|
1126
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1127
|
-
*
|
|
1128
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1129
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1130
|
-
*
|
|
1131
|
-
* const data = await infoClient.userVaultDeposits({ user: "0x..." });
|
|
1132
|
-
* ```
|
|
1133
|
-
*/
|
|
1134
|
-
userVaultEquities(args, signal) {
|
|
1135
|
-
const request = {
|
|
1136
|
-
type: "userVaultEquities",
|
|
1137
|
-
...args,
|
|
1138
|
-
};
|
|
1139
|
-
return this.transport.request("info", request, signal);
|
|
1140
|
-
}
|
|
1141
|
-
/**
|
|
1142
|
-
* Request validator summaries.
|
|
1143
|
-
* @param args - The parameters for the request.
|
|
1144
|
-
* @returns Array of validator summaries.
|
|
1145
|
-
*
|
|
1146
|
-
* @see null - no documentation
|
|
1147
|
-
* @example
|
|
1148
|
-
* ```ts
|
|
1149
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1150
|
-
*
|
|
1151
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1152
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1153
|
-
*
|
|
1154
|
-
* const data = await infoClient.validatorSummaries();
|
|
1155
|
-
* ```
|
|
1156
|
-
*/
|
|
1157
|
-
validatorSummaries(signal) {
|
|
1158
|
-
const request = {
|
|
1159
|
-
type: "validatorSummaries",
|
|
1160
|
-
};
|
|
1161
|
-
return this.transport.request("info", request, signal);
|
|
1162
|
-
}
|
|
1163
|
-
/**
|
|
1164
|
-
* Request details of a vault.
|
|
1165
|
-
* @param args - The parameters for the request.
|
|
1166
|
-
* @param signal - An optional abort signal.
|
|
1167
|
-
* @returns Details of a vault or null if the vault does not exist.
|
|
1168
|
-
*
|
|
1169
|
-
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-details-for-a-vault
|
|
1170
|
-
* @example
|
|
1171
|
-
* ```ts
|
|
1172
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1173
|
-
*
|
|
1174
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1175
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1176
|
-
*
|
|
1177
|
-
* const data = await infoClient.vaultDetails({ vaultAddress: "0x..." });
|
|
1178
|
-
* ```
|
|
1179
|
-
*/
|
|
1180
|
-
vaultDetails(args, signal) {
|
|
1181
|
-
const request = {
|
|
1182
|
-
type: "vaultDetails",
|
|
1183
|
-
...args,
|
|
1184
|
-
};
|
|
1185
|
-
return this.transport.request("info", request, signal);
|
|
1186
|
-
}
|
|
1187
|
-
/**
|
|
1188
|
-
* Request a list of vaults less than 2 hours old.
|
|
1189
|
-
* @param args - The parameters for the request.
|
|
1190
|
-
* @param signal - An optional abort signal.
|
|
1191
|
-
* @returns Array of vault summaries.
|
|
1192
|
-
*
|
|
1193
|
-
* @see null - no documentation
|
|
1194
|
-
* @example
|
|
1195
|
-
* ```ts
|
|
1196
|
-
* import * as hl from "@nktkas/hyperliquid";
|
|
1197
|
-
*
|
|
1198
|
-
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1199
|
-
* const infoClient = new hl.InfoClient({ transport });
|
|
1200
|
-
*
|
|
1201
|
-
* const data = await infoClient.vaultSummaries();
|
|
1202
|
-
* ```
|
|
1203
|
-
*/
|
|
1204
|
-
vaultSummaries(signal) {
|
|
1205
|
-
const request = {
|
|
1206
|
-
type: "vaultSummaries",
|
|
1207
|
-
};
|
|
1208
|
-
return this.transport.request("info", request, signal);
|
|
1209
|
-
}
|
|
1210
|
-
async [Symbol.asyncDispose]() {
|
|
1211
|
-
await this.transport[Symbol.asyncDispose]?.();
|
|
1212
|
-
}
|
|
449
|
+
legalCheck(args, signal) {
|
|
450
|
+
const request = {
|
|
451
|
+
type: "legalCheck",
|
|
452
|
+
...args,
|
|
453
|
+
};
|
|
454
|
+
return this.transport.request("info", request, signal);
|
|
455
|
+
}
|
|
456
|
+
/**
|
|
457
|
+
* Request liquidatable (unknown).
|
|
458
|
+
* @param signal - An optional abort signal.
|
|
459
|
+
* @returns
|
|
460
|
+
*
|
|
461
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
462
|
+
*
|
|
463
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
464
|
+
* @example
|
|
465
|
+
* ```ts
|
|
466
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
467
|
+
*
|
|
468
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
469
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
470
|
+
*
|
|
471
|
+
* const data = await infoClient.liquidatable();
|
|
472
|
+
* ```
|
|
473
|
+
*/
|
|
474
|
+
liquidatable(signal) {
|
|
475
|
+
const request = {
|
|
476
|
+
type: "liquidatable",
|
|
477
|
+
};
|
|
478
|
+
return this.transport.request("info", request, signal);
|
|
479
|
+
}
|
|
480
|
+
/**
|
|
481
|
+
* Request margin table data.
|
|
482
|
+
* @param args - The parameters for the request.
|
|
483
|
+
* @param signal - An optional abort signal.
|
|
484
|
+
* @returns Margin requirements table with multiple tiers.
|
|
485
|
+
*
|
|
486
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
487
|
+
*
|
|
488
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
489
|
+
* @example
|
|
490
|
+
* ```ts
|
|
491
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
492
|
+
*
|
|
493
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
494
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
495
|
+
*
|
|
496
|
+
* const data = await infoClient.marginTable({ id: 1 });
|
|
497
|
+
* ```
|
|
498
|
+
*/
|
|
499
|
+
marginTable(args, signal) {
|
|
500
|
+
const request = {
|
|
501
|
+
type: "marginTable",
|
|
502
|
+
...args,
|
|
503
|
+
};
|
|
504
|
+
return this.transport.request("info", request, signal);
|
|
505
|
+
}
|
|
506
|
+
/**
|
|
507
|
+
* Request builder fee approval.
|
|
508
|
+
* @param args - The parameters for the request.
|
|
509
|
+
* @param signal - An optional abort signal.
|
|
510
|
+
* @returns Maximum builder fee approval.
|
|
511
|
+
*
|
|
512
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
513
|
+
*
|
|
514
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#check-builder-fee-approval
|
|
515
|
+
* @example
|
|
516
|
+
* ```ts
|
|
517
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
518
|
+
*
|
|
519
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
520
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
521
|
+
*
|
|
522
|
+
* const data = await infoClient.maxBuilderFee({ user: "0x...", builder: "0x..." });
|
|
523
|
+
* ```
|
|
524
|
+
*/
|
|
525
|
+
maxBuilderFee(args, signal) {
|
|
526
|
+
const request = {
|
|
527
|
+
type: "maxBuilderFee",
|
|
528
|
+
...args,
|
|
529
|
+
};
|
|
530
|
+
return this.transport.request("info", request, signal);
|
|
531
|
+
}
|
|
532
|
+
/**
|
|
533
|
+
* Request maximum market order notionals.
|
|
534
|
+
* @param signal - An optional abort signal.
|
|
535
|
+
* @returns
|
|
536
|
+
*
|
|
537
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
538
|
+
*
|
|
539
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
540
|
+
* @example
|
|
541
|
+
* ```ts
|
|
542
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
543
|
+
*
|
|
544
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
545
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
546
|
+
*
|
|
547
|
+
* const data = await infoClient.maxMarketOrderNtls();
|
|
548
|
+
* ```
|
|
549
|
+
*/
|
|
550
|
+
maxMarketOrderNtls(signal) {
|
|
551
|
+
const request = {
|
|
552
|
+
type: "maxMarketOrderNtls",
|
|
553
|
+
};
|
|
554
|
+
return this.transport.request("info", request, signal);
|
|
555
|
+
}
|
|
556
|
+
meta(args_or_signal, maybeSignal) {
|
|
557
|
+
const args = args_or_signal instanceof AbortSignal ? {} : args_or_signal;
|
|
558
|
+
const signal = args_or_signal instanceof AbortSignal ? args_or_signal : maybeSignal;
|
|
559
|
+
const request = {
|
|
560
|
+
type: "meta",
|
|
561
|
+
...args,
|
|
562
|
+
};
|
|
563
|
+
return this.transport.request("info", request, signal);
|
|
564
|
+
}
|
|
565
|
+
/**
|
|
566
|
+
* Request metadata and asset contexts.
|
|
567
|
+
* @param signal - An optional abort signal.
|
|
568
|
+
* @returns Metadata and context for perpetual assets.
|
|
569
|
+
*
|
|
570
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
571
|
+
*
|
|
572
|
+
* @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
|
|
573
|
+
* @example
|
|
574
|
+
* ```ts
|
|
575
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
576
|
+
*
|
|
577
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
578
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
579
|
+
*
|
|
580
|
+
* const data = await infoClient.metaAndAssetCtxs();
|
|
581
|
+
* ```
|
|
582
|
+
*/
|
|
583
|
+
metaAndAssetCtxs(signal) {
|
|
584
|
+
const request = {
|
|
585
|
+
type: "metaAndAssetCtxs",
|
|
586
|
+
};
|
|
587
|
+
return this.transport.request("info", request, signal);
|
|
588
|
+
}
|
|
589
|
+
/**
|
|
590
|
+
* Request open orders.
|
|
591
|
+
* @param args - The parameters for the request.
|
|
592
|
+
* @param signal - An optional abort signal.
|
|
593
|
+
* @returns Array of open order.
|
|
594
|
+
*
|
|
595
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
596
|
+
*
|
|
597
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-open-orders
|
|
598
|
+
* @example
|
|
599
|
+
* ```ts
|
|
600
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
601
|
+
*
|
|
602
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
603
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
604
|
+
*
|
|
605
|
+
* const data = await infoClient.openOrders({ user: "0x..." });
|
|
606
|
+
* ```
|
|
607
|
+
*/
|
|
608
|
+
openOrders(args, signal) {
|
|
609
|
+
const request = {
|
|
610
|
+
type: "openOrders",
|
|
611
|
+
...args,
|
|
612
|
+
};
|
|
613
|
+
return this.transport.request("info", request, signal);
|
|
614
|
+
}
|
|
615
|
+
/**
|
|
616
|
+
* Request order status.
|
|
617
|
+
* @param args - The parameters for the request.
|
|
618
|
+
* @param signal - An optional abort signal.
|
|
619
|
+
* @returns Result of an order status lookup.
|
|
620
|
+
*
|
|
621
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
622
|
+
*
|
|
623
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-order-status-by-oid-or-cloid
|
|
624
|
+
* @example
|
|
625
|
+
* ```ts
|
|
626
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
627
|
+
*
|
|
628
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
629
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
630
|
+
*
|
|
631
|
+
* const data = await infoClient.orderStatus({ user: "0x...", oid: 12345 });
|
|
632
|
+
* ```
|
|
633
|
+
*/
|
|
634
|
+
orderStatus(args, signal) {
|
|
635
|
+
const request = {
|
|
636
|
+
type: "orderStatus",
|
|
637
|
+
...args,
|
|
638
|
+
};
|
|
639
|
+
return this.transport.request("info", request, signal);
|
|
640
|
+
}
|
|
641
|
+
/**
|
|
642
|
+
* Request for the status of the perpetual deploy auction.
|
|
643
|
+
* @param signal - An optional abort signal.
|
|
644
|
+
* @returns Status of the perpetual deploy auction.
|
|
645
|
+
*
|
|
646
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
647
|
+
*
|
|
648
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-information-about-the-perp-deploy-auction
|
|
649
|
+
* @example
|
|
650
|
+
* ```ts
|
|
651
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
652
|
+
*
|
|
653
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
654
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
655
|
+
*
|
|
656
|
+
* const data = await infoClient.perpDeployAuctionStatus();
|
|
657
|
+
* ```
|
|
658
|
+
*/
|
|
659
|
+
perpDeployAuctionStatus(signal) {
|
|
660
|
+
const request = {
|
|
661
|
+
type: "perpDeployAuctionStatus",
|
|
662
|
+
};
|
|
663
|
+
return this.transport.request("info", request, signal);
|
|
664
|
+
}
|
|
665
|
+
/**
|
|
666
|
+
* Request all perpetual dexs.
|
|
667
|
+
* @param signal - An optional abort signal.
|
|
668
|
+
* @returns Array of perpetual dexes (null is main dex).
|
|
669
|
+
*
|
|
670
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
671
|
+
*
|
|
672
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-all-perpetual-dexs
|
|
673
|
+
* @example
|
|
674
|
+
* ```ts
|
|
675
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
676
|
+
*
|
|
677
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
678
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
679
|
+
*
|
|
680
|
+
* const data = await infoClient.perpDexs();
|
|
681
|
+
* ```
|
|
682
|
+
*/
|
|
683
|
+
perpDexs(signal) {
|
|
684
|
+
const request = {
|
|
685
|
+
type: "perpDexs",
|
|
686
|
+
};
|
|
687
|
+
return this.transport.request("info", request, signal);
|
|
688
|
+
}
|
|
689
|
+
/**
|
|
690
|
+
* Request perpetuals at open interest cap.
|
|
691
|
+
* @param signal - An optional abort signal.
|
|
692
|
+
* @returns Array of perpetuals at open interest caps.
|
|
693
|
+
*
|
|
694
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
695
|
+
*
|
|
696
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#query-perps-at-open-interest-caps
|
|
697
|
+
* @example
|
|
698
|
+
* ```ts
|
|
699
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
700
|
+
*
|
|
701
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
702
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
703
|
+
*
|
|
704
|
+
* const data = await infoClient.perpsAtOpenInterestCap();
|
|
705
|
+
* ```
|
|
706
|
+
*/
|
|
707
|
+
perpsAtOpenInterestCap(signal) {
|
|
708
|
+
const request = {
|
|
709
|
+
type: "perpsAtOpenInterestCap",
|
|
710
|
+
};
|
|
711
|
+
return this.transport.request("info", request, signal);
|
|
712
|
+
}
|
|
713
|
+
/**
|
|
714
|
+
* Request user portfolio.
|
|
715
|
+
* @param args - The parameters for the request.
|
|
716
|
+
* @param signal - An optional abort signal.
|
|
717
|
+
* @returns Portfolio metrics grouped by time periods.
|
|
718
|
+
*
|
|
719
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
720
|
+
*
|
|
721
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-portfolio
|
|
722
|
+
* @example
|
|
723
|
+
* ```ts
|
|
724
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
725
|
+
*
|
|
726
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
727
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
728
|
+
*
|
|
729
|
+
* const data = await infoClient.portfolio({ user: "0x..." });
|
|
730
|
+
* ```
|
|
731
|
+
*/
|
|
732
|
+
portfolio(args, signal) {
|
|
733
|
+
const request = {
|
|
734
|
+
type: "portfolio",
|
|
735
|
+
...args,
|
|
736
|
+
};
|
|
737
|
+
return this.transport.request("info", request, signal);
|
|
738
|
+
}
|
|
739
|
+
/**
|
|
740
|
+
* Request predicted funding rates.
|
|
741
|
+
* @param signal - An optional abort signal.
|
|
742
|
+
* @returns Array of predicted funding rates.
|
|
743
|
+
*
|
|
744
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
745
|
+
*
|
|
746
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-predicted-funding-rates-for-different-venues
|
|
747
|
+
* @example
|
|
748
|
+
* ```ts
|
|
749
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
750
|
+
*
|
|
751
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
752
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
753
|
+
*
|
|
754
|
+
* const data = await infoClient.predictedFundings();
|
|
755
|
+
* ```
|
|
756
|
+
*/
|
|
757
|
+
predictedFundings(signal) {
|
|
758
|
+
const request = {
|
|
759
|
+
type: "predictedFundings",
|
|
760
|
+
};
|
|
761
|
+
return this.transport.request("info", request, signal);
|
|
762
|
+
}
|
|
763
|
+
/**
|
|
764
|
+
* Request user's existence check before transfer.
|
|
765
|
+
* @param args - The parameters for the request.
|
|
766
|
+
* @param signal - An optional abort signal.
|
|
767
|
+
* @returns Pre-transfer user existence check result.
|
|
768
|
+
*
|
|
769
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
770
|
+
*
|
|
771
|
+
* @see null
|
|
772
|
+
* @example
|
|
773
|
+
* ```ts
|
|
774
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
775
|
+
*
|
|
776
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
777
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
778
|
+
*
|
|
779
|
+
* const data = await infoClient.preTransferCheck({ user: "0x...", source: "0x..." });
|
|
780
|
+
* ```
|
|
781
|
+
*/
|
|
782
|
+
preTransferCheck(args, signal) {
|
|
783
|
+
const request = {
|
|
784
|
+
type: "preTransferCheck",
|
|
785
|
+
...args,
|
|
786
|
+
};
|
|
787
|
+
return this.transport.request("info", request, signal);
|
|
788
|
+
}
|
|
789
|
+
/**
|
|
790
|
+
* Request user referral.
|
|
791
|
+
* @param args - The parameters for the request.
|
|
792
|
+
* @param signal - An optional abort signal.
|
|
793
|
+
* @returns Referral information for a user.
|
|
794
|
+
*
|
|
795
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
796
|
+
*
|
|
797
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-referral-information
|
|
798
|
+
* @example
|
|
799
|
+
* ```ts
|
|
800
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
801
|
+
*
|
|
802
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
803
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
804
|
+
*
|
|
805
|
+
* const data = await infoClient.referral({ user: "0x..." });
|
|
806
|
+
* ```
|
|
807
|
+
*/
|
|
808
|
+
referral(args, signal) {
|
|
809
|
+
const request = {
|
|
810
|
+
type: "referral",
|
|
811
|
+
...args,
|
|
812
|
+
};
|
|
813
|
+
return this.transport.request("info", request, signal);
|
|
814
|
+
}
|
|
815
|
+
/**
|
|
816
|
+
* Request spot clearinghouse state.
|
|
817
|
+
* @param args - The parameters for the request.
|
|
818
|
+
* @param signal - An optional abort signal.
|
|
819
|
+
* @returns Account summary for spot trading.
|
|
820
|
+
*
|
|
821
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
822
|
+
*
|
|
823
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-a-users-token-balances
|
|
824
|
+
* @example
|
|
825
|
+
* ```ts
|
|
826
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
827
|
+
*
|
|
828
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
829
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
830
|
+
*
|
|
831
|
+
* const data = await infoClient.spotClearinghouseState({ user: "0x..." });
|
|
832
|
+
* ```
|
|
833
|
+
*/
|
|
834
|
+
spotClearinghouseState(args, signal) {
|
|
835
|
+
const request = {
|
|
836
|
+
type: "spotClearinghouseState",
|
|
837
|
+
...args,
|
|
838
|
+
};
|
|
839
|
+
return this.transport.request("info", request, signal);
|
|
840
|
+
}
|
|
841
|
+
/**
|
|
842
|
+
* Request spot deploy state.
|
|
843
|
+
* @param args - The parameters for the request.
|
|
844
|
+
* @param signal - An optional abort signal.
|
|
845
|
+
* @returns Deploy state for spot tokens.
|
|
846
|
+
*
|
|
847
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
848
|
+
*
|
|
849
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-information-about-the-spot-deploy-auction
|
|
850
|
+
* @example
|
|
851
|
+
* ```ts
|
|
852
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
853
|
+
*
|
|
854
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
855
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
856
|
+
*
|
|
857
|
+
* const data = await infoClient.spotDeployState({ user: "0x..." });
|
|
858
|
+
* ```
|
|
859
|
+
*/
|
|
860
|
+
spotDeployState(args, signal) {
|
|
861
|
+
const request = {
|
|
862
|
+
type: "spotDeployState",
|
|
863
|
+
...args,
|
|
864
|
+
};
|
|
865
|
+
return this.transport.request("info", request, signal);
|
|
866
|
+
}
|
|
867
|
+
/**
|
|
868
|
+
* Request spot trading metadata.
|
|
869
|
+
* @param signal - An optional abort signal.
|
|
870
|
+
* @returns Metadata for spot assets.
|
|
871
|
+
*
|
|
872
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
873
|
+
*
|
|
874
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-spot-metadata
|
|
875
|
+
* @example
|
|
876
|
+
* ```ts
|
|
877
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
878
|
+
*
|
|
879
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
880
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
881
|
+
*
|
|
882
|
+
* const data = await infoClient.spotMeta();
|
|
883
|
+
* ```
|
|
884
|
+
*/
|
|
885
|
+
spotMeta(signal) {
|
|
886
|
+
const request = {
|
|
887
|
+
type: "spotMeta",
|
|
888
|
+
};
|
|
889
|
+
return this.transport.request("info", request, signal);
|
|
890
|
+
}
|
|
891
|
+
/**
|
|
892
|
+
* Request spot metadata and asset contexts.
|
|
893
|
+
* @param signal - An optional abort signal.
|
|
894
|
+
* @returns Metadata and context for spot assets.
|
|
895
|
+
*
|
|
896
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
897
|
+
*
|
|
898
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-spot-asset-contexts
|
|
899
|
+
* @example
|
|
900
|
+
* ```ts
|
|
901
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
902
|
+
*
|
|
903
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
904
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
905
|
+
*
|
|
906
|
+
* const data = await infoClient.spotMetaAndAssetCtxs();
|
|
907
|
+
* ```
|
|
908
|
+
*/
|
|
909
|
+
spotMetaAndAssetCtxs(signal) {
|
|
910
|
+
const request = {
|
|
911
|
+
type: "spotMetaAndAssetCtxs",
|
|
912
|
+
};
|
|
913
|
+
return this.transport.request("info", request, signal);
|
|
914
|
+
}
|
|
915
|
+
/**
|
|
916
|
+
* Request user sub-accounts.
|
|
917
|
+
* @param args - The parameters for the request.
|
|
918
|
+
* @param signal - An optional abort signal.
|
|
919
|
+
* @returns Array of user sub-account or null if the user does not have any sub-accounts.
|
|
920
|
+
*
|
|
921
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
922
|
+
*
|
|
923
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-subaccounts
|
|
924
|
+
* @example
|
|
925
|
+
* ```ts
|
|
926
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
927
|
+
*
|
|
928
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
929
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
930
|
+
*
|
|
931
|
+
* const data = await infoClient.subAccounts({ user: "0x..." });
|
|
932
|
+
* ```
|
|
933
|
+
*/
|
|
934
|
+
subAccounts(args, signal) {
|
|
935
|
+
const request = {
|
|
936
|
+
type: "subAccounts",
|
|
937
|
+
...args,
|
|
938
|
+
};
|
|
939
|
+
return this.transport.request("info", request, signal);
|
|
940
|
+
}
|
|
941
|
+
/**
|
|
942
|
+
* Request token details.
|
|
943
|
+
* @param args - The parameters for the request.
|
|
944
|
+
* @param signal - An optional abort signal.
|
|
945
|
+
* @returns Details of a token.
|
|
946
|
+
*
|
|
947
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
948
|
+
*
|
|
949
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/spot#retrieve-information-about-a-token
|
|
950
|
+
* @example
|
|
951
|
+
* ```ts
|
|
952
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
953
|
+
*
|
|
954
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
955
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
956
|
+
*
|
|
957
|
+
* const data = await infoClient.tokenDetails({ tokenId: "0x..." });
|
|
958
|
+
* ```
|
|
959
|
+
*/
|
|
960
|
+
tokenDetails(args, signal) {
|
|
961
|
+
const request = {
|
|
962
|
+
type: "tokenDetails",
|
|
963
|
+
...args,
|
|
964
|
+
};
|
|
965
|
+
return this.transport.request("info", request, signal);
|
|
966
|
+
}
|
|
967
|
+
/**
|
|
968
|
+
* Request twap history of a user.
|
|
969
|
+
* @param args - The parameters for the request.
|
|
970
|
+
* @param signal - An optional abort signal.
|
|
971
|
+
* @returns Array of user's TWAP history.
|
|
972
|
+
*
|
|
973
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
974
|
+
*
|
|
975
|
+
* @see null
|
|
976
|
+
* @example
|
|
977
|
+
* ```ts
|
|
978
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
979
|
+
*
|
|
980
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
981
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
982
|
+
*
|
|
983
|
+
* const data = await infoClient.twapHistory({ user: "0x..." });
|
|
984
|
+
* ```
|
|
985
|
+
*/
|
|
986
|
+
twapHistory(args, signal) {
|
|
987
|
+
const request = {
|
|
988
|
+
type: "twapHistory",
|
|
989
|
+
...args,
|
|
990
|
+
};
|
|
991
|
+
return this.transport.request("info", request, signal);
|
|
992
|
+
}
|
|
993
|
+
/**
|
|
994
|
+
* Request transaction details by transaction hash.
|
|
995
|
+
* @param args - The parameters for the request.
|
|
996
|
+
* @param signal - An optional abort signal.
|
|
997
|
+
* @returns Transaction details.
|
|
998
|
+
*
|
|
999
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1000
|
+
*
|
|
1001
|
+
* @see null
|
|
1002
|
+
* @example
|
|
1003
|
+
* ```ts
|
|
1004
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1005
|
+
*
|
|
1006
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1007
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1008
|
+
*
|
|
1009
|
+
* const data = await infoClient.txDetails({ hash: "0x..." });
|
|
1010
|
+
* ```
|
|
1011
|
+
*/
|
|
1012
|
+
async txDetails(args, signal) {
|
|
1013
|
+
const request = {
|
|
1014
|
+
type: "txDetails",
|
|
1015
|
+
...args,
|
|
1016
|
+
};
|
|
1017
|
+
const { tx } = await this.transport.request("explorer", request, signal);
|
|
1018
|
+
return tx;
|
|
1019
|
+
}
|
|
1020
|
+
/**
|
|
1021
|
+
* Request user details by user's address.
|
|
1022
|
+
* @param args - The parameters for the request.
|
|
1023
|
+
* @param signal - An optional abort signal.
|
|
1024
|
+
* @returns User details.
|
|
1025
|
+
*
|
|
1026
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1027
|
+
*
|
|
1028
|
+
* @see null
|
|
1029
|
+
* @example
|
|
1030
|
+
* ```ts
|
|
1031
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1032
|
+
*
|
|
1033
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1034
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1035
|
+
*
|
|
1036
|
+
* const data = await infoClient.userDetails({ user: "0x..." });
|
|
1037
|
+
* ```
|
|
1038
|
+
*/
|
|
1039
|
+
async userDetails(args, signal) {
|
|
1040
|
+
const request = {
|
|
1041
|
+
type: "userDetails",
|
|
1042
|
+
...args,
|
|
1043
|
+
};
|
|
1044
|
+
const { txs } = await this.transport.request("explorer", request, signal);
|
|
1045
|
+
return txs;
|
|
1046
|
+
}
|
|
1047
|
+
/**
|
|
1048
|
+
* Request user fees.
|
|
1049
|
+
* @param args - The parameters for the request.
|
|
1050
|
+
* @param signal - An optional abort signal.
|
|
1051
|
+
* @returns User fees.
|
|
1052
|
+
*
|
|
1053
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1054
|
+
*
|
|
1055
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-fees
|
|
1056
|
+
* @example
|
|
1057
|
+
* ```ts
|
|
1058
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1059
|
+
*
|
|
1060
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1061
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1062
|
+
*
|
|
1063
|
+
* const data = await infoClient.userFees({ user: "0x..." });
|
|
1064
|
+
* ```
|
|
1065
|
+
*/
|
|
1066
|
+
userFees(args, signal) {
|
|
1067
|
+
const request = {
|
|
1068
|
+
type: "userFees",
|
|
1069
|
+
...args,
|
|
1070
|
+
};
|
|
1071
|
+
return this.transport.request("info", request, signal);
|
|
1072
|
+
}
|
|
1073
|
+
/**
|
|
1074
|
+
* Request user fills.
|
|
1075
|
+
* @param args - The parameters for the request.
|
|
1076
|
+
* @param signal - An optional abort signal.
|
|
1077
|
+
* @returns Array of user's trade fill.
|
|
1078
|
+
*
|
|
1079
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1080
|
+
*
|
|
1081
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-fills
|
|
1082
|
+
* @example
|
|
1083
|
+
* ```ts
|
|
1084
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1085
|
+
*
|
|
1086
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1087
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1088
|
+
*
|
|
1089
|
+
* const data = await infoClient.userFills({ user: "0x..." });
|
|
1090
|
+
* ```
|
|
1091
|
+
*/
|
|
1092
|
+
userFills(args, signal) {
|
|
1093
|
+
const request = {
|
|
1094
|
+
type: "userFills",
|
|
1095
|
+
...args,
|
|
1096
|
+
};
|
|
1097
|
+
return this.transport.request("info", request, signal);
|
|
1098
|
+
}
|
|
1099
|
+
/**
|
|
1100
|
+
* Request user fills by time.
|
|
1101
|
+
* @param args - The parameters for the request.
|
|
1102
|
+
* @param signal - An optional abort signal.
|
|
1103
|
+
* @returns Array of user's trade fill.
|
|
1104
|
+
*
|
|
1105
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1106
|
+
*
|
|
1107
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-fills-by-time
|
|
1108
|
+
* @example
|
|
1109
|
+
* ```ts
|
|
1110
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1111
|
+
*
|
|
1112
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1113
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1114
|
+
*
|
|
1115
|
+
* const data = await infoClient.userFillsByTime({
|
|
1116
|
+
* user: "0x...",
|
|
1117
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
1118
|
+
* });
|
|
1119
|
+
* ```
|
|
1120
|
+
*/
|
|
1121
|
+
userFillsByTime(args, signal) {
|
|
1122
|
+
const request = {
|
|
1123
|
+
type: "userFillsByTime",
|
|
1124
|
+
...args,
|
|
1125
|
+
};
|
|
1126
|
+
return this.transport.request("info", request, signal);
|
|
1127
|
+
}
|
|
1128
|
+
/**
|
|
1129
|
+
* Request user funding.
|
|
1130
|
+
* @param args - The parameters for the request.
|
|
1131
|
+
* @param signal - An optional abort signal.
|
|
1132
|
+
* @returns Array of user's funding ledger update.
|
|
1133
|
+
*
|
|
1134
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1135
|
+
*
|
|
1136
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-a-users-funding-history-or-non-funding-ledger-updates
|
|
1137
|
+
* @example
|
|
1138
|
+
* ```ts
|
|
1139
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1140
|
+
*
|
|
1141
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1142
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1143
|
+
*
|
|
1144
|
+
* const data = await infoClient.userFunding({
|
|
1145
|
+
* user: "0x...",
|
|
1146
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
1147
|
+
* });
|
|
1148
|
+
* ```
|
|
1149
|
+
*/
|
|
1150
|
+
userFunding(args, signal) {
|
|
1151
|
+
const request = {
|
|
1152
|
+
type: "userFunding",
|
|
1153
|
+
...args,
|
|
1154
|
+
};
|
|
1155
|
+
return this.transport.request("info", request, signal);
|
|
1156
|
+
}
|
|
1157
|
+
/**
|
|
1158
|
+
* Request user non-funding ledger updates.
|
|
1159
|
+
* @param args - The parameters for the request.
|
|
1160
|
+
* @param signal - An optional abort signal.
|
|
1161
|
+
* @returns Array of user's non-funding ledger update.
|
|
1162
|
+
*
|
|
1163
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1164
|
+
*
|
|
1165
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint/perpetuals#retrieve-a-users-funding-history-or-non-funding-ledger-updates
|
|
1166
|
+
* @example
|
|
1167
|
+
* ```ts
|
|
1168
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1169
|
+
*
|
|
1170
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1171
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1172
|
+
*
|
|
1173
|
+
* const data = await infoClient.userNonFundingLedgerUpdates({
|
|
1174
|
+
* user: "0x...",
|
|
1175
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
1176
|
+
* });
|
|
1177
|
+
* ```
|
|
1178
|
+
*/
|
|
1179
|
+
userNonFundingLedgerUpdates(args, signal) {
|
|
1180
|
+
const request = {
|
|
1181
|
+
type: "userNonFundingLedgerUpdates",
|
|
1182
|
+
...args,
|
|
1183
|
+
};
|
|
1184
|
+
return this.transport.request("info", request, signal);
|
|
1185
|
+
}
|
|
1186
|
+
/**
|
|
1187
|
+
* Request user rate limits.
|
|
1188
|
+
* @param args - The parameters for the request.
|
|
1189
|
+
* @param signal - An optional abort signal.
|
|
1190
|
+
* @returns User's rate limits.
|
|
1191
|
+
*
|
|
1192
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1193
|
+
*
|
|
1194
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-user-rate-limits
|
|
1195
|
+
* @example
|
|
1196
|
+
* ```ts
|
|
1197
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1198
|
+
*
|
|
1199
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1200
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1201
|
+
*
|
|
1202
|
+
* const data = await infoClient.userRateLimit({ user: "0x..." });
|
|
1203
|
+
* ```
|
|
1204
|
+
*/
|
|
1205
|
+
userRateLimit(args, signal) {
|
|
1206
|
+
const request = {
|
|
1207
|
+
type: "userRateLimit",
|
|
1208
|
+
...args,
|
|
1209
|
+
};
|
|
1210
|
+
return this.transport.request("info", request, signal);
|
|
1211
|
+
}
|
|
1212
|
+
/**
|
|
1213
|
+
* Request user role.
|
|
1214
|
+
* @param args - The parameters for the request.
|
|
1215
|
+
* @param signal - An optional abort signal.
|
|
1216
|
+
* @returns User's role.
|
|
1217
|
+
*
|
|
1218
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1219
|
+
*
|
|
1220
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-role
|
|
1221
|
+
* @example
|
|
1222
|
+
* ```ts
|
|
1223
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1224
|
+
*
|
|
1225
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1226
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1227
|
+
*
|
|
1228
|
+
* const data = await infoClient.userRole({ user: "0x..." });
|
|
1229
|
+
* ```
|
|
1230
|
+
*/
|
|
1231
|
+
userRole(args, signal) {
|
|
1232
|
+
const request = {
|
|
1233
|
+
type: "userRole",
|
|
1234
|
+
...args,
|
|
1235
|
+
};
|
|
1236
|
+
return this.transport.request("info", request, signal);
|
|
1237
|
+
}
|
|
1238
|
+
/**
|
|
1239
|
+
* Request multi-sig signers for a user.
|
|
1240
|
+
* @param args - The parameters for the request.
|
|
1241
|
+
* @param signal - An optional abort signal.
|
|
1242
|
+
* @returns Multi-sig signers for a user or null if the user does not have any multi-sig signers.
|
|
1243
|
+
*
|
|
1244
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1245
|
+
*
|
|
1246
|
+
* @see null
|
|
1247
|
+
* @example
|
|
1248
|
+
* ```ts
|
|
1249
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1250
|
+
*
|
|
1251
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1252
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1253
|
+
*
|
|
1254
|
+
* const data = await infoClient.userToMultiSigSigners({ user: "0x..." });
|
|
1255
|
+
* ```
|
|
1256
|
+
*/
|
|
1257
|
+
userToMultiSigSigners(args, signal) {
|
|
1258
|
+
const request = {
|
|
1259
|
+
type: "userToMultiSigSigners",
|
|
1260
|
+
...args,
|
|
1261
|
+
};
|
|
1262
|
+
return this.transport.request("info", request, signal);
|
|
1263
|
+
}
|
|
1264
|
+
/**
|
|
1265
|
+
* Request user twap slice fills.
|
|
1266
|
+
* @param args - The parameters for the request.
|
|
1267
|
+
* @param signal - An optional abort signal.
|
|
1268
|
+
* @returns Array of user's twap slice fill.
|
|
1269
|
+
*
|
|
1270
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1271
|
+
*
|
|
1272
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-twap-slice-fills
|
|
1273
|
+
* @example
|
|
1274
|
+
* ```ts
|
|
1275
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1276
|
+
*
|
|
1277
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1278
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1279
|
+
*
|
|
1280
|
+
* const data = await infoClient.userTwapSliceFills({ user: "0x..." });
|
|
1281
|
+
* ```
|
|
1282
|
+
*/
|
|
1283
|
+
userTwapSliceFills(args, signal) {
|
|
1284
|
+
const request = {
|
|
1285
|
+
type: "userTwapSliceFills",
|
|
1286
|
+
...args,
|
|
1287
|
+
};
|
|
1288
|
+
return this.transport.request("info", request, signal);
|
|
1289
|
+
}
|
|
1290
|
+
/**
|
|
1291
|
+
* Request user twap slice fills by time.
|
|
1292
|
+
* @param args - The parameters for the request.
|
|
1293
|
+
* @param signal - An optional abort signal.
|
|
1294
|
+
* @returns Array of user's twap slice fill.
|
|
1295
|
+
*
|
|
1296
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1297
|
+
*
|
|
1298
|
+
* @see null
|
|
1299
|
+
* @example
|
|
1300
|
+
* ```ts
|
|
1301
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1302
|
+
*
|
|
1303
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1304
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1305
|
+
*
|
|
1306
|
+
* const data = await infoClient.userTwapSliceFillsByTime({
|
|
1307
|
+
* user: "0x...",
|
|
1308
|
+
* startTime: Date.now() - 1000 * 60 * 60 * 24
|
|
1309
|
+
* });
|
|
1310
|
+
* ```
|
|
1311
|
+
*/
|
|
1312
|
+
userTwapSliceFillsByTime(args, signal) {
|
|
1313
|
+
const request = {
|
|
1314
|
+
type: "userTwapSliceFillsByTime",
|
|
1315
|
+
...args,
|
|
1316
|
+
};
|
|
1317
|
+
return this.transport.request("info", request, signal);
|
|
1318
|
+
}
|
|
1319
|
+
/**
|
|
1320
|
+
* Request user vault deposits.
|
|
1321
|
+
* @param args - The parameters for the request.
|
|
1322
|
+
* @param signal - An optional abort signal.
|
|
1323
|
+
* @returns Array of user's vault deposits.
|
|
1324
|
+
*
|
|
1325
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1326
|
+
*
|
|
1327
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-vault-deposits
|
|
1328
|
+
* @example
|
|
1329
|
+
* ```ts
|
|
1330
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1331
|
+
*
|
|
1332
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1333
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1334
|
+
*
|
|
1335
|
+
* const data = await infoClient.userVaultEquities({ user: "0x..." });
|
|
1336
|
+
* ```
|
|
1337
|
+
*/
|
|
1338
|
+
userVaultEquities(args, signal) {
|
|
1339
|
+
const request = {
|
|
1340
|
+
type: "userVaultEquities",
|
|
1341
|
+
...args,
|
|
1342
|
+
};
|
|
1343
|
+
return this.transport.request("info", request, signal);
|
|
1344
|
+
}
|
|
1345
|
+
/**
|
|
1346
|
+
* Request validator L1 votes.
|
|
1347
|
+
* @param signal - An optional abort signal.
|
|
1348
|
+
* @returns
|
|
1349
|
+
*
|
|
1350
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1351
|
+
*
|
|
1352
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#query-a-users-staking-summary
|
|
1353
|
+
* @example
|
|
1354
|
+
* ```ts
|
|
1355
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1356
|
+
*
|
|
1357
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1358
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1359
|
+
*
|
|
1360
|
+
* const data = await infoClient.validatorL1Votes();
|
|
1361
|
+
* ```
|
|
1362
|
+
*/
|
|
1363
|
+
validatorL1Votes(signal) {
|
|
1364
|
+
const request = {
|
|
1365
|
+
type: "validatorL1Votes",
|
|
1366
|
+
};
|
|
1367
|
+
return this.transport.request("info", request, signal);
|
|
1368
|
+
}
|
|
1369
|
+
/**
|
|
1370
|
+
* Request validator summaries.
|
|
1371
|
+
* @param signal - An optional abort signal.
|
|
1372
|
+
* @returns Array of validator summaries.
|
|
1373
|
+
*
|
|
1374
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1375
|
+
*
|
|
1376
|
+
* @see null
|
|
1377
|
+
* @example
|
|
1378
|
+
* ```ts
|
|
1379
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1380
|
+
*
|
|
1381
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1382
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1383
|
+
*
|
|
1384
|
+
* const data = await infoClient.validatorSummaries();
|
|
1385
|
+
* ```
|
|
1386
|
+
*/
|
|
1387
|
+
validatorSummaries(signal) {
|
|
1388
|
+
const request = {
|
|
1389
|
+
type: "validatorSummaries",
|
|
1390
|
+
};
|
|
1391
|
+
return this.transport.request("info", request, signal);
|
|
1392
|
+
}
|
|
1393
|
+
/**
|
|
1394
|
+
* Request details of a vault.
|
|
1395
|
+
* @param args - The parameters for the request.
|
|
1396
|
+
* @param signal - An optional abort signal.
|
|
1397
|
+
* @returns Details of a vault or null if the vault does not exist.
|
|
1398
|
+
*
|
|
1399
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1400
|
+
*
|
|
1401
|
+
* @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-details-for-a-vault
|
|
1402
|
+
* @example
|
|
1403
|
+
* ```ts
|
|
1404
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1405
|
+
*
|
|
1406
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1407
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1408
|
+
*
|
|
1409
|
+
* const data = await infoClient.vaultDetails({ vaultAddress: "0x..." });
|
|
1410
|
+
* ```
|
|
1411
|
+
*/
|
|
1412
|
+
vaultDetails(args, signal) {
|
|
1413
|
+
const request = {
|
|
1414
|
+
type: "vaultDetails",
|
|
1415
|
+
...args,
|
|
1416
|
+
};
|
|
1417
|
+
return this.transport.request("info", request, signal);
|
|
1418
|
+
}
|
|
1419
|
+
/**
|
|
1420
|
+
* Request a list of vaults less than 2 hours old.
|
|
1421
|
+
* @param signal - An optional abort signal.
|
|
1422
|
+
* @returns Array of vault summaries.
|
|
1423
|
+
*
|
|
1424
|
+
* @throws {TransportError} When the transport layer throws an error.
|
|
1425
|
+
*
|
|
1426
|
+
* @see null
|
|
1427
|
+
* @example
|
|
1428
|
+
* ```ts
|
|
1429
|
+
* import * as hl from "@nktkas/hyperliquid";
|
|
1430
|
+
*
|
|
1431
|
+
* const transport = new hl.HttpTransport(); // or WebSocketTransport
|
|
1432
|
+
* const infoClient = new hl.InfoClient({ transport });
|
|
1433
|
+
*
|
|
1434
|
+
* const data = await infoClient.vaultSummaries();
|
|
1435
|
+
* ```
|
|
1436
|
+
*/
|
|
1437
|
+
vaultSummaries(signal) {
|
|
1438
|
+
const request = {
|
|
1439
|
+
type: "vaultSummaries",
|
|
1440
|
+
};
|
|
1441
|
+
return this.transport.request("info", request, signal);
|
|
1442
|
+
}
|
|
1443
|
+
async [Symbol.asyncDispose]() {
|
|
1444
|
+
await this.transport[Symbol.asyncDispose]?.();
|
|
1213
1445
|
}
|
|
1214
|
-
|
|
1215
|
-
|
|
1446
|
+
}
|
|
1447
|
+
exports.InfoClient = InfoClient;
|