import { Observable } from 'rxjs'; import { CBDAdapter } from './cbd-adapter.js'; export declare class RealtimeEngine { private adapter; private config?; private isRunning; private subscriptions; private querySubjects; private websocketServer?; private connectedClients; constructor(adapter: CBDAdapter, config?: { enabled?: boolean; websocketPort?: number; } | undefined); start(): Promise; stop(): Promise; subscribe(query: string): Observable; unsubscribe(queryOrId: string): boolean; broadcast(channel: string, data: any): void; notifyQuery(query: string, data: any): void; getStats(): { isRunning: boolean; subscriptions: number; connectedClients: number; port?: number; }; healthCheck(): { status: string; details: any; }; createRoom(roomId: string): RealtimeRoom; private handleClientConnection; private handleClientMessage; private handleClientSubscribe; private handleClientUnsubscribe; private startQueryMonitoring; private hashQuery; private isQueryHash; } export declare class RealtimeRoom { private roomId; private engine; private members; private data; constructor(roomId: string, engine: RealtimeEngine); join(userId: string): void; leave(userId: string): void; broadcast(event: string, data: any): void; setData(key: string, value: any): void; getData(key: string): any; getMembers(): string[]; getMemberCount(): number; } //# sourceMappingURL=realtime.d.ts.map