import React, { ReactNode } from 'react'; import { AbstractFormControl } from '../form-control'; import { InputSize } from '../input'; import { ISearchSelect, SearchSelectProps } from './search-select.doc'; interface SelectedOptionComponentWrapperProps { size?: InputSize; } export declare class SearchSelect extends AbstractFormControl> implements ISearchSelect { private searchText; private values; private popupContext; private searching; private selectedOptionWrapperRef; private inputRef; private popupRef; private valuesSubscription; private searchTextSubject; private readonly optionComponent; private readonly displayComponent; private readonly selected; private readonly input; private readonly inputElement; private readonly selectedOptionWrapper; private readonly popup; renderControl(): ReactNode; componentDidMount(): void; componentWillUnmount(): void; protected focusControl(): void; protected blurControl(): void; protected resetControl(value: T | undefined): void; protected validateControl(): void; private defaultDisplayComponent; private renderInput; private renderSelectedOption; private renderPopup; private focusInput; private focusSelectedOptionWrapper; private onSelectedOptionClick; private onSelectedOptionFocus; private onSelectedOptionBlur; private onSelectedOptionKeyDown; private onPopupSelect; private onInputChange; private onInputKeyDown; private onInputFocus; private onInputBlur; private onDocumentScroll; private setValues; private setSearchText; private setSearching; private updatePopupContext; private emitValueChange; static InputWrapper: import("styled-components").StyledComponentClass, HTMLDivElement>, UI.IThemeSchema, React.DetailedHTMLProps, HTMLDivElement>>; static SelectedOptionWrapper: import("styled-components").StyledComponentClass & React.HTMLAttributes & SelectedOptionComponentWrapperProps, UI.IThemeSchema, React.ClassAttributes & React.HTMLAttributes & SelectedOptionComponentWrapperProps>; } export {};