UNPKG

1.15 kBTypeScriptView Raw
1import * as React from 'react';
2import { StandardProps } from '..';
3import { InputProps } from '../Input';
4import { MenuProps } from '../Menu';
5import { SelectInputProps } from './SelectInput';
6
7export interface SelectProps
8 extends StandardProps<InputProps, SelectClassKey, 'value' | 'onChange'>,
9 Pick<SelectInputProps, 'onChange'> {
10 autoWidth?: boolean;
11 displayEmpty?: boolean;
12 IconComponent?: React.ElementType;
13 input?: React.ReactNode;
14 labelId?: string;
15 labelWidth?: number;
16 MenuProps?: Partial<MenuProps>;
17 multiple?: boolean;
18 native?: boolean;
19 onClose?: (event: React.ChangeEvent<{}>) => void;
20 onOpen?: (event: React.ChangeEvent<{}>) => void;
21 open?: boolean;
22 renderValue?: (value: SelectProps['value']) => React.ReactNode;
23 SelectDisplayProps?: React.HTMLAttributes<HTMLDivElement>;
24 value?: unknown;
25 variant?: 'standard' | 'outlined' | 'filled';
26}
27
28export type SelectClassKey =
29 | 'root'
30 | 'select'
31 | 'filled'
32 | 'outlined'
33 | 'selectMenu'
34 | 'disabled'
35 | 'icon'
36 | 'iconOpen'
37 | 'iconFilled'
38 | 'iconOutlined';
39
40declare const Select: React.ComponentType<SelectProps>;
41
42export default Select;