import { Placement } from '@popperjs/core'; import React, { ComponentPropsWithoutRef, RefObject } from 'react'; import { InputProps } from '../Input'; interface BaseSelect extends Omit, 'children' | 'value'> { action?: SelectAction; autoComplete?: string; autoWidth?: boolean; description?: React.ReactNode; disabled?: boolean; error?: InputProps['error']; filterable?: boolean; inputRef?: RefObject | React.Ref; label?: React.ReactNode; labelId?: string; maxHeight?: number; name?: string; placement?: Placement; positionFixed?: boolean; required?: boolean; onClose?(): void; onOpen?(): void; } export interface SelectProps extends BaseSelect { options: Array> | Array>; value?: T; onOptionChange(value?: T, option?: SelectOption): void; } interface BaseItem extends Omit, 'value'> { content: string; description?: string; disabled?: boolean; icon?: React.ReactElement; tooltip?: string; } export interface SelectOption extends BaseItem { value: T; } export interface SelectAction extends BaseItem { actionType?: 'normal' | 'destructive'; onActionClick(inputText: string | null): void; } export interface SelectOptionGroup { label: string; separated?: boolean; options: Array>; } export {}; //# sourceMappingURL=types.d.ts.map