import { PluginObject } from 'vue';
import { MInputStyle } from '../input-style/input-style';
import { MPopup } from '../popup/popup';
import { BaseDropdown, BaseDropdownGroup, MDropdownInterface } from './dropdown-item/dropdown-item';
export declare class MDropdown extends BaseDropdown implements MDropdownInterface {
    value: any;
    filterable: boolean;
    textNoData: string;
    textNoMatch: string;
    listMinWidth: string;
    focus: boolean;
    forceOpen: boolean;
    maxLength: number;
    showArrowIcon: boolean;
    enableAnimation: boolean;
    includeFilterableStatusItems: boolean;
    clearInvalidSelectionOnClose: boolean;
    clearModelOnSelectedText: boolean;
    $refs: {
        popup: MPopup;
        items: HTMLUListElement;
        input: HTMLInputElement;
        mInputStyle: MInputStyle;
        researchInput: HTMLInputElement;
    };
    private internalFilter;
    private internalFilterRegExp;
    private internalItems;
    private internalNavigationItems;
    private internalSelectedText;
    private internalIsFocus;
    private observer;
    private focusedIndex;
    private internalOpen;
    private dirty;
    private id;
    onForceOpenUpdate(): void;
    matchFilter(text: string | undefined): boolean;
    onFocusIn(): void;
    onFocusOut(): void;
    readonly filterableDesktop: boolean;
    groupHasItems(group: BaseDropdownGroup): boolean;
    protected created(): void;
    protected mounted(): void;
    protected beforeDestroy(): void;
    open: boolean;
    private onOpen;
    private onClose;
    private setInternalValue;
    private focusChanged;
    private matchFilterTextToValue;
    model: any;
    private setModel;
    private readonly internalPlaceholder;
    private readonly internallLabelUp;
    private portalMounted;
    private setInputWidth;
    private readonly inputStyletWidth;
    readonly focused: any;
    private onIsMqMaxS;
    private selectedText;
    readonly isEmpty: boolean;
    private buildItemsMap;
    private readonly propTextNoData;
    private readonly propTextNoMatch;
    private readonly hasItems;
    private readonly ariaControls;
    readonly inactive: boolean;
    private readonly hasFooterSlot;
    private onKeydownUp;
    private onKeydownDown;
    private onKeydownEnter;
    private onKeydownTab;
    private onKeydownEsc;
    private onInput;
    private focusOnResearchInput;
    private selectText;
    private focusSelected;
    private focusNextItem;
    private focusPreviousItem;
    private scrollToFocused;
    private transitionEnter;
    private transitionLeave;
    private readonly hasPointer;
    private readonly hasPlaceholderIcon;
    private readonly isEdgeSupport;
    private readonly isFirefoxSupport;
    private readonly isAndroid;
}
declare const DropdownPlugin: PluginObject<any>;
export default DropdownPlugin;
//# sourceMappingURL=dropdown.d.ts.map