import * as PropTypes from 'prop-types'; import { CSSProperties, KeyboardEventHandler, MouseEventHandler, ReactNode, UIEventHandler } from 'react'; export declare type emptyFunction = (e?: any) => void; export interface IILableValueType { key?: string | number; label?: ReactNode | string; } export declare type valueType = number | number[] | string | string[] | IILableValueType | IILableValueType[]; declare type renderNode = () => ReactNode; export declare type filterOptionType = (inputValue: string, option?: any) => void; export declare type renderSelect = ReactNode | renderNode; export interface ISelectProps { id: string; defaultActiveFirstOption: boolean; multiple: boolean; combobox: boolean; autoClearSearchValue: boolean; filterOption: filterOptionType | boolean; children: JSX.Element[] | JSX.Element | any; showSearch: boolean; disabled: boolean; style: CSSProperties; allowClear: boolean; showArrow: boolean; tags: boolean; openClassName: string; autoFocus: boolean; prefixCls: string; className: string; transitionName: string; optionLabelProp: string; optionFilterProp: string; animation: string; choiceTransitionName: string; open: boolean; defaultOpen: boolean; inputValue: string; onChange: (value: valueType, option: JSX.Element | JSX.Element[]) => void; onBlur: emptyFunction; onFocus: emptyFunction; onSelect: (value: valueType, option: JSX.Element | JSX.Element[]) => void; onSearch: (value: string) => void; onDropdownVisibleChange: (open: boolean | undefined) => void; onPopupScroll: UIEventHandler; onMouseEnter: MouseEventHandler; onMouseLeave: MouseEventHandler; onInputKeyDown: KeyboardEventHandler; placeholder: string; onDeselect: (value: valueType, option: JSX.Element | JSX.Element[]) => void; labelInValue: boolean; loading: boolean; value: valueType; firstActiveValue: valueType; defaultValue: valueType; dropdownStyle: CSSProperties; maxTagTextLength: number; maxTagCount: number; maxTagPlaceholder: renderSelect; tokenSeparators: string[]; getInputElement: () => JSX.Element; showAction: string[]; clearIcon: ReactNode; inputIcon: ReactNode; removeIcon: ReactNode; menuItemSelectedIcon: renderSelect; getPopupContainer: renderSelect; dropdownRender: (menu: any) => JSX.Element; mode: 'multiple' | 'tags'; backfill: boolean; dropdownAlign: any; dropdownClassName: string; dropdownMatchSelectWidth: boolean; dropdownMenuStyle: React.CSSProperties; notFoundContent: string | false; tabIndex: string | number; } declare function propsValueType(...args: [ISelectProps, string, string, any, any]): Error | null; declare const SelectPropTypes: { id: PropTypes.Requireable; defaultActiveFirstOption: PropTypes.Requireable; multiple: PropTypes.Requireable; filterOption: PropTypes.Requireable; children: PropTypes.Requireable; showSearch: PropTypes.Requireable; disabled: PropTypes.Requireable; allowClear: PropTypes.Requireable; showArrow: PropTypes.Requireable; tags: PropTypes.Requireable; prefixCls: PropTypes.Requireable; className: PropTypes.Requireable; transitionName: PropTypes.Requireable; optionLabelProp: PropTypes.Requireable; optionFilterProp: PropTypes.Requireable; animation: PropTypes.Requireable; choiceTransitionName: PropTypes.Requireable; open: PropTypes.Requireable; defaultOpen: PropTypes.Requireable; onChange: PropTypes.Requireable<(...args: any[]) => any>; onBlur: PropTypes.Requireable<(...args: any[]) => any>; onFocus: PropTypes.Requireable<(...args: any[]) => any>; onSelect: PropTypes.Requireable<(...args: any[]) => any>; onSearch: PropTypes.Requireable<(...args: any[]) => any>; onPopupScroll: PropTypes.Requireable<(...args: any[]) => any>; onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; onInputKeyDown: PropTypes.Requireable<(...args: any[]) => any>; placeholder: PropTypes.Requireable; onDeselect: PropTypes.Requireable<(...args: any[]) => any>; labelInValue: PropTypes.Requireable; loading: PropTypes.Requireable; value: typeof propsValueType; defaultValue: typeof propsValueType; dropdownStyle: PropTypes.Requireable; maxTagTextLength: PropTypes.Requireable; maxTagCount: PropTypes.Requireable; maxTagPlaceholder: PropTypes.Requireable; tokenSeparators: PropTypes.Requireable<(string | null | undefined)[]>; getInputElement: PropTypes.Requireable<(...args: any[]) => any>; showAction: PropTypes.Requireable<(string | null | undefined)[]>; clearIcon: PropTypes.Requireable; inputIcon: PropTypes.Requireable; removeIcon: PropTypes.Requireable; menuItemSelectedIcon: PropTypes.Requireable; dropdownRender: PropTypes.Requireable<(...args: any[]) => any>; }; export default SelectPropTypes;