import { PassThroughProps, Size } from '../../../../types'; import { ReactElement, RefObject } from 'react'; /** * Props for the SelectFieldInput component * @property {string} [placeholder] - Placeholder text displayed when input is empty * @property {Extract} [size] - Size variant of the input * @property {boolean} [disableClearButton] - Hides the clear button when true * @property {boolean} [disableToggleButton] - Hides the toggle button when true * @property {boolean} [disabled] - Disables the input entirely * @property {boolean} [readOnly] - Cannot be modified but remains interactive * @property {boolean} [required] - Marks the input as required for form validation * @property {boolean} [error] - Shows error styling on the input when true * @property {() => void} [onClear] - Callback fired when the clear button is clicked * @property {string} [id] - HTML id attribute for the input element * @property {RefObject} [inputWrapperRef] - Ref for the input wrapper div element * @property {PassThroughProps<"div">} [htmlInputWrapperProps] - Additional props passed to the wrapper div * @property {PassThroughProps<"input">} [inputProps] - Additional props passed to the input element * @property {PassThroughProps<"button">} [toggleButtonProps] - Additional props passed to the toggle button * @property {string | ReactElement} [prefix] - Content to display before the input * @property {string | ReactElement} [suffix] - Content to display after the input */ export type SelectFieldInputProps = { placeholder?: string; size?: Extract; disableClearButton?: boolean; disableToggleButton?: boolean; disabled?: boolean; readOnly?: boolean; required?: boolean; error?: boolean; onClear?: () => void; id?: string; inputWrapperRef?: RefObject; htmlInputWrapperProps?: PassThroughProps<"div">; inputProps?: PassThroughProps<"input">; toggleButtonProps?: PassThroughProps<"button">; prefix?: string | ReactElement; suffix?: string | ReactElement; }; /** * Internal input component for the SelectField that provides the text input and action buttons. * * Features: * - Text input for filtering and displaying selected values * - Optional clear button for removing the current selection * - Optional toggle button for opening/closing the dropdown menu * - Supports multiple size variants (small, medium, large) * - Fully accessible with proper ARIA labels on buttons * - Supports pass-through props for customization of internal elements * - Optional prefix and suffix content * - Error state styling * * @example * handleClear()} * prefix="$" * /> */ export declare const SelectFieldInput: { ({ placeholder, size, disableClearButton, disableToggleButton, disabled, readOnly, required, error, onClear, id, inputWrapperRef, htmlInputWrapperProps, inputProps, toggleButtonProps, prefix, suffix, }: SelectFieldInputProps): import("react/jsx-runtime").JSX.Element; displayName: string; };