UNPKG

@hackape/tardis-dev

Version:

Convenient access to tick-level historical and real-time cryptocurrency market data via Node.js

106 lines 3.98 kB
import { BookChange, DerivativeTicker, Exchange, Trade } from '../types'; import { Mapper } from './mapper'; export declare class BybitTradesMapper implements Mapper<'bybit', Trade> { private readonly _exchange; private readonly _seenSymbols; constructor(_exchange: Exchange); canHandle(message: BybitDataMessage): boolean; getFilters(symbols?: string[]): { readonly channel: "trade"; readonly symbols: string[] | undefined; }[]; map(message: BybitTradeDataMessage, localTimestamp: Date): IterableIterator<Trade>; } export declare class BybitBookChangeMapper implements Mapper<'bybit', BookChange> { protected readonly _exchange: Exchange; private readonly _canUseBook200Channel; constructor(_exchange: Exchange, _canUseBook200Channel: boolean); canHandle(message: BybitDataMessage): boolean; getFilters(symbols?: string[]): { readonly channel: "orderBook_200"; readonly symbols: string[] | undefined; }[] | { readonly channel: "orderBookL2_25"; readonly symbols: string[] | undefined; }[]; map(message: BybitBookSnapshotDataMessage | BybitBookSnapshotUpdateMessage, localTimestamp: Date): Generator<{ readonly type: "book_change"; readonly symbol: string; readonly exchange: "bitmex" | "deribit" | "binance-futures" | "binance-delivery" | "binance" | "ftx" | "okex-futures" | "okex-options" | "okex-swap" | "okex" | "huobi-dm" | "huobi-dm-swap" | "huobi" | "bitfinex-derivatives" | "bitfinex" | "coinbase" | "cryptofacilities" | "kraken" | "bitstamp" | "gemini" | "poloniex" | "bybit" | "phemex" | "delta" | "ftx-us" | "binance-us" | "gate-io-futures" | "gate-io" | "okcoin" | "bitflyer" | "hitbtc" | "coinflex" | "binance-jersey" | "binance-dex"; readonly isSnapshot: boolean; readonly bids: { price: number; amount: number; }[]; readonly asks: { price: number; amount: number; }[]; readonly timestamp: Date; readonly localTimestamp: Date; }, void, unknown>; private _mapBookLevel; } export declare class BybitDerivativeTickerMapper implements Mapper<'bybit', DerivativeTicker> { private readonly pendingTickerInfoHelper; canHandle(message: BybitDataMessage): boolean; getFilters(symbols?: string[]): { readonly channel: "instrument_info"; readonly symbols: string[] | undefined; }[]; map(message: BybitInstrumentDataMessage, localTimestamp: Date): IterableIterator<DerivativeTicker>; } declare type BybitDataMessage = { topic: string; }; declare type BybitTradeDataMessage = BybitDataMessage & { data: { timestamp: string; trade_time_ms?: number | string; symbol: string; side: 'Buy' | 'Sell'; size: number; price: number | string; trade_id: string; }[]; }; declare type BybitBookLevel = { price: string; side: 'Buy' | 'Sell'; size?: number; }; declare type BybitBookSnapshotDataMessage = BybitDataMessage & { type: 'snapshot'; data: BybitBookLevel[] | { order_book: BybitBookLevel[]; }; timestamp_e6: number | string; }; declare type BybitBookSnapshotUpdateMessage = BybitDataMessage & { type: 'delta'; data: { delete: BybitBookLevel[]; update: BybitBookLevel[]; insert: BybitBookLevel[]; }; timestamp_e6: number | string; }; declare type BybitInstrumentUpdate = { symbol: string; mark_price_e4?: number; index_price_e4?: number; open_interest?: number; open_interest_e8?: number; funding_rate_e6?: number; predicted_funding_rate_e6?: number; next_funding_time?: string; last_price_e4?: number; updated_at: string; }; declare type BybitInstrumentDataMessage = BybitDataMessage & { data: BybitInstrumentUpdate | { update: [BybitInstrumentUpdate]; }; }; export {}; //# sourceMappingURL=bybit.d.ts.map