import type { ActionContext } from "../actions/action-id.js"; export type FocusRegion = "composer" | "transcript" | "plan"; export type OverlayContext = "picker" | "modal" | "secret" | "transcript-search" | "pager" | "jobs"; export declare class FocusController { private readonly regionOrder; private currentRegion; private overlay; private captured; private readonly listeners; constructor(initialRegion?: FocusRegion, regionOrder?: readonly FocusRegion[]); activeContext(): ActionContext; region(): FocusRegion; hasOverlay(): boolean; get inputCaptured(): boolean; setInputCaptured(captured: boolean): void; focusRegion(region: FocusRegion): void; cycleRegion(visible?: readonly FocusRegion[]): FocusRegion; pushOverlay(context: OverlayContext): () => void; popOverlay(): void; onChange(listener: (context: ActionContext) => void): () => void; private notify; }