/// import { EventEmitter } from "events"; import { ConnectionStatus } from "../enum"; import { ConnectionStateOptions, StateWatcher } from "../types"; import Watcher from "./watcher"; declare interface ConnectionStateWatcher { on(event: ConnectionStatus.Connected, listener: () => void): this; on(event: ConnectionStatus.Disconnected, listener: () => void): this; on(event: ConnectionStatus.Update, listener: (connected: boolean) => void): this; } declare class ConnectionStateWatcher extends EventEmitter implements StateWatcher { path: string; connection: string; watcher: Watcher; state: string | undefined; constructor({ connection, path, onConnected, onDisconnected, onUpdate, }: ConnectionStateOptions); private onModified; onConnected(callback: () => void): void; onDisconnected(callback: () => void): void; onUpdate(callback: (connected: boolean) => void): void; get connected(): boolean; } export default ConnectionStateWatcher;