import { Column } from '../models/Column'; /** * An in-cell editable dropdown for data-mapped columns. The input sits exactly * over the cell (same size and look) with a chevron and a styled list of the * map's display values below it, so editing feels like the cell itself opening * a dropdown rather than a separate control floating over the grid. * * Typing filters the list; arrow keys move the highlight; Enter or a click * commits. A Menu column is pick-only (read-only input). When the column's * DataMap is editable, a typed value that isn't on the list is kept as-is; * otherwise the commit snaps back to a matching option. */ export declare class DropDownEditor { private onCommit; private onCancel; private root; private input; private arrow; private listEl; private options; private highlight; private editable; constructor(onCommit: (value: string) => void, onCancel: () => void); open(parent: HTMLElement, column: Column, item: Record, rect: DOMRect): void; close(): void; private filter; private toggleList; private renderList; private positionList; private onKeyDown; private move; private commitInput; }