import { ListItem, ListSeparator } from '@limetech/lime-elements';
/**
 * Text editor picker
 * This component displays a list of items that will be displayed in a popover,
 * in connection with the text editor's user interface.
 *
 * This popover is triggered and opened, when the end-user types a certain character.
 * The list is unfiltered first, but as the end-user types more characters, the list
 * gets filtered to only show items that match the user's input.
 *
 * Pressing <kbd>Esc</kbd> will dismiss the popover, allowing the end-user to
 * continue typing without being forced to select something from the list.
 *
 * @private
 */
export declare class TextEditorPicker {
    /**
     * List of items to display
     */
    items: Array<ListItem | ListSeparator>;
    /**
     * Open state  of the item's list
     */
    open: boolean;
    /**
     * Loading state of the item's list
     */
    isSearching: boolean;
    emptyMessage: string;
    /**
     * Emitted when the list is closed from inside the component.
     * (*Not* emitted when the consumer sets the `open`-property to `false`.)
     */
    private cancel;
    private itemSelected;
    private host;
    protected watchOpen(newValue: boolean): void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    private setupHandlers;
    private teardownHandlers;
    render(): any;
    private renderSpinner;
    private handleCancel;
    protected handleMouseDown(event: MouseEvent): void;
    private selectOnInteract;
    private getItems;
}
//# sourceMappingURL=text-editor-picker.d.ts.map