import { OptionType } from '../../01-atoms';
type AutocompleteInput = {
    options: OptionType[];
    onChange?: (query: string) => void;
    onChangeValue?: (value: string) => void;
    onHandleKeyDown?: () => void;
    onDebouncedChange?: (query: string) => void | OptionType[] | Promise<void | OptionType[]>;
    debounceDelay?: number;
    label: string;
    onSelect?: (selectedOption: OptionType | undefined) => void;
    disabled?: boolean;
    helperText?: string;
    error?: string;
    value?: string;
};
/**
 * Autocomplete component that provides a filterable dropdown list of options.
 *
 * @component
 * @example
 * // Example usage of Autocomplete component
 * <Autocomplete
 *   label="Search"
 *   options={[{ label: 'Option 1', value: '1' }, { label: 'Option 2', value: '2' }]}
 *   onSelect={(option) => console.log('Selected:', option)}
 *   onChange={(query) => console.log('Query:', query)}
 * />
 *
 * @param {Object} props - The properties of the Autocomplete component.
 * @param {OptionType[]} props.options - The list of available options to display.
 * @param {Function} [props.onSelect] - Callback fired when an option is selected.
 * @param {Function} [props.onChange] - Callback fired when the input query changes.
 * @param {Function} [props.onDebouncedChange] - Callback fired after the user stops typing, debounced by the specified delay.
 * @param {number} [props.debounceDelay=300] - Delay in milliseconds for the debounced callback.
 * @param {Function} [props.onHandleKeyDown] - Callback fired when the Enter key is pressed.
 * @param {boolean} [props.disabled] - Whether the input is disabled.
 * @param {string} props.label - The label text for the input field.
 * @param {string} [props.helperText] - Helper text displayed below the input.
 * @param {string} [props.error] - Error message displayed below the input.
 * @param {string} [props.value=''] - The controlled value of the input.
 *
 * @returns {ReactNode} The rendered Autocomplete component.
 */
export declare function Autocomplete({ options, onSelect, onChange, onDebouncedChange, debounceDelay, onHandleKeyDown, disabled, label, helperText, error, value, }: Readonly<AutocompleteInput>): import("react").JSX.Element;
export {};
//# sourceMappingURL=Autocomplete.d.ts.map