/// import * as React from 'react'; import PropTypes from 'prop-types'; export interface AbstractSelectProps { prefixCls?: string; className?: string; size?: 'default' | 'large' | 'small'; notFoundContent?: React.ReactNode | null; transitionName?: string; choiceTransitionName?: string; showSearch?: boolean; allowClear?: boolean; disabled?: boolean; style?: React.CSSProperties; tabIndex?: number; placeholder?: string; defaultActiveFirstOption?: boolean; dropdownClassName?: string; dropdownStyle?: React.CSSProperties; dropdownMenuStyle?: React.CSSProperties; onDropdownMouseDown?: (e: React.MouseEvent) => void; onSearch?: (value: string) => any; filterOption?: boolean | ((inputValue: string, option: React.ReactElement) => any); } export interface LabeledValue { key: string; label: React.ReactNode; } export declare type SelectValue = string | any[] | LabeledValue | LabeledValue[]; export interface SelectProps extends AbstractSelectProps { value?: SelectValue; defaultValue?: SelectValue; mode?: 'default' | 'multiple' | 'tags' | 'combobox'; optionLabelProp?: string; onInput?: (value: SelectValue) => void; onChange?: (value: SelectValue, option: React.ReactElement | React.ReactElement[]) => void; onSelect?: (value: SelectValue, option: React.ReactElement) => any; onDeselect?: (value: SelectValue) => any; onBlur?: () => any; onFocus?: () => any; onPopupScroll?: () => any; onInputKeyDown?: (e: React.KeyboardEvent) => void; onChoiceItemClick?: (value: SelectValue, option: React.ReactElement) => void; maxTagCount?: number; maxTagPlaceholder?: React.ReactNode | ((omittedValues: SelectValue[]) => React.ReactNode); dropdownMatchSelectWidth?: boolean; optionFilterProp?: string; labelInValue?: boolean; getPopupContainer?: (triggerNode: Element) => HTMLElement; tokenSeparators?: string[]; getInputElement?: () => React.ReactElement; autoFocus?: boolean; showNotFindInputItem?: boolean; showNotFindSelectedItem?: boolean; getRootDomNode?: () => HTMLElement; showCheckAll?: boolean; filter?: boolean; filterPlaceholder?: string; footer?: React.ReactNode | string; choiceRender?: (liDom: HTMLElement, value: SelectValue) => any; loading?: boolean | object; choiceRemove?: boolean; } export interface OptionProps { disabled?: boolean; value?: any; title?: string; children?: React.ReactNode; className?: string; style?: object; } export interface OptGroupProps { label?: React.ReactNode; } export interface SelectLocale { notFoundContent?: string; filterPlaceholder?: string; } export default class Select extends React.Component { static Option: React.ClassicComponentClass; static OptGroup: React.ClassicComponentClass; static defaultProps: { prefixCls: string; showSearch: boolean; transitionName: string; choiceTransitionName: string; filter: boolean; showCheckAll: boolean; choiceRemove: boolean; }; static propTypes: { prefixCls: PropTypes.Requireable; className: PropTypes.Requireable; size: PropTypes.Requireable; combobox: PropTypes.Requireable; notFoundContent: PropTypes.Requireable; showSearch: PropTypes.Requireable; optionLabelProp: PropTypes.Requireable; transitionName: PropTypes.Requireable; choiceTransitionName: PropTypes.Requireable; showNotFindInputItem: PropTypes.Requireable; showNotFindSelectedItem: PropTypes.Requireable; filter: PropTypes.Requireable; showCheckAll: PropTypes.Requireable; footer: PropTypes.Requireable; choiceRender: PropTypes.Requireable<(...args: any[]) => any>; loading: PropTypes.Requireable; filterValue: PropTypes.Requireable; onFilterChange: PropTypes.Requireable<(...args: any[]) => any>; choiceRemove: PropTypes.Requireable any)>; onChoiceRemove: PropTypes.Requireable<(...args: any[]) => any>; }; private rcSelect; focus(): void; blur(): void; saveSelect: (node: any) => void; getNotFoundContent(locale: SelectLocale): {} | null | undefined; renderSelect: (locale: SelectLocale) => JSX.Element; render(): JSX.Element; }