UNPKG

@nktkas/hyperliquid

Version:

Hyperliquid API SDK for all major JS runtimes, written in TypeScript.

32 lines (31 loc) 1.26 kB
import * as v from "valibot"; /** * Subscription to mid price events for all coins. * @see https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/websocket/subscriptions */ export const AllMidsRequest = /* @__PURE__ */ (()=>{ return v.object({ /** Type of subscription. */ type: v.literal("allMids"), /** DEX name (empty string for main dex). */ dex: v.optional(v.string()) }); })(); // ============================================================ // Execution Logic // ============================================================ import { parse } from "../../../_base.js"; export function allMids(config, paramsOrListener, listenerOrOptions, maybeOptions) { const isListenerFirst = typeof paramsOrListener === "function"; const params = isListenerFirst ? {} : paramsOrListener; const listener = isListenerFirst ? paramsOrListener : listenerOrOptions; const options = isListenerFirst ? listenerOrOptions : maybeOptions; const payload = parse(AllMidsRequest, { type: "allMids", ...params, dex: params.dex || undefined }); return config.transport.subscribe(payload.type, payload, (e)=>{ if (e.detail.dex === payload.dex) { listener(e.detail); } }, options); } //# sourceMappingURL=allMids.js.map