import type { ReactNode } from 'react'; import type { ListCollection } from '@ark-ui/react/collection'; import { type SelectDataItem } from '../Select'; export interface InlineEditSelectProps { /** * Options; the collection is built internally (PaginationPageSize * precedent). Provide exactly one of `items` / `collection`. */ items?: SelectDataItem[]; /** * A prebuilt collection (e.g. built once upstream, or with custom * filtering/sorting). Provide exactly one of `items` / `collection` — a * dev-only warning fires otherwise. */ collection?: ListCollection; multiple?: boolean; /** * `InlineEditSelect` IS the prewired `Select` root — the draft binding, * `defaultOpen`, and commit-on-close all live here. `children` are * ordinary `Select` compound parts (`SelectButton`/`SelectInput`, * `SelectPositioner > SelectContent > SelectOption…`) — exactly as you'd * compose a standalone `Select`. `SelectButton` already cascades its own * testid slot from this root with zero extra wiring (`{base}--button`). * `SelectOption` cascades too, but nested one level further: `SelectContent` * re-provides the cascade scoped to its own `content` slot (a `ScrollArea` * implementation detail — see its own testid comment), so bare options * resolve under `{base}--content--option` rather than `{base}--option`. * That cascaded id also has no per-item disambiguation (every option in a * collection resolves to the same testid) — pass a per-item `data-testid` * override if a test needs to address one option by id rather than by text. * `SelectInput` (the multiple-select trigger) does not cascade on its own — * pass it `data-testid` explicitly if you need one. */ children: ReactNode; } export declare const InlineEditSelect: { ({ items, collection, multiple, children, }: InlineEditSelectProps): import("react").JSX.Element; displayName: string; };