import { type TmuxApi } from "./tmux.js"; export interface PaneMonitorConfig { pollIntervalMs: number; readySamples: number; minObservationMs: number; timeoutMs: number; captureLines: number; } export declare const DEFAULT_PANE_MONITOR_CONFIG: PaneMonitorConfig; export interface PaneMonitorState { firstSeenAt: number; readyStreak: number; activeSeen: boolean; done: boolean; } export interface PaneAttentionEvent { paneId: string; kind: "ready" | "dead"; message: string; at: number; } export interface PaneMonitorResult { ok: boolean; reason: "all-done" | "timeout"; events: PaneAttentionEvent[]; } export interface MonitorPanesOptions { leaderPaneId: string; workerPaneIds: string[]; sessionLabel?: string; tmux?: TmuxApi; config?: Partial; } export declare function createInitialPaneState(now: number): PaneMonitorState; export declare function evaluatePaneState(state: PaneMonitorState, captured: string, paneDead: boolean, paneId: string, now: number, config: Pick, sessionLabel?: string): { state: PaneMonitorState; event?: PaneAttentionEvent; }; export declare function monitorPanes(opts: MonitorPanesOptions): Promise;