import type { ExtensionContext } from "@earendil-works/pi-coding-agent"; import type { CodePreviewSettings } from "./code-preview.js"; import type { FabricConversationTranscriptRendererOptions } from "./conversation-render.js"; import type { FabricState } from "../fabric-state.js"; import { type FabricDashboardSnapshot } from "./types.js"; export declare class FabricUiController { #private; readonly state: FabricState; readonly codePreviewSettings?: CodePreviewSettings | undefined; readonly conversationRenderers?: FabricConversationTranscriptRendererOptions | undefined; constructor(state: FabricState, codePreviewSettings?: CodePreviewSettings | undefined, conversationRenderers?: FabricConversationTranscriptRendererOptions | undefined); start(context: ExtensionContext): void; stop(): void; /** True while Fabric owns keyboard input, including asynchronous view setup. */ get ownsInput(): boolean; /** Focus the bottom widget so its participant rows can be expanded in place. */ focusWidget(context: ExtensionContext): void; /** Without an ID, focus the footer list; explicit IDs open single-task detail. */ openTasks(context: ExtensionContext, query?: string): Promise; openConversation(context: ExtensionContext, query?: string): Promise; openDashboard(context: ExtensionContext): Promise; snapshot(): FabricDashboardSnapshot; } //# sourceMappingURL=controller.d.ts.map