import * as React from 'react'; import type { Locale } from '../locale'; import type { SelectProps, SelectState, Value, Option, ChangeAction } from './types'; import type { SyntheticEvent, ChangeEvent } from 'react'; import { Options } from './types'; export declare function isInteractive(rootTarget: EventTarget | null, rootElement: Element): boolean; declare class Select extends React.Component { static defaultProps: { 'aria-label': null; 'aria-describedby': null; 'aria-errormessage': null; 'aria-labelledby': null; autoFocus: boolean; backspaceRemoves: boolean; clearable: boolean; closeOnSelect: boolean; creatable: boolean; deleteRemoves: boolean; disabled: boolean; error: boolean; positive: boolean; escapeClearsValue: boolean; filterOptions: (options: Value, filterValue: string, excludeOptions?: Value | null | undefined, newProps?: Partial<{ filterOption: ((option: Readonly<{ [x: string]: any; id?: string | number | undefined; label?: React.ReactNode; disabled?: boolean | undefined; clearableValue?: boolean | undefined; isCreatable?: boolean | undefined; __optgroup?: string | undefined; searchTags?: string[] | undefined; }>, filterValue: string) => boolean) | null | undefined; ignoreCase: boolean; labelKey: string; matchPos: "start" | "any"; matchProp: "label" | "value" | "any"; trimFilter: boolean; valueKey: string; }> | null | undefined) => Readonly<{ [x: string]: any; id?: string | number | undefined; label?: React.ReactNode; disabled?: boolean | undefined; clearableValue?: boolean | undefined; isCreatable?: boolean | undefined; __optgroup?: string | undefined; searchTags?: string[] | undefined; }>[]; filterOutSelected: boolean; getOptionLabel: null; getValueLabel: null; ignoreCase: boolean; isLoading: boolean; labelKey: string; maxDropdownHeight: string; multi: boolean; onBlur: () => void; onBlurResetsInput: boolean; onChange: () => void; onFocus: () => void; onInputChange: () => void; onCloseResetsInput: boolean; onSelectResetsInput: boolean; onOpen: null; onClose: null; openOnClick: boolean; startOpen: boolean; options: never[]; overrides: {}; required: boolean; searchable: boolean; size: "default"; type: "select"; value: never[]; valueKey: string; }; anchor: React.RefObject; dropdown: React.RefObject; input?: HTMLInputElement; dragging: boolean; focusAfterClear: boolean; openAfterFocus: boolean; justSelected: boolean; options: Value; state: { activeDescendant: null; inputValue: string; isFocused: boolean; isOpen: boolean; isPseudoFocused: boolean; }; isItMounted: boolean; componentDidMount(): void; componentDidUpdate(prevProps: SelectProps, prevState: SelectState): void; componentWillUnmount(): void; focus(): void; handleDropdownOpen(nextOpenState: boolean): void; handleSetInputValue(newInputValue: string): void; handleSetInputFocus(): void; handleSetInputBlur(): void; handleTouchOutside: (event: TouchEvent) => void; handleTouchMove: () => boolean; handleTouchStart: () => boolean; handleTouchEnd: (event: TouchEvent) => void; handleClick: (event: MouseEvent | TouchEvent) => void; closeMenu(): void; handleInputFocus: (event: SyntheticEvent) => void; handleBlur: (event: React.FocusEvent | MouseEvent) => void; handleClickOutside: (event: MouseEvent) => void; handleInputChange: (event: ChangeEvent) => void; handleKeyDown: (event: KeyboardEvent) => void; getOptionLabel: (locale: Locale, { option, }: { option: Option; optionState: { $selected: boolean; $disabled: boolean; $isHighlighted: boolean; }; }) => React.ReactNode; getValueLabel: ({ option }: { option: Option; }) => React.ReactNode; /** * Extends the value into an array from the given options */ getValueArray(value: Value): Array