import React, { ReactElement } from 'react'; declare type Value = string | number | null; declare type NameValue = React.ReactChild | null; export interface ItemProps { name: NameValue; value: Value; actualName?: NameValue; disabled?: boolean; unselect?: boolean; className?: string; } export interface SelectProps { options: ItemProps[]; value: Value; onChange: (item: ItemProps, name?: string) => void; name?: string; disabled?: boolean; columnCount?: number; placement?: string; className?: string; dropClassName?: string; placeholder?: string; hiddenIcon?: boolean; isMinRootWidth?: boolean; isMaxRootWidth?: boolean; showMask?: boolean; maxHeight?: number; title?: ReactElement; bottom?: ReactElement; icon?: React.ReactNode | (() => React.ReactNode); } interface SelectStates { visible: boolean; list: [ItemProps[]]; } export default class Select extends React.Component { prefixCls: string; static defaultProps: { title: any; icon: JSX.Element; placeholder: string; columnCount: number; maxHeight: number; placement: string; disabled: boolean; hiddenIcon: boolean; isMinRootWidth: boolean; isMaxRootWidth: boolean; }; constructor(props: any); static getDerivedStateFromProps(nextProps: SelectProps): { list: any[]; }; /** * 设置显示与隐藏 */ triggerSelect: (status?: boolean) => void; onTriggerSelect: () => void; onSelecting(ev: React.MouseEvent | React.TouchEvent, item: any): void; renderTitle(): React.ReactElement React.ReactElement React.Component)>) | (new (props: any) => React.Component)>; renderBottom(): React.ReactElement React.ReactElement React.Component)>) | (new (props: any) => React.Component)>; /** * 下拉框内容 */ getSelectPopup(): JSX.Element; /** * 根据value获取当前的name,并显示出来 * @returns {*} */ getCurrentName(): React.ReactChild; render(): JSX.Element; } export {};