import { RenderResult } from '@dojo/framework/core/interfaces';
import { ItemRendererProperties, ListOption, ListItemProperties, MenuItemProperties } from '../list';
import { PopupPosition } from '@dojo/widgets/popup';
export interface ChipTypeaheadProperties {
    /** The initial selected value */
    initialValue?: string[];
    /** Callback called when user selects an option from the typeahead */
    onValue?: (value: ListOption[]) => void;
    /** Optional controlled value */
    value?: string[];
    /** Property to determine if the input is disabled */
    disabled?: boolean;
    /** Property to determine how many items to render. Defaults to 6 */
    itemsInView?: number;
    /** The name of the input */
    name?: string;
    /** Placement of the select menu; 'above' or 'below' */
    position?: PopupPosition;
    /** Placement of the selected values. Default is 'inline' */
    placement?: 'inline' | 'bottom';
    /** Allow duplicates of the same value to be selected. Default is false */
    duplicates?: boolean;
    /** Flag to indicate if values other than those in the resource can be entered, defaults to true */
    strict?: boolean;
    /** The kind of chip typeahead input */
    kind?: 'outlined' | 'filled';
}
export interface ChipTypeaheadChildren {
    /** Adds a <label> element with the supplied text */
    label?: RenderResult;
    /** Custom renderer for item contents */
    items?: (item: ItemRendererProperties, props: ListItemProperties & MenuItemProperties) => RenderResult;
    /** Custom renderer for selected items */
    selected?: (value: string, label: string) => RenderResult;
}
export interface ChipTypeaheadIcache {
    initialValue: string[];
    options: ListOption[];
    focused: boolean;
}
export declare const ChipTypeahead: import("@dojo/framework/core/interfaces").WNodeFactory<{
    properties: ChipTypeaheadProperties & import("@dojo/framework/core/interfaces").WidgetProperties & {
        variant?: "default" | "inherit" | undefined;
    } & import("@dojo/framework/core/middleware/theme").ThemeProperties & import("@dojo/framework/core/middleware/resources").ResourceProperties<ListOption, undefined> & import("@dojo/framework/core/interfaces").FocusProperties;
    children: ChipTypeaheadChildren;
}>;
export default ChipTypeahead;
