opentool 0.19.6 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -147,6 +147,7 @@ declare class HyperliquidInfoClient {
147
147
  spotMetaAndAssetCtxs(): Promise<any>;
148
148
  assetCtxs(): Promise<any>;
149
149
  spotAssetCtxs(): Promise<any>;
150
+ outcomeMeta(): Promise<any>;
150
151
  openOrders(user: `0x${string}`): Promise<HyperliquidOpenOrderLike[]>;
151
152
  frontendOpenOrders(user: `0x${string}`): Promise<HyperliquidOpenOrderLike[]>;
152
153
  orderStatus(user: `0x${string}`, oid: number | string): Promise<any>;
@@ -166,6 +167,7 @@ declare function fetchHyperliquidSpotMeta(environment?: HyperliquidEnvironment):
166
167
  declare function fetchHyperliquidSpotMetaAndAssetCtxs(environment?: HyperliquidEnvironment): Promise<any>;
167
168
  declare function fetchHyperliquidAssetCtxs(environment?: HyperliquidEnvironment): Promise<any>;
168
169
  declare function fetchHyperliquidSpotAssetCtxs(environment?: HyperliquidEnvironment): Promise<any>;
170
+ declare function fetchHyperliquidOutcomeMeta(environment?: HyperliquidEnvironment): Promise<any>;
169
171
  declare function fetchHyperliquidOpenOrders<T extends HyperliquidOpenOrderLike = HyperliquidOpenOrderLike>(params: {
170
172
  environment?: HyperliquidEnvironment;
171
173
  user: `0x${string}`;
@@ -390,7 +392,19 @@ declare function sendHyperliquidSpot(options: {
390
392
  nonceSource?: NonceSource | undefined;
391
393
  }): Promise<HyperliquidExchangeResponse<unknown>>;
392
394
 
393
- type HyperliquidParsedSymbolKind = "perp" | "spot" | "spotIndex";
395
+ type HyperliquidParsedSymbolKind = "perp" | "spot" | "spotIndex" | "outcome";
396
+ type HyperliquidOutcomeSymbol = {
397
+ outcomeId: number;
398
+ side: number;
399
+ encoding: number;
400
+ orderSymbol: string;
401
+ marketDataCoin: string;
402
+ tokenName: string;
403
+ sideName: string;
404
+ displaySymbol: string;
405
+ routeTicker: string;
406
+ assetId: number;
407
+ };
394
408
  type HyperliquidParsedSymbol = {
395
409
  raw: string;
396
410
  kind: HyperliquidParsedSymbolKind;
@@ -432,6 +446,7 @@ type HyperliquidMarketDescriptorInput = {
432
446
  };
433
447
  declare function extractHyperliquidDex(symbol: string): string | null;
434
448
  declare function parseHyperliquidSymbol(value?: string | null): HyperliquidParsedSymbol | null;
449
+ declare function parseHyperliquidOutcomeSymbol(value?: string | null): HyperliquidOutcomeSymbol | null;
435
450
  declare function normalizeSpotTokenName(value?: string | null): string;
436
451
  declare function normalizeHyperliquidBaseSymbol(value?: string | null): string | null;
437
452
  declare function normalizeHyperliquidMetaSymbol(symbol: string): string;
@@ -500,6 +515,8 @@ declare function formatHyperliquidMarketablePrice(params: {
500
515
  side: "buy" | "sell";
501
516
  slippageBps: number;
502
517
  tick?: HyperliquidTickSize | null;
518
+ szDecimals?: number | null;
519
+ marketType?: HyperliquidMarketType;
503
520
  }): string;
504
521
  declare function extractHyperliquidOrderIds(responses: HyperliquidOrderResponseLike[]): {
505
522
  cloids: string[];
@@ -775,4 +792,4 @@ type HyperliquidApproximateLiquidationParams = {
775
792
  };
776
793
  declare function estimateHyperliquidLiquidationPrice(params: HyperliquidApproximateLiquidationParams): number | null;
777
794
 
778
- export { cancelHyperliquidTwapOrder as $, type HyperliquidPerpMarketInfo as A, type HyperliquidPlaceOrderWithTpSlOptions as B, type HyperliquidPlacePositionTpSlOptions as C, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS as D, type HyperliquidProfileAsset as E, type HyperliquidProfileAssetInput as F, type HyperliquidProfileChain as G, HYPERLIQUID_HIP3_DEXES as H, type HyperliquidResolvedMarketDescriptor as I, type HyperliquidSpotMarketInfo as J, HyperliquidTermsError as K, type HyperliquidTickSize as L, type HyperliquidTimeInForce as M, type HyperliquidTpSlExecutionType as N, type HyperliquidTpSlLegInput as O, type HyperliquidTriggerOptions as P, type HyperliquidTriggerType as Q, type MarketIdentity as R, batchModifyHyperliquidOrders as S, buildHyperliquidMarketDescriptor as T, buildHyperliquidMarketIdentity as U, buildHyperliquidProfileAssets as V, buildHyperliquidSpotUsdPriceMap as W, cancelAllHyperliquidOrders as X, cancelHyperliquidOrders as Y, cancelHyperliquidOrdersByCloid as Z, __hyperliquidMarketDataInternals as _, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS as a, resolveHyperliquidSpotSymbol as a$, computeHyperliquidMarketIocLimitPrice as a0, createHyperliquidSubAccount as a1, createMonotonicNonceFactory as a2, estimateHyperliquidLiquidationPrice as a3, extractHyperliquidDex as a4, extractHyperliquidOrderIds as a5, fetchHyperliquidActiveAsset as a6, fetchHyperliquidAllMids as a7, fetchHyperliquidAssetCtxs as a8, fetchHyperliquidBars as a9, fetchHyperliquidUserRateLimit as aA, formatHyperliquidMarketablePrice as aB, formatHyperliquidOrderSize as aC, formatHyperliquidPrice as aD, formatHyperliquidSize as aE, getKnownHyperliquidDexes as aF, isHyperliquidSpotSymbol as aG, modifyHyperliquidOrder as aH, normalizeHyperliquidBaseSymbol as aI, normalizeHyperliquidIndicatorBars as aJ, normalizeHyperliquidMetaSymbol as aK, normalizeSpotTokenName as aL, parseHyperliquidSymbol as aM, parseSpotPairSymbol as aN, placeHyperliquidOrderWithTpSl as aO, placeHyperliquidPositionTpSl as aP, placeHyperliquidTwapOrder as aQ, reserveHyperliquidRequestWeight as aR, resolveHyperliquidAbstractionFromMode as aS, resolveHyperliquidErrorDetail as aT, resolveHyperliquidLeverageMode as aU, resolveHyperliquidMarketDataCoin as aV, resolveHyperliquidOrderRef as aW, resolveHyperliquidOrderSymbol as aX, resolveHyperliquidPair as aY, resolveHyperliquidPerpSymbol as aZ, resolveHyperliquidProfileChain as a_, fetchHyperliquidDexMeta as aa, fetchHyperliquidDexMetaAndAssetCtxs as ab, fetchHyperliquidFrontendOpenOrders as ac, fetchHyperliquidFrontendOpenOrdersAcrossDexes as ad, fetchHyperliquidHistoricalOrders as ae, fetchHyperliquidMeta as af, fetchHyperliquidMetaAndAssetCtxs as ag, fetchHyperliquidOpenOrders as ah, fetchHyperliquidOpenOrdersAcrossDexes as ai, fetchHyperliquidOrderStatus as aj, fetchHyperliquidPerpMarketInfo as ak, fetchHyperliquidPreTransferCheck as al, fetchHyperliquidResolvedInfoCoin as am, fetchHyperliquidResolvedMarketDescriptor as an, fetchHyperliquidSizeDecimals as ao, fetchHyperliquidSpotAccountValue as ap, fetchHyperliquidSpotAssetCtxs as aq, fetchHyperliquidSpotClearinghouseState as ar, fetchHyperliquidSpotMarketInfo as as, fetchHyperliquidSpotMeta as at, fetchHyperliquidSpotMetaAndAssetCtxs as au, fetchHyperliquidSpotTickSize as av, fetchHyperliquidSpotUsdPriceMap as aw, fetchHyperliquidTickSize as ax, fetchHyperliquidUserFills as ay, fetchHyperliquidUserFillsByTime as az, type HyperliquidAbstraction as b, resolveHyperliquidSymbol as b0, resolveSpotMidCandidates as b1, resolveSpotTokenCandidates as b2, roundHyperliquidPriceToTick as b3, scheduleHyperliquidCancel as b4, sendHyperliquidSpot as b5, setHyperliquidAccountAbstractionMode as b6, setHyperliquidPortfolioMargin as b7, supportsHyperliquidBuilderFee as b8, transferHyperliquidSubAccount as b9, updateHyperliquidIsolatedMargin as ba, updateHyperliquidLeverage as bb, type NonceSource as bc, toApiDecimal as bd, createL1ActionHash as be, splitSignature as bf, type HyperliquidApproveBuilderFeeOptions as bg, type HyperliquidApproveBuilderFeeResponse as bh, type HyperliquidClearinghouseState as bi, type HyperliquidDepositResult as bj, type HyperliquidOrderOptions as bk, type HyperliquidOrderResponse as bl, type HyperliquidOrderStatus as bm, type HyperliquidWithdrawResult as bn, approveHyperliquidBuilderFee as bo, createHyperliquidActionHash as bp, depositToHyperliquidBridge as bq, fetchHyperliquidClearinghouseState as br, getHyperliquidMaxBuilderFee as bs, placeHyperliquidOrder as bt, withdrawFromHyperliquid as bu, type HyperliquidAccountMode as c, type HyperliquidActiveAsset as d, HyperliquidApiError as e, type HyperliquidApproximateLiquidationParams as f, type HyperliquidBar as g, type HyperliquidBarResolution as h, HyperliquidBuilderApprovalError as i, type HyperliquidBuilderFee as j, type HyperliquidEnvironment as k, HyperliquidExchangeClient as l, type HyperliquidExchangeResponse as m, type HyperliquidGrouping as n, HyperliquidGuardError as o, type HyperliquidHip3Dex as p, type HyperliquidIndicatorBar as q, HyperliquidInfoClient as r, type HyperliquidMarketDescriptor as s, type HyperliquidMarketDescriptorInput as t, type HyperliquidMarketIdentityInput as u, type HyperliquidMarketType as v, type HyperliquidOpenOrderLike as w, type HyperliquidOrderIntent as x, type HyperliquidParsedSymbol as y, type HyperliquidParsedSymbolKind as z };
795
+ export { cancelHyperliquidOrdersByCloid as $, type HyperliquidParsedSymbolKind as A, type HyperliquidPerpMarketInfo as B, type HyperliquidPlaceOrderWithTpSlOptions as C, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS as D, type HyperliquidPlacePositionTpSlOptions as E, type HyperliquidProfileAsset as F, type HyperliquidProfileAssetInput as G, HYPERLIQUID_HIP3_DEXES as H, type HyperliquidProfileChain as I, type HyperliquidResolvedMarketDescriptor as J, type HyperliquidSpotMarketInfo as K, HyperliquidTermsError as L, type HyperliquidTickSize as M, type HyperliquidTimeInForce as N, type HyperliquidTpSlExecutionType as O, type HyperliquidTpSlLegInput as P, type HyperliquidTriggerOptions as Q, type HyperliquidTriggerType as R, type MarketIdentity as S, batchModifyHyperliquidOrders as T, buildHyperliquidMarketDescriptor as U, buildHyperliquidMarketIdentity as V, buildHyperliquidProfileAssets as W, buildHyperliquidSpotUsdPriceMap as X, cancelAllHyperliquidOrders as Y, cancelHyperliquidOrders as Z, __hyperliquidMarketDataInternals as _, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS as a, resolveHyperliquidPair as a$, cancelHyperliquidTwapOrder as a0, computeHyperliquidMarketIocLimitPrice as a1, createHyperliquidSubAccount as a2, createMonotonicNonceFactory as a3, estimateHyperliquidLiquidationPrice as a4, extractHyperliquidDex as a5, extractHyperliquidOrderIds as a6, fetchHyperliquidActiveAsset as a7, fetchHyperliquidAllMids as a8, fetchHyperliquidAssetCtxs as a9, fetchHyperliquidUserFills as aA, fetchHyperliquidUserFillsByTime as aB, fetchHyperliquidUserRateLimit as aC, formatHyperliquidMarketablePrice as aD, formatHyperliquidOrderSize as aE, formatHyperliquidPrice as aF, formatHyperliquidSize as aG, getKnownHyperliquidDexes as aH, isHyperliquidSpotSymbol as aI, modifyHyperliquidOrder as aJ, normalizeHyperliquidBaseSymbol as aK, normalizeHyperliquidIndicatorBars as aL, normalizeHyperliquidMetaSymbol as aM, normalizeSpotTokenName as aN, parseHyperliquidOutcomeSymbol as aO, parseHyperliquidSymbol as aP, parseSpotPairSymbol as aQ, placeHyperliquidOrderWithTpSl as aR, placeHyperliquidPositionTpSl as aS, placeHyperliquidTwapOrder as aT, reserveHyperliquidRequestWeight as aU, resolveHyperliquidAbstractionFromMode as aV, resolveHyperliquidErrorDetail as aW, resolveHyperliquidLeverageMode as aX, resolveHyperliquidMarketDataCoin as aY, resolveHyperliquidOrderRef as aZ, resolveHyperliquidOrderSymbol as a_, fetchHyperliquidBars as aa, fetchHyperliquidDexMeta as ab, fetchHyperliquidDexMetaAndAssetCtxs as ac, fetchHyperliquidFrontendOpenOrders as ad, fetchHyperliquidFrontendOpenOrdersAcrossDexes as ae, fetchHyperliquidHistoricalOrders as af, fetchHyperliquidMeta as ag, fetchHyperliquidMetaAndAssetCtxs as ah, fetchHyperliquidOpenOrders as ai, fetchHyperliquidOpenOrdersAcrossDexes as aj, fetchHyperliquidOrderStatus as ak, fetchHyperliquidOutcomeMeta as al, fetchHyperliquidPerpMarketInfo as am, fetchHyperliquidPreTransferCheck as an, fetchHyperliquidResolvedInfoCoin as ao, fetchHyperliquidResolvedMarketDescriptor as ap, fetchHyperliquidSizeDecimals as aq, fetchHyperliquidSpotAccountValue as ar, fetchHyperliquidSpotAssetCtxs as as, fetchHyperliquidSpotClearinghouseState as at, fetchHyperliquidSpotMarketInfo as au, fetchHyperliquidSpotMeta as av, fetchHyperliquidSpotMetaAndAssetCtxs as aw, fetchHyperliquidSpotTickSize as ax, fetchHyperliquidSpotUsdPriceMap as ay, fetchHyperliquidTickSize as az, type HyperliquidAbstraction as b, resolveHyperliquidPerpSymbol as b0, resolveHyperliquidProfileChain as b1, resolveHyperliquidSpotSymbol as b2, resolveHyperliquidSymbol as b3, resolveSpotMidCandidates as b4, resolveSpotTokenCandidates as b5, roundHyperliquidPriceToTick as b6, scheduleHyperliquidCancel as b7, sendHyperliquidSpot as b8, setHyperliquidAccountAbstractionMode as b9, setHyperliquidPortfolioMargin as ba, supportsHyperliquidBuilderFee as bb, transferHyperliquidSubAccount as bc, updateHyperliquidIsolatedMargin as bd, updateHyperliquidLeverage as be, type NonceSource as bf, toApiDecimal as bg, createL1ActionHash as bh, splitSignature as bi, type HyperliquidApproveBuilderFeeOptions as bj, type HyperliquidApproveBuilderFeeResponse as bk, type HyperliquidClearinghouseState as bl, type HyperliquidDepositResult as bm, type HyperliquidOrderOptions as bn, type HyperliquidOrderResponse as bo, type HyperliquidOrderStatus as bp, type HyperliquidWithdrawResult as bq, approveHyperliquidBuilderFee as br, createHyperliquidActionHash as bs, depositToHyperliquidBridge as bt, fetchHyperliquidClearinghouseState as bu, getHyperliquidMaxBuilderFee as bv, placeHyperliquidOrder as bw, withdrawFromHyperliquid as bx, type HyperliquidAccountMode as c, type HyperliquidActiveAsset as d, HyperliquidApiError as e, type HyperliquidApproximateLiquidationParams as f, type HyperliquidBar as g, type HyperliquidBarResolution as h, HyperliquidBuilderApprovalError as i, type HyperliquidBuilderFee as j, type HyperliquidEnvironment as k, HyperliquidExchangeClient as l, type HyperliquidExchangeResponse as m, type HyperliquidGrouping as n, HyperliquidGuardError as o, type HyperliquidHip3Dex as p, type HyperliquidIndicatorBar as q, HyperliquidInfoClient as r, type HyperliquidMarketDescriptor as s, type HyperliquidMarketDescriptorInput as t, type HyperliquidMarketIdentityInput as u, type HyperliquidMarketType as v, type HyperliquidOpenOrderLike as w, type HyperliquidOrderIntent as x, type HyperliquidOutcomeSymbol as y, type HyperliquidParsedSymbol as z };
package/dist/index.d.ts CHANGED
@@ -11,7 +11,7 @@ export { AgentDigestRequest, MyToolsResponse, StoreAction, StoreError, StoreEven
11
11
  export { BACKTEST_DECISION_MODE, BacktestDecisionRequest, BacktestDecisionSeriesInput, BacktestMode, BacktestResolution, ResolvedBacktestWindow, backtestDecisionRequestSchema, buildBacktestDecisionSeriesInput, estimateCountBack, parseTimeToSeconds, resolutionToSeconds, resolveBacktestAccountValueUsd, resolveBacktestMode, resolveBacktestWindow } from './backtest/index.js';
12
12
  import { ZodSchema } from 'zod';
13
13
  export { C as ChainMetadata, a as ChainReference, b as ChainTokenMap, H as Hex, c as HexAddress, N as NonceSource, R as RpcProviderOptions, d as RpcUrlResolver, T as TokenMetadata, e as TurnkeyOptions, f as TurnkeySignWith, W as WalletBaseContext, g as WalletContext, h as WalletFullContext, i as WalletOptions, j as WalletOptionsBase, k as WalletPrivateKeyOptions, l as WalletProviderType, m as WalletReadonlyContext, n as WalletReadonlyOptions, o as WalletRegistry, p as WalletSendTransactionParams, q as WalletSignerContext, r as WalletTransferParams, s as WalletTurnkeyOptions } from './types-BaTmu0gS.js';
14
- export { D as DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, a as DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, H as HYPERLIQUID_HIP3_DEXES, b as HyperliquidAbstraction, c as HyperliquidAccountMode, d as HyperliquidActiveAsset, e as HyperliquidApiError, f as HyperliquidApproximateLiquidationParams, g as HyperliquidBar, h as HyperliquidBarResolution, i as HyperliquidBuilderApprovalError, j as HyperliquidBuilderFee, k as HyperliquidEnvironment, l as HyperliquidExchangeClient, m as HyperliquidExchangeResponse, n as HyperliquidGrouping, o as HyperliquidGuardError, p as HyperliquidHip3Dex, q as HyperliquidIndicatorBar, r as HyperliquidInfoClient, s as HyperliquidMarketDescriptor, t as HyperliquidMarketDescriptorInput, u as HyperliquidMarketIdentityInput, v as HyperliquidMarketType, w as HyperliquidOpenOrderLike, x as HyperliquidOrderIntent, y as HyperliquidParsedSymbol, z as HyperliquidParsedSymbolKind, A as HyperliquidPerpMarketInfo, B as HyperliquidPlaceOrderWithTpSlOptions, C as HyperliquidPlacePositionTpSlOptions, E as HyperliquidProfileAsset, F as HyperliquidProfileAssetInput, G as HyperliquidProfileChain, I as HyperliquidResolvedMarketDescriptor, J as HyperliquidSpotMarketInfo, K as HyperliquidTermsError, L as HyperliquidTickSize, M as HyperliquidTimeInForce, N as HyperliquidTpSlExecutionType, O as HyperliquidTpSlLegInput, P as HyperliquidTriggerOptions, Q as HyperliquidTriggerType, R as MarketIdentity, _ as __hyperliquidMarketDataInternals, S as batchModifyHyperliquidOrders, T as buildHyperliquidMarketDescriptor, U as buildHyperliquidMarketIdentity, V as buildHyperliquidProfileAssets, W as buildHyperliquidSpotUsdPriceMap, X as cancelAllHyperliquidOrders, Y as cancelHyperliquidOrders, Z as cancelHyperliquidOrdersByCloid, $ as cancelHyperliquidTwapOrder, a0 as computeHyperliquidMarketIocLimitPrice, a1 as createHyperliquidSubAccount, a2 as createMonotonicNonceFactory, a3 as estimateHyperliquidLiquidationPrice, a4 as extractHyperliquidDex, a5 as extractHyperliquidOrderIds, a6 as fetchHyperliquidActiveAsset, a7 as fetchHyperliquidAllMids, a8 as fetchHyperliquidAssetCtxs, a9 as fetchHyperliquidBars, aa as fetchHyperliquidDexMeta, ab as fetchHyperliquidDexMetaAndAssetCtxs, ac as fetchHyperliquidFrontendOpenOrders, ad as fetchHyperliquidFrontendOpenOrdersAcrossDexes, ae as fetchHyperliquidHistoricalOrders, af as fetchHyperliquidMeta, ag as fetchHyperliquidMetaAndAssetCtxs, ah as fetchHyperliquidOpenOrders, ai as fetchHyperliquidOpenOrdersAcrossDexes, aj as fetchHyperliquidOrderStatus, ak as fetchHyperliquidPerpMarketInfo, al as fetchHyperliquidPreTransferCheck, am as fetchHyperliquidResolvedInfoCoin, an as fetchHyperliquidResolvedMarketDescriptor, ao as fetchHyperliquidSizeDecimals, ap as fetchHyperliquidSpotAccountValue, aq as fetchHyperliquidSpotAssetCtxs, ar as fetchHyperliquidSpotClearinghouseState, as as fetchHyperliquidSpotMarketInfo, at as fetchHyperliquidSpotMeta, au as fetchHyperliquidSpotMetaAndAssetCtxs, av as fetchHyperliquidSpotTickSize, aw as fetchHyperliquidSpotUsdPriceMap, ax as fetchHyperliquidTickSize, ay as fetchHyperliquidUserFills, az as fetchHyperliquidUserFillsByTime, aA as fetchHyperliquidUserRateLimit, aB as formatHyperliquidMarketablePrice, aC as formatHyperliquidOrderSize, aD as formatHyperliquidPrice, aE as formatHyperliquidSize, aF as getKnownHyperliquidDexes, aG as isHyperliquidSpotSymbol, aH as modifyHyperliquidOrder, aI as normalizeHyperliquidBaseSymbol, aJ as normalizeHyperliquidIndicatorBars, aK as normalizeHyperliquidMetaSymbol, aL as normalizeSpotTokenName, aM as parseHyperliquidSymbol, aN as parseSpotPairSymbol, aO as placeHyperliquidOrderWithTpSl, aP as placeHyperliquidPositionTpSl, aQ as placeHyperliquidTwapOrder, aR as reserveHyperliquidRequestWeight, aS as resolveHyperliquidAbstractionFromMode, aT as resolveHyperliquidErrorDetail, aU as resolveHyperliquidLeverageMode, aV as resolveHyperliquidMarketDataCoin, aW as resolveHyperliquidOrderRef, aX as resolveHyperliquidOrderSymbol, aY as resolveHyperliquidPair, aZ as resolveHyperliquidPerpSymbol, a_ as resolveHyperliquidProfileChain, a$ as resolveHyperliquidSpotSymbol, b0 as resolveHyperliquidSymbol, b1 as resolveSpotMidCandidates, b2 as resolveSpotTokenCandidates, b3 as roundHyperliquidPriceToTick, b4 as scheduleHyperliquidCancel, b5 as sendHyperliquidSpot, b6 as setHyperliquidAccountAbstractionMode, b7 as setHyperliquidPortfolioMargin, b8 as supportsHyperliquidBuilderFee, b9 as transferHyperliquidSubAccount, ba as updateHyperliquidIsolatedMargin, bb as updateHyperliquidLeverage } from './browser-Bieph3Ou.js';
14
+ export { D as DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, a as DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, H as HYPERLIQUID_HIP3_DEXES, b as HyperliquidAbstraction, c as HyperliquidAccountMode, d as HyperliquidActiveAsset, e as HyperliquidApiError, f as HyperliquidApproximateLiquidationParams, g as HyperliquidBar, h as HyperliquidBarResolution, i as HyperliquidBuilderApprovalError, j as HyperliquidBuilderFee, k as HyperliquidEnvironment, l as HyperliquidExchangeClient, m as HyperliquidExchangeResponse, n as HyperliquidGrouping, o as HyperliquidGuardError, p as HyperliquidHip3Dex, q as HyperliquidIndicatorBar, r as HyperliquidInfoClient, s as HyperliquidMarketDescriptor, t as HyperliquidMarketDescriptorInput, u as HyperliquidMarketIdentityInput, v as HyperliquidMarketType, w as HyperliquidOpenOrderLike, x as HyperliquidOrderIntent, y as HyperliquidOutcomeSymbol, z as HyperliquidParsedSymbol, A as HyperliquidParsedSymbolKind, B as HyperliquidPerpMarketInfo, C as HyperliquidPlaceOrderWithTpSlOptions, E as HyperliquidPlacePositionTpSlOptions, F as HyperliquidProfileAsset, G as HyperliquidProfileAssetInput, I as HyperliquidProfileChain, J as HyperliquidResolvedMarketDescriptor, K as HyperliquidSpotMarketInfo, L as HyperliquidTermsError, M as HyperliquidTickSize, N as HyperliquidTimeInForce, O as HyperliquidTpSlExecutionType, P as HyperliquidTpSlLegInput, Q as HyperliquidTriggerOptions, R as HyperliquidTriggerType, S as MarketIdentity, _ as __hyperliquidMarketDataInternals, T as batchModifyHyperliquidOrders, U as buildHyperliquidMarketDescriptor, V as buildHyperliquidMarketIdentity, W as buildHyperliquidProfileAssets, X as buildHyperliquidSpotUsdPriceMap, Y as cancelAllHyperliquidOrders, Z as cancelHyperliquidOrders, $ as cancelHyperliquidOrdersByCloid, a0 as cancelHyperliquidTwapOrder, a1 as computeHyperliquidMarketIocLimitPrice, a2 as createHyperliquidSubAccount, a3 as createMonotonicNonceFactory, a4 as estimateHyperliquidLiquidationPrice, a5 as extractHyperliquidDex, a6 as extractHyperliquidOrderIds, a7 as fetchHyperliquidActiveAsset, a8 as fetchHyperliquidAllMids, a9 as fetchHyperliquidAssetCtxs, aa as fetchHyperliquidBars, ab as fetchHyperliquidDexMeta, ac as fetchHyperliquidDexMetaAndAssetCtxs, ad as fetchHyperliquidFrontendOpenOrders, ae as fetchHyperliquidFrontendOpenOrdersAcrossDexes, af as fetchHyperliquidHistoricalOrders, ag as fetchHyperliquidMeta, ah as fetchHyperliquidMetaAndAssetCtxs, ai as fetchHyperliquidOpenOrders, aj as fetchHyperliquidOpenOrdersAcrossDexes, ak as fetchHyperliquidOrderStatus, al as fetchHyperliquidOutcomeMeta, am as fetchHyperliquidPerpMarketInfo, an as fetchHyperliquidPreTransferCheck, ao as fetchHyperliquidResolvedInfoCoin, ap as fetchHyperliquidResolvedMarketDescriptor, aq as fetchHyperliquidSizeDecimals, ar as fetchHyperliquidSpotAccountValue, as as fetchHyperliquidSpotAssetCtxs, at as fetchHyperliquidSpotClearinghouseState, au as fetchHyperliquidSpotMarketInfo, av as fetchHyperliquidSpotMeta, aw as fetchHyperliquidSpotMetaAndAssetCtxs, ax as fetchHyperliquidSpotTickSize, ay as fetchHyperliquidSpotUsdPriceMap, az as fetchHyperliquidTickSize, aA as fetchHyperliquidUserFills, aB as fetchHyperliquidUserFillsByTime, aC as fetchHyperliquidUserRateLimit, aD as formatHyperliquidMarketablePrice, aE as formatHyperliquidOrderSize, aF as formatHyperliquidPrice, aG as formatHyperliquidSize, aH as getKnownHyperliquidDexes, aI as isHyperliquidSpotSymbol, aJ as modifyHyperliquidOrder, aK as normalizeHyperliquidBaseSymbol, aL as normalizeHyperliquidIndicatorBars, aM as normalizeHyperliquidMetaSymbol, aN as normalizeSpotTokenName, aO as parseHyperliquidOutcomeSymbol, aP as parseHyperliquidSymbol, aQ as parseSpotPairSymbol, aR as placeHyperliquidOrderWithTpSl, aS as placeHyperliquidPositionTpSl, aT as placeHyperliquidTwapOrder, aU as reserveHyperliquidRequestWeight, aV as resolveHyperliquidAbstractionFromMode, aW as resolveHyperliquidErrorDetail, aX as resolveHyperliquidLeverageMode, aY as resolveHyperliquidMarketDataCoin, aZ as resolveHyperliquidOrderRef, a_ as resolveHyperliquidOrderSymbol, a$ as resolveHyperliquidPair, b0 as resolveHyperliquidPerpSymbol, b1 as resolveHyperliquidProfileChain, b2 as resolveHyperliquidSpotSymbol, b3 as resolveHyperliquidSymbol, b4 as resolveSpotMidCandidates, b5 as resolveSpotTokenCandidates, b6 as roundHyperliquidPriceToTick, b7 as scheduleHyperliquidCancel, b8 as sendHyperliquidSpot, b9 as setHyperliquidAccountAbstractionMode, ba as setHyperliquidPortfolioMargin, bb as supportsHyperliquidBuilderFee, bc as transferHyperliquidSubAccount, bd as updateHyperliquidIsolatedMargin, be as updateHyperliquidLeverage } from './browser-lhj5OsZa.js';
15
15
  import 'viem';
16
16
  import 'viem/accounts';
17
17
 
package/dist/index.js CHANGED
@@ -1452,6 +1452,18 @@ var metaCache = /* @__PURE__ */ new Map();
1452
1452
  var spotMetaCache = /* @__PURE__ */ new Map();
1453
1453
  var perpDexsCache = /* @__PURE__ */ new Map();
1454
1454
  var UNKNOWN_SYMBOL = "UNKNOWN";
1455
+ var OUTCOME_ORDER_ASSET_OFFSET = 1e8;
1456
+ var OUTCOME_MARKET_DATA_PATTERN = /^#([0-9]+)$/;
1457
+ var OUTCOME_TOKEN_PATTERN = /^\+([0-9]+)$/;
1458
+ function parseHyperliquidOutcomeEncoding(value) {
1459
+ const trimmed = value?.trim();
1460
+ if (!trimmed) return null;
1461
+ const encodedMatch = OUTCOME_MARKET_DATA_PATTERN.exec(trimmed) ?? OUTCOME_TOKEN_PATTERN.exec(trimmed);
1462
+ if (!encodedMatch) return null;
1463
+ const encoding = Number.parseInt(encodedMatch[1] ?? "", 10);
1464
+ const side = encoding % 10;
1465
+ return Number.isSafeInteger(encoding) && encoding >= 0 && side <= 1 ? encoding : null;
1466
+ }
1455
1467
  var extractDexPrefix = (value) => {
1456
1468
  if (!value) return null;
1457
1469
  const trimmed = value.trim();
@@ -1749,6 +1761,10 @@ async function resolveHyperliquidAssetIndex(args) {
1749
1761
  if (!trimmed) {
1750
1762
  throw new Error("Hyperliquid symbol must be a non-empty string.");
1751
1763
  }
1764
+ const outcomeEncoding = parseHyperliquidOutcomeEncoding(trimmed);
1765
+ if (outcomeEncoding != null) {
1766
+ return OUTCOME_ORDER_ASSET_OFFSET + outcomeEncoding;
1767
+ }
1752
1768
  if (trimmed.startsWith("@")) {
1753
1769
  const rawIndex = trimmed.slice(1).trim();
1754
1770
  const index = Number(rawIndex);
@@ -2090,6 +2106,9 @@ function assertPositiveNumber(value, label) {
2090
2106
 
2091
2107
  // src/adapters/hyperliquid/symbols.ts
2092
2108
  var UNKNOWN_SYMBOL2 = "UNKNOWN";
2109
+ var OUTCOME_ORDER_ASSET_OFFSET2 = 1e8;
2110
+ var OUTCOME_MARKET_DATA_PATTERN2 = /^#([0-9]+)$/;
2111
+ var OUTCOME_TOKEN_PATTERN2 = /^\+([0-9]+)$/;
2093
2112
  function extractHyperliquidDex(symbol) {
2094
2113
  const idx = symbol.indexOf(":");
2095
2114
  if (idx <= 0) return null;
@@ -2100,6 +2119,21 @@ function parseHyperliquidSymbol(value) {
2100
2119
  if (!value) return null;
2101
2120
  const trimmed = value.trim();
2102
2121
  if (!trimmed) return null;
2122
+ const outcome = parseHyperliquidOutcomeSymbol(trimmed);
2123
+ if (outcome) {
2124
+ return {
2125
+ raw: trimmed,
2126
+ kind: "outcome",
2127
+ normalized: outcome.marketDataCoin,
2128
+ routeTicker: outcome.routeTicker,
2129
+ displaySymbol: outcome.displaySymbol,
2130
+ base: outcome.sideName,
2131
+ quote: "USDH",
2132
+ pair: null,
2133
+ dex: null,
2134
+ leverageMode: "cross"
2135
+ };
2136
+ }
2103
2137
  if (trimmed.startsWith("@")) {
2104
2138
  return {
2105
2139
  raw: trimmed,
@@ -2161,6 +2195,32 @@ function parseHyperliquidSymbol(value) {
2161
2195
  leverageMode: "cross"
2162
2196
  };
2163
2197
  }
2198
+ function parseHyperliquidOutcomeSymbol(value) {
2199
+ const trimmed = value?.trim();
2200
+ if (!trimmed) return null;
2201
+ const encodedMatch = OUTCOME_MARKET_DATA_PATTERN2.exec(trimmed) ?? OUTCOME_TOKEN_PATTERN2.exec(trimmed);
2202
+ if (!encodedMatch) return null;
2203
+ const encoding = Number.parseInt(encodedMatch[1] ?? "", 10);
2204
+ const outcomeId = Math.floor(encoding / 10);
2205
+ const side = encoding % 10;
2206
+ if (outcomeId == null || side == null || encoding == null || !Number.isSafeInteger(outcomeId) || !Number.isSafeInteger(side) || !Number.isSafeInteger(encoding) || outcomeId < 0 || side < 0 || side > 1 || encoding < 0) {
2207
+ return null;
2208
+ }
2209
+ const marketDataCoin = `#${encoding}`;
2210
+ const sideName = side === 0 ? "YES" : "NO";
2211
+ return {
2212
+ outcomeId,
2213
+ side,
2214
+ encoding,
2215
+ orderSymbol: marketDataCoin,
2216
+ marketDataCoin,
2217
+ tokenName: `+${encoding}`,
2218
+ sideName,
2219
+ displaySymbol: marketDataCoin,
2220
+ routeTicker: marketDataCoin,
2221
+ assetId: OUTCOME_ORDER_ASSET_OFFSET2 + encoding
2222
+ };
2223
+ }
2164
2224
  function normalizeHyperliquidQuoteSymbol(value) {
2165
2225
  if (typeof value !== "string") return null;
2166
2226
  const trimmed = value.trim();
@@ -2241,6 +2301,29 @@ function buildHyperliquidMarketDescriptor(input) {
2241
2301
  if (!parsed) return null;
2242
2302
  const explicitPair = resolveHyperliquidPair(input.pair);
2243
2303
  const explicitQuote = normalizeHyperliquidQuoteSymbol(input.quote);
2304
+ if (parsed.kind === "outcome") {
2305
+ const outcome = parseHyperliquidOutcomeSymbol(rawSymbol);
2306
+ if (!outcome) return null;
2307
+ const orderSymbol2 = input.orderSymbol?.trim() || outcome.orderSymbol;
2308
+ const marketDataCoin2 = input.marketDataCoin?.trim() || outcome.marketDataCoin;
2309
+ return {
2310
+ rawSymbol,
2311
+ kind: "outcome",
2312
+ routeTicker: outcome.routeTicker,
2313
+ displaySymbol: input.displaySymbol?.trim() || outcome.displaySymbol,
2314
+ normalized: outcome.marketDataCoin,
2315
+ orderSymbol: orderSymbol2,
2316
+ marketDataCoin: marketDataCoin2,
2317
+ base: outcome.sideName,
2318
+ quote: explicitQuote || "USDH",
2319
+ pair: null,
2320
+ canonicalPair: null,
2321
+ dex: null,
2322
+ leverageMode: "cross",
2323
+ spotIndex: null,
2324
+ assetId: input.assetId ?? outcome.assetId
2325
+ };
2326
+ }
2244
2327
  if (parsed.kind === "spot" || parsed.kind === "spotIndex") {
2245
2328
  const canonicalPair2 = explicitPair ?? parsed.pair;
2246
2329
  const pair = canonicalPair2;
@@ -2339,6 +2422,7 @@ function parseSpotPairSymbol(symbol) {
2339
2422
  function isHyperliquidSpotSymbol(symbol) {
2340
2423
  const trimmed = symbol.trim();
2341
2424
  if (!trimmed) return false;
2425
+ if (parseHyperliquidOutcomeSymbol(trimmed)) return false;
2342
2426
  if (trimmed.startsWith("@") || trimmed.includes("/")) return true;
2343
2427
  if (trimmed.includes(":")) return false;
2344
2428
  return resolveHyperliquidPair(trimmed) !== null;
@@ -2347,6 +2431,8 @@ function resolveHyperliquidMarketDataCoin(value) {
2347
2431
  if (!value) return null;
2348
2432
  const trimmed = value.trim();
2349
2433
  if (!trimmed) return null;
2434
+ const outcome = parseHyperliquidOutcomeSymbol(trimmed);
2435
+ if (outcome) return outcome.marketDataCoin;
2350
2436
  if (trimmed.startsWith("@")) return trimmed;
2351
2437
  const pair = resolveHyperliquidPair(trimmed);
2352
2438
  if (pair && !extractHyperliquidDex(trimmed)) {
@@ -2355,6 +2441,9 @@ function resolveHyperliquidMarketDataCoin(value) {
2355
2441
  return trimmed;
2356
2442
  }
2357
2443
  function supportsHyperliquidBuilderFee(params) {
2444
+ if (parseHyperliquidOutcomeSymbol(params.symbol)) {
2445
+ return false;
2446
+ }
2358
2447
  if (!isHyperliquidSpotSymbol(params.symbol)) {
2359
2448
  return true;
2360
2449
  }
@@ -2382,6 +2471,8 @@ function resolveHyperliquidOrderSymbol(value) {
2382
2471
  if (!value) return null;
2383
2472
  const trimmed = value.trim();
2384
2473
  if (!trimmed) return null;
2474
+ const outcome = parseHyperliquidOutcomeSymbol(trimmed);
2475
+ if (outcome) return outcome.orderSymbol;
2385
2476
  if (trimmed.startsWith("@")) return trimmed;
2386
2477
  if (trimmed.includes(":")) {
2387
2478
  const [rawDex, ...restParts] = trimmed.split(":");
@@ -2400,6 +2491,8 @@ function resolveHyperliquidOrderSymbol(value) {
2400
2491
  function resolveHyperliquidSymbol(asset, override) {
2401
2492
  const raw = override && override.trim().length > 0 ? override.trim() : asset.trim();
2402
2493
  if (!raw) return raw;
2494
+ const outcome = parseHyperliquidOutcomeSymbol(raw);
2495
+ if (outcome) return outcome.orderSymbol;
2403
2496
  if (raw.startsWith("@")) return raw;
2404
2497
  if (raw.includes(":")) {
2405
2498
  const [dexRaw, ...restParts] = raw.split(":");
@@ -2521,6 +2614,9 @@ var HyperliquidInfoClient = class {
2521
2614
  spotAssetCtxs() {
2522
2615
  return fetchHyperliquidSpotAssetCtxs(this.environment);
2523
2616
  }
2617
+ outcomeMeta() {
2618
+ return fetchHyperliquidOutcomeMeta(this.environment);
2619
+ }
2524
2620
  openOrders(user) {
2525
2621
  return fetchHyperliquidOpenOrders({ user, environment: this.environment });
2526
2622
  }
@@ -2605,6 +2701,9 @@ async function fetchHyperliquidAssetCtxs(environment = "mainnet") {
2605
2701
  async function fetchHyperliquidSpotAssetCtxs(environment = "mainnet") {
2606
2702
  return postInfo(environment, { type: "spotAssetCtxs" });
2607
2703
  }
2704
+ async function fetchHyperliquidOutcomeMeta(environment = "mainnet") {
2705
+ return postInfo(environment, { type: "outcomeMeta" });
2706
+ }
2608
2707
  async function fetchHyperliquidOpenOrders(params) {
2609
2708
  const env = params.environment ?? "mainnet";
2610
2709
  const orders = await postInfo(env, {
@@ -3669,6 +3768,31 @@ var StringMath = {
3669
3768
  }
3670
3769
  return digits.join("").replace(/^0+(?=\d)/, "") || "0";
3671
3770
  },
3771
+ toPrecisionDirectional(value, precision, mode) {
3772
+ if (!Number.isInteger(precision) || precision < 1) {
3773
+ throw new RangeError("Precision must be a positive integer.");
3774
+ }
3775
+ if (/^-?0+(\.0*)?$/.test(value)) return "0";
3776
+ const negative = value.startsWith("-");
3777
+ const abs = negative ? value.slice(1) : value;
3778
+ const magnitude = StringMath.log10Floor(abs);
3779
+ const shiftAmount = precision - magnitude - 1;
3780
+ const shifted = StringMath.multiplyByPow10(abs, shiftAmount);
3781
+ const rounded = StringMath.roundInteger(shifted, mode);
3782
+ const shiftedBack = StringMath.multiplyByPow10(rounded, -shiftAmount);
3783
+ return normalizeDecimalString(negative ? `-${shiftedBack}` : shiftedBack);
3784
+ },
3785
+ toFixedDirectional(value, decimals, mode) {
3786
+ if (!Number.isInteger(decimals) || decimals < 0) {
3787
+ throw new RangeError("Decimals must be a non-negative integer.");
3788
+ }
3789
+ if (decimals === 0) {
3790
+ return normalizeDecimalString(StringMath.roundInteger(value, mode));
3791
+ }
3792
+ const shifted = StringMath.multiplyByPow10(value, decimals);
3793
+ const rounded = StringMath.roundInteger(shifted, mode);
3794
+ return normalizeDecimalString(StringMath.multiplyByPow10(rounded, -decimals));
3795
+ },
3672
3796
  toPrecisionTruncate(value, precision) {
3673
3797
  if (!Number.isInteger(precision) || precision < 1) {
3674
3798
  throw new RangeError("Precision must be a positive integer.");
@@ -3761,6 +3885,26 @@ function formatHyperliquidOrderSize(value, szDecimals) {
3761
3885
  return "0";
3762
3886
  }
3763
3887
  }
3888
+ function resolveSizeDecimals(value) {
3889
+ if (typeof value !== "number" || !Number.isFinite(value)) return 8;
3890
+ return Math.max(0, Math.min(8, Math.floor(value)));
3891
+ }
3892
+ function formatDirectionalHyperliquidPrice(price, params) {
3893
+ const normalized = price.toString().trim();
3894
+ assertNumberString(normalized);
3895
+ if (/^-?\d+$/.test(normalized)) {
3896
+ return normalizeDecimalString(normalized);
3897
+ }
3898
+ const szDecimals = resolveSizeDecimals(params.szDecimals);
3899
+ const maxDecimals2 = Math.max((params.marketType === "perp" ? 6 : 8) - szDecimals, 0);
3900
+ const decimalsAdjusted = StringMath.toFixedDirectional(normalized, maxDecimals2, params.mode);
3901
+ const sigFigAdjusted = StringMath.toPrecisionDirectional(
3902
+ decimalsAdjusted,
3903
+ 5,
3904
+ params.mode
3905
+ );
3906
+ return sigFigAdjusted === "0" ? null : sigFigAdjusted;
3907
+ }
3764
3908
  function roundHyperliquidPriceToTick(price, tick, side) {
3765
3909
  if (!Number.isFinite(tick.tickDecimals) || tick.tickDecimals < 0) {
3766
3910
  throw new Error("tick.tickDecimals must be a non-negative number.");
@@ -3783,13 +3927,25 @@ function roundHyperliquidPriceToTick(price, tick, side) {
3783
3927
  return formatScaledDecimal(rounded, tick.tickDecimals);
3784
3928
  }
3785
3929
  function formatHyperliquidMarketablePrice(params) {
3786
- const { mid, side, slippageBps, tick } = params;
3930
+ const { mid, side, slippageBps, tick, szDecimals, marketType = "perp" } = params;
3787
3931
  if (!Number.isFinite(mid) || mid <= 0) {
3788
3932
  throw new Error("mid must be a positive number.");
3789
3933
  }
3790
3934
  if (!Number.isFinite(slippageBps) || slippageBps < 0) {
3791
3935
  throw new Error("slippageBps must be a non-negative number.");
3792
3936
  }
3937
+ const adjustedMid = mid * (side === "buy" ? 1 + slippageBps / 1e4 : 1 - slippageBps / 1e4);
3938
+ if (typeof szDecimals === "number" && Number.isFinite(szDecimals)) {
3939
+ const formatted = formatDirectionalHyperliquidPrice(adjustedMid, {
3940
+ szDecimals,
3941
+ marketType,
3942
+ mode: side === "buy" ? "up" : "down"
3943
+ });
3944
+ if (!formatted) {
3945
+ throw new RangeError("Marketable price is too small and was truncated to 0.");
3946
+ }
3947
+ return formatted;
3948
+ }
3793
3949
  const midString = normalizeDecimalString(mid.toString());
3794
3950
  const baseDecimals = countDecimalPlaces(midString);
3795
3951
  const workDecimals = Math.max(baseDecimals + 4, tick?.tickDecimals ?? 0, 8);
@@ -3798,12 +3954,12 @@ function formatHyperliquidMarketablePrice(params) {
3798
3954
  side === "buy" ? 1e4 + slippageBps : 1e4 - slippageBps
3799
3955
  );
3800
3956
  const adjustedScaled = side === "buy" ? ceilDiv(scaledMid * slippageNumerator, 10000n) : scaledMid * slippageNumerator / 10000n;
3801
- const adjusted = formatScaledDecimal(adjustedScaled, workDecimals);
3957
+ const adjustedString = formatScaledDecimal(adjustedScaled, workDecimals);
3802
3958
  if (tick) {
3803
- return roundHyperliquidPriceToTick(adjusted, tick, side);
3959
+ return roundHyperliquidPriceToTick(adjustedString, tick, side);
3804
3960
  }
3805
3961
  const roundedScaled = scaleDecimalToInt(
3806
- adjusted,
3962
+ adjustedString,
3807
3963
  baseDecimals,
3808
3964
  side === "buy" ? "up" : "down"
3809
3965
  );
@@ -4385,6 +4541,15 @@ async function fetchHyperliquidResolvedMarketDescriptor(params) {
4385
4541
  if (!parsed) {
4386
4542
  throw new Error(`Unable to parse Hyperliquid symbol: ${params.symbol}`);
4387
4543
  }
4544
+ if (parsed.kind === "outcome") {
4545
+ const descriptor2 = buildHyperliquidMarketDescriptor({
4546
+ symbol: params.symbol
4547
+ });
4548
+ if (!descriptor2) {
4549
+ throw new Error(`Unable to build Hyperliquid outcome market descriptor: ${params.symbol}`);
4550
+ }
4551
+ return descriptor2;
4552
+ }
4388
4553
  if (parsed.kind === "spot" || parsed.kind === "spotIndex") {
4389
4554
  const spotInfo = parsed.kind === "spotIndex" ? await fetchHyperliquidSpotMarketInfoByIndex({
4390
4555
  environment: params.environment,
@@ -4443,6 +4608,10 @@ async function fetchHyperliquidResolvedInfoCoin(params) {
4443
4608
  }
4444
4609
  async function fetchHyperliquidSizeDecimals(params) {
4445
4610
  const { symbol, environment } = params;
4611
+ const parsed = parseHyperliquidSymbol(symbol);
4612
+ if (parsed?.kind === "outcome") {
4613
+ return 0;
4614
+ }
4446
4615
  if (isHyperliquidSpotSymbol(symbol)) {
4447
4616
  const meta2 = await fetchHyperliquidSpotMeta(environment);
4448
4617
  return resolveSpotSizeDecimals(meta2, symbol);
@@ -4456,7 +4625,6 @@ async function fetchHyperliquidSizeDecimals(params) {
4456
4625
  if (match && typeof match.szDecimals === "number") {
4457
4626
  return match.szDecimals;
4458
4627
  }
4459
- const parsed = parseHyperliquidSymbol(symbol);
4460
4628
  const dex = parsed?.dex ?? null;
4461
4629
  if (!dex) {
4462
4630
  throw new Error(`No size decimals found for ${symbol}.`);
@@ -4798,7 +4966,9 @@ async function buildTpSlChildOrder(params) {
4798
4966
  mid: triggerPxNumeric,
4799
4967
  side: childSide,
4800
4968
  slippageBps: params.triggerMarketSlippageBps,
4801
- tick
4969
+ tick,
4970
+ szDecimals,
4971
+ marketType
4802
4972
  });
4803
4973
  return {
4804
4974
  symbol: params.symbol,
@@ -7922,6 +8092,6 @@ async function responseToToolResponse(response) {
7922
8092
  };
7923
8093
  }
7924
8094
 
7925
- export { AIAbortError, AIError, AIFetchError, AIResponseError, BACKTEST_DECISION_MODE, DEFAULT_BASE_URL, DEFAULT_CHAIN, DEFAULT_FACILITATOR, DEFAULT_HYPERLIQUID_CADENCE_CRON, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, DEFAULT_MODEL, DEFAULT_OPENPOND_GATEWAY_URL2 as DEFAULT_OPENPOND_GATEWAY_URL, DEFAULT_TIMEOUT_MS, DEFAULT_TOKENS, HTTP_METHODS, HYPERLIQUID_HIP3_DEXES, HyperliquidApiError, HyperliquidBuilderApprovalError, HyperliquidExchangeClient, HyperliquidGuardError, HyperliquidInfoClient, HyperliquidTermsError, NewsSignalClient, PAYMENT_HEADERS, POLYMARKET_CHAIN_ID, POLYMARKET_CLOB_AUTH_DOMAIN, POLYMARKET_CLOB_DOMAIN, POLYMARKET_ENDPOINTS, POLYMARKET_EXCHANGE_ADDRESSES, PolymarketApiError, PolymarketAuthError, PolymarketExchangeClient, PolymarketInfoClient, SUPPORTED_CURRENCIES, StoreError, WEBSEARCH_TOOL_DEFINITION, WEBSEARCH_TOOL_NAME, X402BrowserClient, X402Client, X402PaymentRequiredError, __hyperliquidInternals, __hyperliquidMarketDataInternals, approveHyperliquidBuilderFee, backtestDecisionRequestSchema, batchModifyHyperliquidOrders, buildBacktestDecisionSeriesInput, buildHmacSignature, buildHyperliquidMarketDescriptor, buildHyperliquidMarketIdentity, buildHyperliquidProfileAssets, buildHyperliquidSpotUsdPriceMap, buildL1Headers, buildL2Headers, buildPolymarketApprovalTransactions, buildPolymarketOrderAmounts, buildPolymarketOutcomeTokenApprovalTransactions, buildPolymarketUsdcApprovalTransaction, buildSignedOrderPayload, cancelAllHyperliquidOrders, cancelAllPolymarketOrders, cancelHyperliquidOrders, cancelHyperliquidOrdersByCloid, cancelHyperliquidTwapOrder, cancelMarketPolymarketOrders, cancelPolymarketOrder, cancelPolymarketOrders, chains, clampHyperliquidAbs, clampHyperliquidFloat, clampHyperliquidInt, computeHyperliquidMarketIocLimitPrice, createAIClient, createHyperliquidSubAccount, createMcpAdapter, createMonotonicNonceFactory, createOrDerivePolymarketApiKey, createPolymarketApiKey, decodePolymarketBootstrapTransaction, defineX402Payment, depositToHyperliquidBridge, derivePolymarketApiKey, ensureTextContent, estimateCountBack, estimateHyperliquidLiquidationPrice, evaluateNewsContinuationGate, executeTool, extractHyperliquidDex, extractHyperliquidOrderIds, fetchHyperliquidActiveAsset, fetchHyperliquidAllMids, fetchHyperliquidAssetCtxs, fetchHyperliquidBars, fetchHyperliquidClearinghouseState, fetchHyperliquidDexMeta, fetchHyperliquidDexMetaAndAssetCtxs, fetchHyperliquidFrontendOpenOrders, fetchHyperliquidFrontendOpenOrdersAcrossDexes, fetchHyperliquidHistoricalOrders, fetchHyperliquidMeta, fetchHyperliquidMetaAndAssetCtxs, fetchHyperliquidOpenOrders, fetchHyperliquidOpenOrdersAcrossDexes, fetchHyperliquidOrderStatus, fetchHyperliquidPerpMarketInfo, fetchHyperliquidPreTransferCheck, fetchHyperliquidResolvedInfoCoin, fetchHyperliquidResolvedMarketDescriptor, fetchHyperliquidSizeDecimals, fetchHyperliquidSpotAccountValue, fetchHyperliquidSpotAssetCtxs, fetchHyperliquidSpotClearinghouseState, fetchHyperliquidSpotMarketInfo, fetchHyperliquidSpotMeta, fetchHyperliquidSpotMetaAndAssetCtxs, fetchHyperliquidSpotTickSize, fetchHyperliquidSpotUsdPriceMap, fetchHyperliquidTickSize, fetchHyperliquidUserFills, fetchHyperliquidUserFillsByTime, fetchHyperliquidUserRateLimit, fetchNewsEventSignal, fetchNewsPropositionSignal, fetchPolymarketActivity, fetchPolymarketApprovalState, fetchPolymarketClosedPositions, fetchPolymarketDepositAddresses, fetchPolymarketMarket, fetchPolymarketMarkets, fetchPolymarketMidpoint, fetchPolymarketOrderbook, fetchPolymarketPositionValue, fetchPolymarketPositions, fetchPolymarketPrice, fetchPolymarketPriceHistory, fetchPolymarketPublicProfile, flattenMessageContent, formatHyperliquidMarketablePrice, formatHyperliquidOrderSize, formatHyperliquidPrice, formatHyperliquidSize, generateText, getHyperliquidMaxBuilderFee, getKnownHyperliquidDexes, getModelConfig, getMyPerformance, getMyTools, getRpcUrl, getX402PaymentContext, isHyperliquidSpotSymbol, isStreamingSupported, isToolCallingSupported, listModels, modifyHyperliquidOrder, normalizeHyperliquidBaseSymbol, normalizeHyperliquidDcaEntries, normalizeHyperliquidIndicatorBars, normalizeHyperliquidMetaSymbol, normalizeModelName, normalizeNumberArrayish, normalizeSpotTokenName2 as normalizeSpotTokenName, normalizeStringArrayish, parseHyperliquidJson, parseHyperliquidSymbol, parseSpotPairSymbol, parseTimeToSeconds, payX402, payX402WithWallet, placeHyperliquidOrder2 as placeHyperliquidOrder, placeHyperliquidOrderWithTpSl, placeHyperliquidPositionTpSl, placeHyperliquidTwapOrder, placePolymarketOrder, planHyperliquidTrade, postAgentDigest, readHyperliquidAccountValue, readHyperliquidNumber, readHyperliquidPerpPosition, readHyperliquidPerpPositionSize, readHyperliquidSpotAccountValue, readHyperliquidSpotBalance, readHyperliquidSpotBalanceSize, recordHyperliquidBuilderApproval, recordHyperliquidTermsAcceptance, registry, requireX402Payment, reserveHyperliquidRequestWeight, resolutionToSeconds, resolveBacktestAccountValueUsd, resolveBacktestMode, resolveBacktestWindow, resolveConfig2 as resolveConfig, resolveExchangeAddress, resolveHyperliquidAbstractionFromMode, resolveHyperliquidBudgetUsd, resolveHyperliquidCadenceCron, resolveHyperliquidCadenceFromResolution, resolveHyperliquidChain, resolveHyperliquidChainConfig, resolveHyperliquidDcaSymbolEntries, resolveHyperliquidErrorDetail, resolveHyperliquidHourlyInterval, resolveHyperliquidIntervalCron, resolveHyperliquidLeverageMode, resolveHyperliquidMarketDataCoin, resolveHyperliquidMaxPerRunUsd, resolveHyperliquidOrderRef, resolveHyperliquidOrderSymbol, resolveHyperliquidPair, resolveHyperliquidPerpSymbol, resolveHyperliquidProfileChain, resolveHyperliquidRpcEnvVar, resolveHyperliquidScheduleEvery, resolveHyperliquidScheduleUnit, resolveHyperliquidSpotSymbol, resolveHyperliquidStoreNetwork, resolveHyperliquidSymbol, resolveHyperliquidTargetSize, resolveNewsGatewayBase, resolvePolymarketBaseUrl, resolvePolymarketBootstrapContracts, resolveSpotMidCandidates, resolveSpotTokenCandidates, resolveToolset, responseToToolResponse, retrieve, roundHyperliquidPriceToTick, scheduleHyperliquidCancel, sendHyperliquidSpot, setHyperliquidAccountAbstractionMode, setHyperliquidPortfolioMargin, store, streamText, supportsHyperliquidBuilderFee, tokens, transferHyperliquidSubAccount, updateHyperliquidIsolatedMargin, updateHyperliquidLeverage, wallet, walletToolkit, withX402Payment, withdrawFromHyperliquid };
8095
+ export { AIAbortError, AIError, AIFetchError, AIResponseError, BACKTEST_DECISION_MODE, DEFAULT_BASE_URL, DEFAULT_CHAIN, DEFAULT_FACILITATOR, DEFAULT_HYPERLIQUID_CADENCE_CRON, DEFAULT_HYPERLIQUID_MARKET_SLIPPAGE_BPS, DEFAULT_HYPERLIQUID_TPSL_MARKET_SLIPPAGE_BPS, DEFAULT_MODEL, DEFAULT_OPENPOND_GATEWAY_URL2 as DEFAULT_OPENPOND_GATEWAY_URL, DEFAULT_TIMEOUT_MS, DEFAULT_TOKENS, HTTP_METHODS, HYPERLIQUID_HIP3_DEXES, HyperliquidApiError, HyperliquidBuilderApprovalError, HyperliquidExchangeClient, HyperliquidGuardError, HyperliquidInfoClient, HyperliquidTermsError, NewsSignalClient, PAYMENT_HEADERS, POLYMARKET_CHAIN_ID, POLYMARKET_CLOB_AUTH_DOMAIN, POLYMARKET_CLOB_DOMAIN, POLYMARKET_ENDPOINTS, POLYMARKET_EXCHANGE_ADDRESSES, PolymarketApiError, PolymarketAuthError, PolymarketExchangeClient, PolymarketInfoClient, SUPPORTED_CURRENCIES, StoreError, WEBSEARCH_TOOL_DEFINITION, WEBSEARCH_TOOL_NAME, X402BrowserClient, X402Client, X402PaymentRequiredError, __hyperliquidInternals, __hyperliquidMarketDataInternals, approveHyperliquidBuilderFee, backtestDecisionRequestSchema, batchModifyHyperliquidOrders, buildBacktestDecisionSeriesInput, buildHmacSignature, buildHyperliquidMarketDescriptor, buildHyperliquidMarketIdentity, buildHyperliquidProfileAssets, buildHyperliquidSpotUsdPriceMap, buildL1Headers, buildL2Headers, buildPolymarketApprovalTransactions, buildPolymarketOrderAmounts, buildPolymarketOutcomeTokenApprovalTransactions, buildPolymarketUsdcApprovalTransaction, buildSignedOrderPayload, cancelAllHyperliquidOrders, cancelAllPolymarketOrders, cancelHyperliquidOrders, cancelHyperliquidOrdersByCloid, cancelHyperliquidTwapOrder, cancelMarketPolymarketOrders, cancelPolymarketOrder, cancelPolymarketOrders, chains, clampHyperliquidAbs, clampHyperliquidFloat, clampHyperliquidInt, computeHyperliquidMarketIocLimitPrice, createAIClient, createHyperliquidSubAccount, createMcpAdapter, createMonotonicNonceFactory, createOrDerivePolymarketApiKey, createPolymarketApiKey, decodePolymarketBootstrapTransaction, defineX402Payment, depositToHyperliquidBridge, derivePolymarketApiKey, ensureTextContent, estimateCountBack, estimateHyperliquidLiquidationPrice, evaluateNewsContinuationGate, executeTool, extractHyperliquidDex, extractHyperliquidOrderIds, fetchHyperliquidActiveAsset, fetchHyperliquidAllMids, fetchHyperliquidAssetCtxs, fetchHyperliquidBars, fetchHyperliquidClearinghouseState, fetchHyperliquidDexMeta, fetchHyperliquidDexMetaAndAssetCtxs, fetchHyperliquidFrontendOpenOrders, fetchHyperliquidFrontendOpenOrdersAcrossDexes, fetchHyperliquidHistoricalOrders, fetchHyperliquidMeta, fetchHyperliquidMetaAndAssetCtxs, fetchHyperliquidOpenOrders, fetchHyperliquidOpenOrdersAcrossDexes, fetchHyperliquidOrderStatus, fetchHyperliquidOutcomeMeta, fetchHyperliquidPerpMarketInfo, fetchHyperliquidPreTransferCheck, fetchHyperliquidResolvedInfoCoin, fetchHyperliquidResolvedMarketDescriptor, fetchHyperliquidSizeDecimals, fetchHyperliquidSpotAccountValue, fetchHyperliquidSpotAssetCtxs, fetchHyperliquidSpotClearinghouseState, fetchHyperliquidSpotMarketInfo, fetchHyperliquidSpotMeta, fetchHyperliquidSpotMetaAndAssetCtxs, fetchHyperliquidSpotTickSize, fetchHyperliquidSpotUsdPriceMap, fetchHyperliquidTickSize, fetchHyperliquidUserFills, fetchHyperliquidUserFillsByTime, fetchHyperliquidUserRateLimit, fetchNewsEventSignal, fetchNewsPropositionSignal, fetchPolymarketActivity, fetchPolymarketApprovalState, fetchPolymarketClosedPositions, fetchPolymarketDepositAddresses, fetchPolymarketMarket, fetchPolymarketMarkets, fetchPolymarketMidpoint, fetchPolymarketOrderbook, fetchPolymarketPositionValue, fetchPolymarketPositions, fetchPolymarketPrice, fetchPolymarketPriceHistory, fetchPolymarketPublicProfile, flattenMessageContent, formatHyperliquidMarketablePrice, formatHyperliquidOrderSize, formatHyperliquidPrice, formatHyperliquidSize, generateText, getHyperliquidMaxBuilderFee, getKnownHyperliquidDexes, getModelConfig, getMyPerformance, getMyTools, getRpcUrl, getX402PaymentContext, isHyperliquidSpotSymbol, isStreamingSupported, isToolCallingSupported, listModels, modifyHyperliquidOrder, normalizeHyperliquidBaseSymbol, normalizeHyperliquidDcaEntries, normalizeHyperliquidIndicatorBars, normalizeHyperliquidMetaSymbol, normalizeModelName, normalizeNumberArrayish, normalizeSpotTokenName2 as normalizeSpotTokenName, normalizeStringArrayish, parseHyperliquidJson, parseHyperliquidOutcomeSymbol, parseHyperliquidSymbol, parseSpotPairSymbol, parseTimeToSeconds, payX402, payX402WithWallet, placeHyperliquidOrder2 as placeHyperliquidOrder, placeHyperliquidOrderWithTpSl, placeHyperliquidPositionTpSl, placeHyperliquidTwapOrder, placePolymarketOrder, planHyperliquidTrade, postAgentDigest, readHyperliquidAccountValue, readHyperliquidNumber, readHyperliquidPerpPosition, readHyperliquidPerpPositionSize, readHyperliquidSpotAccountValue, readHyperliquidSpotBalance, readHyperliquidSpotBalanceSize, recordHyperliquidBuilderApproval, recordHyperliquidTermsAcceptance, registry, requireX402Payment, reserveHyperliquidRequestWeight, resolutionToSeconds, resolveBacktestAccountValueUsd, resolveBacktestMode, resolveBacktestWindow, resolveConfig2 as resolveConfig, resolveExchangeAddress, resolveHyperliquidAbstractionFromMode, resolveHyperliquidBudgetUsd, resolveHyperliquidCadenceCron, resolveHyperliquidCadenceFromResolution, resolveHyperliquidChain, resolveHyperliquidChainConfig, resolveHyperliquidDcaSymbolEntries, resolveHyperliquidErrorDetail, resolveHyperliquidHourlyInterval, resolveHyperliquidIntervalCron, resolveHyperliquidLeverageMode, resolveHyperliquidMarketDataCoin, resolveHyperliquidMaxPerRunUsd, resolveHyperliquidOrderRef, resolveHyperliquidOrderSymbol, resolveHyperliquidPair, resolveHyperliquidPerpSymbol, resolveHyperliquidProfileChain, resolveHyperliquidRpcEnvVar, resolveHyperliquidScheduleEvery, resolveHyperliquidScheduleUnit, resolveHyperliquidSpotSymbol, resolveHyperliquidStoreNetwork, resolveHyperliquidSymbol, resolveHyperliquidTargetSize, resolveNewsGatewayBase, resolvePolymarketBaseUrl, resolvePolymarketBootstrapContracts, resolveSpotMidCandidates, resolveSpotTokenCandidates, resolveToolset, responseToToolResponse, retrieve, roundHyperliquidPriceToTick, scheduleHyperliquidCancel, sendHyperliquidSpot, setHyperliquidAccountAbstractionMode, setHyperliquidPortfolioMargin, store, streamText, supportsHyperliquidBuilderFee, tokens, transferHyperliquidSubAccount, updateHyperliquidIsolatedMargin, updateHyperliquidLeverage, wallet, walletToolkit, withX402Payment, withdrawFromHyperliquid };
7926
8096
  //# sourceMappingURL=index.js.map
7927
8097
  //# sourceMappingURL=index.js.map