UNPKG

office-ui-fabric-react

Version:

Reusable React components for building experiences for Office 365.

60 lines (59 loc) 2.94 kB
/// <reference types="react" /> import * as React from 'react'; import { BaseComponent } from '../../Utilities'; import { Autofill } from '../../Autofill'; import { IBaseExtendedPickerProps, IBaseExtendedPicker } from './BaseExtendedPicker.types'; import { IBaseFloatingPickerProps, BaseFloatingPicker } from '../../FloatingPicker'; import { BaseSelectedItemsList, IBaseSelectedItemsListProps } from '../../SelectedItemsList'; import { Selection } from '../../Selection'; export interface IBaseExtendedPickerState<T> { selectedItems: T[] | null; suggestionItems: T[] | null; } export declare class BaseExtendedPicker<T, P extends IBaseExtendedPickerProps<T>> extends BaseComponent<P, IBaseExtendedPickerState<T>> implements IBaseExtendedPicker<T> { floatingPicker: { (component: BaseFloatingPicker<T, IBaseFloatingPickerProps<T>> | null): void; current: BaseFloatingPicker<T, IBaseFloatingPickerProps<T>> | null; value: BaseFloatingPicker<T, IBaseFloatingPickerProps<T>> | null; }; selectedItemsList: { (component: BaseSelectedItemsList<T, IBaseSelectedItemsListProps<T>> | null): void; current: BaseSelectedItemsList<T, IBaseSelectedItemsListProps<T>> | null; value: BaseSelectedItemsList<T, IBaseSelectedItemsListProps<T>> | null; }; protected root: { (component: HTMLDivElement | null): void; current: HTMLDivElement | null; value: HTMLDivElement | null; }; protected input: { (component: Autofill | null): void; current: Autofill | null; value: Autofill | null; }; protected selection: Selection; protected floatingPickerProps: IBaseFloatingPickerProps<T>; protected selectedItemsListProps: IBaseSelectedItemsListProps<T>; constructor(basePickerProps: P); readonly items: any; componentDidMount(): void; componentWillReceiveProps(newProps: P): void; focus(): void; clearInput(): void; readonly inputElement: HTMLInputElement | null; readonly highlightedItems: T[]; render(): JSX.Element; protected onSelectionChange: () => void; protected canAddItems(): boolean; protected renderSuggestions(): JSX.Element; protected renderSelectedItemsList(): JSX.Element; protected onInputChange: (value: string) => void; protected onInputFocus: (ev: React.FocusEvent<HTMLInputElement | Autofill>) => void; protected onInputClick: (ev: React.MouseEvent<HTMLInputElement | Autofill>) => void; protected onBackspace: (ev: React.KeyboardEvent<HTMLElement>) => void; protected onCopy: (ev: React.ClipboardEvent<HTMLElement>) => void; protected onPaste: (ev: React.ClipboardEvent<HTMLInputElement | Autofill>) => void; protected _onSuggestionSelected: (item: T) => void; protected _onSelectedItemsChanged: () => void; private _addProcessedItem(newItem); }