import * as React from "react"; export interface SearchableSelectProps { /** Currently selected value. Can be one of the items or a custom string. */ value?: string; /** Callback when the value changes (from selection or custom input). */ onValueChange?: (value: string) => void; /** Placeholder shown when no value is selected. */ placeholder?: string; /** Label above the field. */ label?: React.ReactNode | string; /** Size variant. */ size?: "smallest" | "small" | "medium" | "large"; /** Whether the field is disabled. */ disabled?: boolean; /** Whether to show an error state. */ error?: boolean; /** Whether to use the invisible (borderless) style. */ invisible?: boolean; /** CSS class for the trigger button. */ className?: string; /** CSS class for the trigger input area. */ inputClassName?: string; /** Render the selected value in a custom way in the trigger. */ renderValue?: (value: string) => React.ReactNode; /** Whether the popover should trap focus. */ modalPopover?: boolean; /** If true, allow accepting the typed text as the value even if it doesn't match an item. */ allowCustomValues?: boolean; /** Portal container element. */ portalContainer?: HTMLElement | null; /** If true, auto-open the popover on mount so the user can start typing immediately. */ autoFocus?: boolean; /** The option items — use SearchableSelectItem. */ children: React.ReactNode; } export interface SearchableSelectItemProps { value: string; children?: React.ReactNode; className?: string; } export declare const SearchableSelect: React.ForwardRefExoticComponent>; /** * A single option inside a SearchableSelect. * The `value` prop is the string value that gets selected. * The `children` is what's displayed in the dropdown. * This component is not rendered directly — SearchableSelect reads its props. */ export declare function SearchableSelectItem(_props: SearchableSelectItemProps): null;