/** * Drop-in replacement for pi-tui's `SelectList` that wraps long item labels * across multiple terminal rows with a `↳ ` continuation marker instead of * truncating them. Arrow keys move item-to-item — not row-to-row — so * navigation stays predictable regardless of label height. */ import type { Component, SelectItem, SelectListTheme } from '@earendil-works/pi-tui'; export declare class WrappingSelectList implements Component { private items; private filteredItems; private selectedIndex; private maxVisible; private theme; /** When true, items are toggled (space) and confirmed together (enter) instead of selected one at a time. */ private multiSelect; /** Values toggled on in multi-select mode. */ private checkedValues; onSelect?: (item: SelectItem) => void; onCancel?: () => void; onSelectionChange?: (item: SelectItem) => void; /** Called when the user confirms a multi-select list with Enter; receives all checked items in display order. */ onConfirmMulti?: (items: SelectItem[]) => void; constructor(items: SelectItem[], maxVisible: number, theme: SelectListTheme, multiSelect?: boolean); setFilter(filter: string): void; setSelectedIndex(index: number): void; invalidate(): void; getSelectedItem(): SelectItem | null; render(width: number): string[]; handleInput(keyData: string): void; private renderItem; private getDisplayValue; private notifySelectionChange; } //# sourceMappingURL=wrapping-select-list.d.ts.map