@docsvision/webclient
Version:
Type definitions for DocsVision WebClient scripts and extensions.
59 lines (58 loc) • 2.98 kB
TypeScript
import { IBoxWithButtonsButtonInfo } from "@docsvision/webclient/Helpers/BoxWithButtons";
import { Popover } from "@docsvision/webclient/Helpers/PopoverHelpers/Popover";
import { ITypeaheadProps } from "@docsvision/webclient/Helpers/Typeahead/ITypeaheadProps";
import { ITypeaheadState } from "@docsvision/webclient/Helpers/Typeahead/ITypeaheadState";
import { ITypeaheadSearchResult } from "@docsvision/webclient/Helpers/Typeahead/Models/ITypeaheadSearchResult";
import { ITypeaheadVariant } from "@docsvision/webclient/Helpers/Typeahead/Models/ITypeaheadVariant";
import { TypeaheadItem } from "@docsvision/webclient/Helpers/Typeahead/Models/TypeaheadItem";
import React from "react";
/** @internal */
export declare class Typeahead extends React.Component<ITypeaheadProps, ITypeaheadState> {
static FirstPageSize: number;
static NextPageSize: number;
static SearchTimeout: number;
/** @internal */
state: ITypeaheadState;
constructor(props: ITypeaheadProps);
componentWillUnmount(): void;
componentDidMount(): void;
closeDropdown(): void;
openDropdown(): void;
reload(): Promise<void>;
get variantsDropdownOpen(): boolean;
set variantsDropdownOpen(val: boolean);
get variants(): TypeaheadItem[];
showAll(openEmpty?: boolean): void;
/** Сбрасывает закешированные данные с последнего поиска. */
resetLastSearch(): void;
protected onShowAll(): void;
protected onClearValueClick(): void;
UNSAFE_componentWillReceiveProps(nextProps: ITypeaheadProps, nextContext: any): void;
protected getTextValue(): string;
protected getFirstPageSize(): number;
protected getNextPageSize(): number;
protected getSearchIndex(): number;
protected createItem(data: ITypeaheadVariant): TypeaheadItem;
protected onSelected(item: TypeaheadItem): void;
protected select(item: TypeaheadItem): void;
protected loadVariants(searchText: string, page: number): Promise<ITypeaheadSearchResult>;
protected get searchTimeout(): number;
protected onInputChange(newText: string): void;
private documentClick;
private documentScroll;
protected onShowMore(): Promise<ITypeaheadSearchResult>;
protected onShowVariants(ev: React.MouseEvent): void;
protected onInputKeyDown(ev: React.KeyboardEvent<any>): void;
protected onItemClick(ev: React.MouseEvent<any>, item: TypeaheadItem): void;
/** Contains logic for keyboard navigation */
protected onDropdownKeydown(ev: React.KeyboardEvent<any>): void;
private renderVariantText;
protected renderVariant(x: TypeaheadItem): JSX.Element;
protected onMouseDown(): void;
protected attachDropdown(elem: HTMLElement): void;
protected attachPopover(elem: Popover): void;
protected getFavoredVariants(): TypeaheadItem[];
protected getUsualVariants(): TypeaheadItem[];
protected getButtons(): IBoxWithButtonsButtonInfo[];
render(): React.ReactNode;
}