import { PureComponent } from 'react'; import { PopperContent } from '../Tooltip/PopperController'; export interface SelectOptionItem { label?: string; value?: T; imgUrl?: string; description?: string; [key: string]: any; } export interface CommonProps { defaultValue?: any; getOptionLabel?: (item: SelectOptionItem) => string; getOptionValue?: (item: SelectOptionItem) => string; onChange: (item: SelectOptionItem) => {} | void; placeholder?: string; width?: number; value?: SelectOptionItem; className?: string; isDisabled?: boolean; isSearchable?: boolean; isClearable?: boolean; autoFocus?: boolean; openMenuOnFocus?: boolean; onBlur?: () => void; maxMenuHeight?: number; isLoading?: boolean; noOptionsMessage?: () => string; isMulti?: boolean; backspaceRemovesValue?: boolean; isOpen?: boolean; components?: any; tooltipContent?: PopperContent; onOpenMenu?: () => void; onCloseMenu?: () => void; } export interface SelectProps extends CommonProps { options: Array>; } interface AsyncProps extends CommonProps { defaultOptions: boolean; loadOptions: (query: string) => Promise>>; loadingMessage?: () => string; } export declare const MenuList: (props: any) => JSX.Element; export declare class Select extends PureComponent> { static defaultProps: Partial>; onOpenMenu: () => void; onCloseMenu: () => void; render(): JSX.Element; } export declare class AsyncSelect extends PureComponent> { static defaultProps: Partial>; render(): JSX.Element; } export default Select;