/** * Generic selector component for extensions. * Displays a list of string options with keyboard navigation. */ /** * [WHO]: ExtensionSelectorOptions, ExtensionSelectorComponent * [FROM]: Depends on @catui/tui, ../theme/theme.js, ./countdown-timer.js, ./dynamic-border.js, ./keybinding-hints.js * [TO]: Consumed by modes/interactive/components/index.ts * [HERE]: modes/interactive/components/extension-selector.ts - extension selector component */ import { Container, type Focusable, type TUI } from "@catui/tui"; export interface ExtensionSelectorOptions { tui?: TUI; timeout?: number; } export declare class ExtensionSelectorComponent extends Container implements Focusable { private options; private selectedIndex; private listContainer; private onSelectCallback; private onCancelCallback; private titleText; private baseTitle; private countdown; private _focused; get focused(): boolean; set focused(value: boolean); constructor(title: string, options: string[], onSelect: (option: string) => void, onCancel: () => void, opts?: ExtensionSelectorOptions); private updateList; handleInput(keyData: string): void; dispose(): void; }