import { Observable } from 'rxjs/Observable'; import { Subject } from 'rxjs/Subject'; import { AtlasenseapiService } from './api.service'; import { AuthService } from './auth.service'; import { ConfigurationService } from './config.service'; export declare class $WebSocket { private api; private auth; private configuration; private static Helpers; private reconnectAttempts; private sendQueue; private onOpenCallbacks; private onMessageCallbacks; private onErrorCallbacks; private onCloseCallbacks; private readyStateConstants; private normalCloseCode; private reconnectableStatusCodes; private socket; private config; private dataStream; private internalConnectionState; constructor(api: AtlasenseapiService, auth: AuthService, configuration: ConfigurationService); preconnect(force?: boolean): void; connect(token: any, force?: boolean): void; send(data: any): Observable; getDataStream(): Subject; onOpenHandler(event: Event): void; notifyOpenCallbacks(event: any): void; fireQueue(): void; notifyCloseCallbacks(event: any): void; notifyErrorCallbacks(event: any): void; onOpen(cb: any): this; onClose(cb: any): this; onError(cb: any): this; onMessage(callback: any, options: any): this; onMessageHandler(message: MessageEvent): void; onCloseHandler(event: CloseEvent): void; onErrorHandler(event: any): void; reconnect(): this; close(force: boolean): this; getBackoffDelay(attempt: any): number; setInternalState(state: any): void; getReadyState(): number; } export interface WebSocketConfig { initialTimeout: number; maxTimeout: number; reconnectIfNotNormalClose: boolean; }