import { DashboardDataStreamNotification } from './protocols/DashboardMessageProtocol'; import { EventEmitter } from 'events'; import { WebSocketConnector } from './WebSocketConnector'; export type ObserverDashboardDataStreamEventsMap = { close: []; newrow: [row: T]; streamerror: [error: string]; }; export type ObserverDashboardDataStreamConfig = { dataStreamId: string; }; export declare interface ObserverDashboardDataStream { on>(event: U, listener: (...args: ObserverDashboardDataStreamEventsMap[U]) => void): this; off>(event: U, listener: (...args: ObserverDashboardDataStreamEventsMap[U]) => void): this; once>(event: U, listener: (...args: ObserverDashboardDataStreamEventsMap[U]) => void): this; emit>(event: U, ...args: ObserverDashboardDataStreamEventsMap[U]): boolean; } export declare class ObserverDashboardDataStream extends EventEmitter { readonly config: ObserverDashboardDataStreamConfig; private readonly _channel; private readonly _sortFn?; private _remoteClosed; private _closed; private _opened; private _rows; private _reject?; constructor(config: ObserverDashboardDataStreamConfig, _channel: WebSocketConnector, _sortFn?: ((a: T, b: T) => number) | undefined); get id(): string; get rows(): T[]; get closed(): boolean; get opened(): boolean; [Symbol.iterator](): IterableIterator; close(): void; open(): Promise; private _request; private _notify; dispatch(event: DashboardDataStreamNotification['event']): void; } //# sourceMappingURL=ObservedDashboardDataStream.d.ts.map