import { type Subscription } from '@lifi/perps-types'; import type { GetQuoteParams } from '../services/getQuote.js'; import type { PerpsSDKClient, QuoteListener } from '../types/provider.js'; import type { EventForSubscription, WsProvider, WsStatusListener } from './types.js'; export type WsProviderFactory = (params: { provider: string; wsUrl: string; markets: string[]; client: PerpsSDKClient; }) => WsProvider; export interface PerpsWsClientOptions { wsProviders?: Record; } export declare class PerpsWsClient { private readonly client; private readonly options; private providers; private initPromises; constructor(client: PerpsSDKClient, options?: PerpsWsClientOptions); subscribe(sub: S, listener: (event: EventForSubscription) => void, onStatus?: WsStatusListener): Promise<() => void>; subscribeQuote(params: GetQuoteParams, onQuote: QuoteListener): Promise<() => void>; close(): void; reconnect(provider: string): void; private getOrCreateProvider; private initProvider; } //# sourceMappingURL=PerpsWsClient.d.ts.map