import { EventEmitter } from '../../../stencil-public-runtime';
import { Option } from './interfaces';
export declare class Multiselect {
    name: string;
    disabled: boolean;
    required: boolean;
    error: boolean;
    caption: string;
    label: string;
    placeholder: string;
    showSearch: boolean;
    showSelectAll: boolean;
    showClearButton: boolean;
    showExpandCollapse: boolean;
    noResultsMessage: string;
    showNoResultsMessage: boolean;
    searchPlaceholder: string;
    selectAllLabel: string;
    expandLabel: string;
    collapseLabel: string;
    ariaMultiSelectLabel: string;
    ariaMultiSelectLabelledBy: string;
    ariaMultiSelectDescribedBy: string;
    ariaSearchLabel: string;
    ariaClearLabel: string;
    ariaToggleLabel: string;
    ariaSelectAllLabel: string;
    ariaExpandAllLabel: string;
    ariaCollapseAllLabel: string;
    internalError: boolean;
    persistentSelectedOptions: Option[];
    dropdownOpen: boolean;
    dropdownFlipped: boolean;
    searchTerm: string;
    ifxSelect: EventEmitter;
    ifxOpen: EventEmitter;
    el: HTMLElement;
    dropdownElement: HTMLElement;
    internals: ElementInternals;
    private parseChildOptions;
    private parseOptionElement;
    loadInitialOptions(): void;
    private collectSelectedOptions;
    private collectLeafOptions;
    handleSearch: (...args: any[]) => void;
    private handleSearchFocus;
    positionDropdown(): void;
    private pendingSelectionUpdate;
    updateSlotBasedSelections(emitEvent?: boolean): void;
    private updateInitialParentStates;
    private updateParentState;
    componentDidLoad(): Promise<void>;
    componentWillLoad(): void;
    updateInternalError(): void;
    onSelectionChange(newValue: Option[], _: Option[]): void;
    collapseAll(): void;
    expandAll(): void;
    selectAll(): void;
    clearSelection(): Promise<void>;
    handleDocumentClick: (event: Event) => void;
    toggleDropdown(): void;
    private resetSearch;
    handleWrapperClick(event: MouseEvent): void;
    handleKeyDown(event: KeyboardEvent): void;
    private focusFirstOption;
    private renderSelectAll;
    private renderNoResultsMessage;
    render(): any;
}
