import { Select as AntDSelect, SelectProps as AntDSelectProps } from 'antd';
import type { SelectValue as AntdSelectValue } from 'antd/lib/select';
import React, { FC } from 'react';
import { DangerouslySetAntdProps } from '../types';
import { RefSelectProps } from 'antd/es/select';
export declare type SelectValue = AntdSelectValue;
declare type OmittedProps = 'bordered' | 'autoClearSearchValue' | 'dropdownRender' | 'dropdownStyle' | 'size' | 'suffixIcon' | 'tagRender' | 'clearIcon' | 'removeIcon' | 'showArrow' | 'dropdownMatchSelectWidth' | 'menuItemSelectedIcon' | 'showSearch';
export interface SelectProps<T = string> extends Omit<AntDSelectProps<T>, OmittedProps>, DangerouslySetAntdProps<Pick<AntDSelectProps<T>, OmittedProps>> {
}
export interface SelectInterface<T> extends FC<SelectProps<T>> {
    Option: typeof AntDSelect.Option;
}
export interface OptionProps {
    value: string | number;
    disabled?: boolean;
    key?: string | number;
    title?: string;
    label?: React.ReactNode;
    children: React.ReactNode;
    'data-testid'?: string;
    onClick?: () => void;
    className?: string;
}
export declare const Option: React.ForwardRefExoticComponent<OptionProps & React.RefAttributes<HTMLElement>>;
export declare const Select: (<T extends AntdSelectValue>(props: SelectProps<T> & {
    ref?: RefSelectProps | undefined;
}) => JSX.Element) & {
    Option: React.ForwardRefExoticComponent<OptionProps & React.RefAttributes<HTMLElement>>;
};
export declare const __INTERNAL_DO_NOT_USE__Option: React.ForwardRefExoticComponent<OptionProps & React.RefAttributes<HTMLElement>>;
export {};
//# sourceMappingURL=Select.d.ts.map