import type { AppOptions } from "./types.js"; export declare class PiUiExtendApp { private readonly entries; private readonly options; private readonly theme; private readonly blinkController; private readonly screenStyler; private readonly statusController; private readonly statusLineRenderer; private readonly modelUsageController; private readonly tabsController; private readonly tabLineRenderer; private readonly editorLayoutRenderer; private readonly renderController; private readonly sessionLifecycle; private readonly conversationViewport; private readonly scrollController; private readonly extensionUiController; private readonly extensionActions; private readonly pixConfig; private readonly outputFilters; private readonly commandController; private readonly inputActions; private readonly inputController; private readonly menuItems; private readonly subagentsWidgetController; private readonly todoWidgetController; private readonly terminalController; private readonly terminalBellSoundController; private readonly toastController; private readonly nerdFontController; private readonly popupActions; private readonly promptEnhancer; private readonly autocompleteController; private readonly mouseController; private readonly popupMenus; private readonly voiceController; private readonly sessionEvents; private readonly agentPauseController; private readonly shellController; private readonly queuedMessages; private readonly workspaceActions; private readonly slashCommands; private readonly toastNotifier; private readonly extensionShutdownHandler; private runtime; /** * Maps each session runtime to the isolated extension event bus it was * created with. The renderer uses this to emit signals (e.g. retry state) * back to the extensions running inside a specific runtime/tab, so a signal * for one tab never reaches another tab's extensions. */ private readonly extensionEventBusByRuntime; private readonly subagentCatalogBySessionId; private readonly inputEditor; private lastInputEditorContentVersion; private readonly requestHistory; /** Shortcut: get/set the editor text as a plain string. */ private get input(); private set input(value); private running; private scheduledRenderTimer; private todoPanelExpanded; private subagentsPanelExpanded; private allThinkingExpanded; private superCompactTools; private internalClipboardText; private voicePartialText; private resumeSessions; private resumeLoading; private draftModels; private draftModelRef; private draftThinkingLevel; private draftModelOverrideRef; constructor(options: AppOptions); private createRuntime; private loadStartupConfig; private refreshDraftModelCatalog; private resetDraftModelSelection; private selectDraftModel; private draftModelState; private draftModelStatus; private draftModelUsageSelection; private applyPixConfig; private updateOutputFilters; start(): Promise; private checkUpdatesOnStartup; private bindCurrentSession; private awaitCurrentSessionExtensions; private activateRuntime; private deactivateRuntimeForDraft; private createExtensionEventBus; private subagentTypesForRuntime; private contextInventoryText; private handleTerminalBellAttention; private afterSessionReplacement; private requireRuntime; private restoreSessionStatus; private activeExtensionUiScope; private setInput; private resetInputAfterProgrammaticEdit; private restoreTabInputState; private restoreEditorSnapshot; private clearPersistedInputDraft; private insertVoiceTranscript; private pasteInternalClipboard; private setVoicePartialTranscript; private addVoiceSystemMessage; private resetSessionView; private captureSessionView; private restoreSessionView; private loadSessionHistory; private openSearchResultInNewTab; private scrollToUserMessageJumpTarget; private findUserEntryByJumpText; private loadSessionHistoryAsync; private handleSessionEvent; private findEntry; private findUserEntry; private touchEntry; private addEntry; private setStatus; private setSessionStatus; private setSessionActivity; private toolDefaultExpanded; private toggleSuperCompactTools; private stopBlinking; private stop; private toggleTerminalBellSound; private refreshModelUsageStatusFromClick; private showToast; private toastNotifierForScope; private clearToastTimers; private render; private scheduleRender; private syncScrollAfterInputEditorChange; private conversationQuickScrollDirections; private scrollConversationQuick; private renderStatusLine; private terminalColumns; private terminalRows; }