import type { OpencodeClient as SdkOpencodeClient } from '@opencode-ai/sdk'; export interface EventStreamManagerDeps { getClient: () => SdkOpencodeClient | null; emitEvent: (type: string, event: unknown) => void; } export declare class EventStreamManager { private deps; private eventAbortController; private eventReconnectTimer; private eventReconnectAttempt; private eventListeningEnabled; private eventStreamActive; private directoryEventStreams; private pendingDirectoryStreams; constructor(deps: EventStreamManagerDeps); setListeningEnabled(v: boolean): void; resetReconnectAttempt(): void; isActive(): boolean; setActive(v: boolean): void; clearReconnectTimer(): void; scheduleReconnect(reason: string): void; clearDirectoryEventReconnectTimer(directory: string): void; scheduleDirectoryEventReconnect(directory: string, reason: string): void; ensureDirectoryEventStream(directory: string): Promise; private _createDirectoryEventStream; start(): Promise; handleEvent(event: { type: string; properties?: Record; }): void; disconnect(): void; } //# sourceMappingURL=event-stream.d.ts.map