import { BookChange, BookTicker, Trade } from '../types';
import { Mapper } from './mapper';
export declare class OkexSpreadsTradesMapper implements Mapper<'okex-spreads', Trade> {
    canHandle(message: any): boolean;
    getFilters(symbols?: string[]): {
        channel: "sprd-public-trades";
        symbols: string[] | undefined;
    }[];
    map(okexTradesMessage: OkexSpreadTradeMessage, localTimestamp: Date): IterableIterator<Trade>;
}
export declare class OkexSpreadsBookChangeMapper implements Mapper<'okex-spreads', BookChange> {
    canHandle(message: any): boolean;
    getFilters(symbols?: string[]): {
        channel: string;
        symbols: string[] | undefined;
    }[];
    map(okexDepthDataMessage: OkexSpreadBookMessage, localTimestamp: Date): IterableIterator<BookChange>;
}
export declare class OkexSpreadsBookTickerMapper implements Mapper<'okex-spreads', BookTicker> {
    canHandle(message: any): boolean;
    getFilters(symbols?: string[]): {
        channel: "sprd-bbo-tbt";
        symbols: string[] | undefined;
    }[];
    map(message: OkexSpreadBBOMessage, localTimestamp: Date): IterableIterator<BookTicker>;
}
type OkexSpreadTradeMessage = {
    arg: {
        channel: 'sprd-public-trades';
        sprdId: 'ETH-USD-SWAP_ETH-USD-240329';
    };
    data: [
        {
            sprdId: 'ETH-USD-SWAP_ETH-USD-240329';
            tradeId: '2102504804202430464';
            px: '64.9';
            sz: '13430';
            side: 'sell' | 'buy';
            ts: '1703155852033';
        }
    ];
};
type OkexSpreadBookLevel = [string, string, string, string];
type OkexSpreadBookMessage = {
    arg: {
        channel: 'sprd-books5';
        sprdId: 'ETH-USD-231222_ETH-USD-231229';
    };
    data: [
        {
            bids: OkexSpreadBookLevel[];
            asks: OkexSpreadBookLevel[];
            ts: '1703155852055';
        }
    ];
};
type OkexSpreadBBOMessage = {
    arg: {
        channel: 'sprd-bbo-tbt';
        sprdId: 'BTC-USD-SWAP_BTC-USD-231229';
    };
    data: [{
        bids: [OkexSpreadBookLevel];
        asks: [OkexSpreadBookLevel];
        ts: '1703155859214';
    }];
};
export {};
//# sourceMappingURL=okexspreads.d.ts.map