import { type HTMLAttributes, ReactNode } from 'react';
export type OptionType = {
    value: number | string;
    label: string;
};
type MultiSelectProps = {
    label: string;
    options: OptionType[];
    value?: OptionType[];
    onChange?: (selectedOptions: OptionType[]) => void;
    disabled?: boolean;
    helperText?: string;
    error?: string;
} & Omit<HTMLAttributes<HTMLDivElement>, 'onClick'>;
/**
 * MultiSelect component for rendering a multi-select dropdown.
 *
 * @component
 * @example
 * // Example usage of MultiSelect component
 * const options = [
 *   { value: 1, label: 'Option 1' },
 *   { value: 2, label: 'Option 2' },
 * ];
 * const handleChange = (selectedOptions) => console.log(selectedOptions);
 *
 * <MultiSelect
 *   label="Select Options"
 *   options={options}
 *   value={[options[0]]}
 *   onChange={handleChange}
 *   disabled={false}
 *   helperText="Select multiple options"
 *   error=""
 * />
 *
 * @param {MultiSelectProps} props - The properties of the MultiSelect component.
 * @param {string} props.label - The label for the multi-select input.
 * @param {OptionType[]} props.options - Array of options to be displayed in the dropdown.
 * @param {OptionType[]} [props.value] - Array of selected options.
 * @param {function} [props.onChange] - Callback function to handle change in selected options.
 * @param {boolean} [props.disabled] - Boolean to disable the multi-select input.
 * @param {string} [props.helperText] - Helper text to be displayed below the input.
 * @param {string} [props.error] - Error message to be displayed below the input.
 * @param {HTMLAttributes<HTMLDivElement>} [props.restProps] - Additional HTML attributes for the container div.
 *
 * @returns {ReactNode} The rendered MultiSelect component.
 */
export declare function MultiSelect({ options, value, onChange, label, disabled, helperText, error, ...restProps }: MultiSelectProps): ReactNode;
export {};
//# sourceMappingURL=MultiSelect.d.ts.map