import { Writable } from 'stream'; import { Filter } from '../types.ts'; import { MultiConnectionRealTimeFeedBase, PoolingClientBase, RealTimeFeedBase } from './realtimefeed.ts'; declare const BINANCE_FUTURES_PUBLIC_STREAM_PATH = "/public/stream"; declare const BINANCE_FUTURES_MARKET_STREAM_PATH = "/market/stream"; type BinanceFuturesStreamPath = typeof BINANCE_FUTURES_PUBLIC_STREAM_PATH | typeof BINANCE_FUTURES_MARKET_STREAM_PATH; declare abstract class BinanceRealTimeFeedBase extends MultiConnectionRealTimeFeedBase { protected abstract wssURL: string; protected abstract httpURL: string; protected abstract suffixes: { [key: string]: string; }; protected abstract depthRequestRequestWeight: number; protected _getRealTimeFeeds(exchange: string, filters: Filter[], timeoutIntervalMS?: number, onError?: (error: Error) => void): Generator; } declare class BinanceFuturesOpenInterestClient extends PoolingClientBase { private readonly _exchange; private readonly _httpURL; private readonly _instruments; private readonly _minPollingIntervalMS; private readonly _minAvailableWeightBuffer; private readonly _maxPollingIntervalMS; private _currentPollingIntervalMS; private _requestWeightLimit; private _usedWeight; constructor(_exchange: string, _httpURL: string, _instruments: string[], onError?: (error: Error) => void); protected getPoolingDelayMS(): number; protected poolDataToStream(outputStream: Writable): Promise; private _waitForAvailableWeight; private _initializeRateLimitInfo; private _getBatchSize; private _notifyError; private _updateUsedWeight; } declare class BinanceSingleConnectionRealTimeFeed extends RealTimeFeedBase { protected wssURL: string; private readonly _httpURL; private readonly _suffixes; private readonly _depthRequestRequestWeight; constructor(exchange: string, filters: Filter[], wssURL: string, _httpURL: string, _suffixes: { [key: string]: string; }, _depthRequestRequestWeight: number, timeoutIntervalMS: number | undefined, onError?: (error: Error) => void); protected mapToSubscribeMessages(filters: Filter[]): any[]; protected messageIsError(message: any): boolean; protected provideManualSnapshots(filters: Filter[], shouldCancel: () => boolean): Promise; } declare class BinanceFuturesSingleConnectionRealTimeFeed extends BinanceSingleConnectionRealTimeFeed { private readonly _streamPath; constructor(exchange: string, filters: Filter[], _streamPath: BinanceFuturesStreamPath, httpURL: string, suffixes: { [key: string]: string; }, depthRequestRequestWeight: number, timeoutIntervalMS: number | undefined, onError?: (error: Error) => void); protected getWebSocketUrl(): Promise; } export declare class BinanceRealTimeFeed extends BinanceRealTimeFeedBase { protected wssURL: string; protected httpURL: string; protected suffixes: { depth: string; }; protected depthRequestRequestWeight: number; } export declare class BinanceJerseyRealTimeFeed extends BinanceRealTimeFeedBase { protected wssURL: string; protected httpURL: string; protected suffixes: { depth: string; }; protected depthRequestRequestWeight: number; } export declare class BinanceUSRealTimeFeed extends BinanceRealTimeFeedBase { protected wssURL: string; protected httpURL: string; protected suffixes: { depth: string; }; protected depthRequestRequestWeight: number; } export declare class BinanceFuturesRealTimeFeed extends BinanceRealTimeFeedBase { protected wssURL: string; protected httpURL: string; protected suffixes: { depth: string; markPrice: string; }; protected depthRequestRequestWeight: number; protected _getRealTimeFeeds(exchange: string, filters: Filter[], timeoutIntervalMS?: number, onError?: (error: Error) => void): Generator; } export declare class BinanceDeliveryRealTimeFeed extends BinanceRealTimeFeedBase { protected wssURL: string; protected httpURL: string; protected suffixes: { depth: string; markPrice: string; indexPrice: string; }; protected depthRequestRequestWeight: number; } export {}; //# sourceMappingURL=binance.d.ts.map