import type { Market, MarketDisplay } from '@lifi/perps-types'; import type { PerpsSDKClient } from '../types/provider.js'; import { ReferenceDataRegistry } from './referenceDataRegistry.js'; /** * Per-provider index over the backend's enriched `/markets` list, keyed by * `Market.id` — the venue wire key (Hyperliquid: the coin string, Lighter: * the stringified `market_index`). Obtain via {@link getMarketRegistry}; * shared by the provider packages' REST services and WS providers. * * @public */ export declare class MarketRegistry extends ReferenceDataRegistry { constructor(client: PerpsSDKClient, provider: string); /** The most recently synced market list. Empty before the first {@link sync}. */ get markets(): readonly Market[]; /** * Lookup by `Market.id`, throwing when the backend list does not know the * id. The list is the source of truth for every tradable market, so an id * the venue references but the backend does not know is a hard error — * never a silent fallback to an unenriched stand-in. * * @throws {PerpsError} `MarketNotFound`. */ require(marketId: string): Market; protected fetchItems(bypassHttpCache: boolean): Promise; protected keyOf(market: Market): string; } /** * The stable {@link MarketRegistry} for `(client, provider)`. * * @public */ export declare function getMarketRegistry(client: PerpsSDKClient, provider: string): MarketRegistry; /** * Project a {@link Market} to the {@link MarketDisplay} identity embedded on * mapped positions/orders/fills, preserving the backend's `baseAsset` and * `quoteAsset` verbatim (logos, display names). * * @public */ export declare const toMarketDisplay: (market: Market) => MarketDisplay; //# sourceMappingURL=marketRegistry.d.ts.map