/**
 * Select family type definitions
 * @countermeasure/web-components/primitives/select
 */
export interface SelectOption {
    value: string;
    label: string;
    disabled?: boolean;
    group?: string;
}
export interface SelectConfig {
    container?: HTMLElement | string;
    options: SelectOption[];
    value?: string;
    placeholder?: string;
    disabled?: boolean;
    searchable?: boolean;
    size?: 'sm' | 'md' | 'lg';
    ariaLabel?: string;
    className?: string;
    onChange?: (value: string) => void;
    onOpen?: () => void;
    onClose?: () => void;
}
export interface NativeSelectConfig {
    container?: HTMLElement | string;
    options: SelectOption[];
    value?: string;
    disabled?: boolean;
    required?: boolean;
    name?: string;
    ariaLabel?: string;
    className?: string;
    onChange?: (value: string) => void;
}
export interface ComboboxConfig {
    container?: HTMLElement | string;
    options: SelectOption[];
    value?: string;
    placeholder?: string;
    disabled?: boolean;
    creatable?: boolean;
    ariaLabel?: string;
    className?: string;
    onSearch?: (query: string) => void;
    onChange?: (value: string) => void;
    onCreate?: (value: string) => void;
}
//# sourceMappingURL=types.d.ts.map