import type { InputEvent } from "../../input/event.ts"; import type { Component } from "../../runtime/component.ts"; export interface SelectListItem { readonly id: string; readonly label: string; readonly description?: string; } export interface SelectListTheme { readonly text?: (text: string) => string; readonly selectedPrefix?: (text: string) => string; readonly selectedText?: (text: string) => string; readonly description?: (text: string) => string; } export interface SelectListOptions { readonly items: readonly SelectListItem[]; readonly selectedIndex?: number; readonly maxVisibleRows?: number; readonly filter?: string; readonly theme?: SelectListTheme; readonly onSelect?: (item: SelectListItem) => void; readonly onCancel?: () => void; } export declare class SelectList implements Component { private items; private selectedIndex; private maxVisibleRows; private filter; private readonly theme; private readonly onSelect?; private readonly onCancel?; constructor(options: SelectListOptions); setItems(items: readonly SelectListItem[]): void; setFilter(filter: string): void; get selectedItem(): SelectListItem | undefined; handleInput(event: InputEvent): boolean; render(width: number, height?: number): string[]; private get visibleItems(); private move; } //# sourceMappingURL=component.d.ts.map