import { PropType } from 'vue';
import { getPropertyValue } from '../../../../../utils/object';
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    selections: {
        type: PropType<Record<string, string>[]>;
        required: false;
        default: () => never[];
    };
    labelProperty: {
        type: PropType<string | string[]>;
        required: false;
        default: string;
    };
    valueProperty: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    enableSearch: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    invisibleCount: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
    size: {
        type: PropType<"small" | "medium" | "default">;
        required: false;
        default: null;
    };
    alwaysShowPlaceholder: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    placeholder: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    isLoading: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    searchTerm: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    selectionDisablingMethod: {
        type: PropType<(selection: Record<string, string>) => boolean>;
        required: false;
        default: () => boolean;
    };
    hideLabels: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    multiSelection: {
        type: BooleanConstructor;
        required: true;
    };
    disableInput: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
}>, {
    t: import('vue-i18n').ComposerTranslation<{
        de: {
            "select-placeholder": string;
        };
        en: {
            "select-placeholder": string;
        };
    }, "en" | "de", import('@intlify/core-base').RemoveIndexSignature<{
        [x: string]: import('vue-i18n').LocaleMessageValue<import('vue-i18n').VueMessageType>;
    }>, never, "select-placeholder", "select-placeholder">;
    getKey: typeof getPropertyValue;
}, {
    inputInFocus: boolean;
}, {
    classBindings(): {
        "mt-select-selection-list--single": boolean;
    };
    inputWrapperClasses(): {
        "mt-select-selection-list__input-wrapper--small": boolean;
    };
    showPlaceholder(): string;
    currentValue(): string;
    inputValue(): string;
}, {
    isSelectionDisabled(selection: Record<string, string>): boolean;
    onClickInvisibleCount(): void;
    onSearchTermChange(event: Event): void;
    onInputFocus(): Promise<void>;
    clearSearchTerm(): void;
    onKeyDownDelete(): void;
    onClickDismiss(item: any): void;
    focus(): void;
    blur(): void;
    select(): void;
    getFocusEl(): unknown;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    selections: {
        type: PropType<Record<string, string>[]>;
        required: false;
        default: () => never[];
    };
    labelProperty: {
        type: PropType<string | string[]>;
        required: false;
        default: string;
    };
    valueProperty: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    enableSearch: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    invisibleCount: {
        type: NumberConstructor;
        required: false;
        default: number;
    };
    size: {
        type: PropType<"small" | "medium" | "default">;
        required: false;
        default: null;
    };
    alwaysShowPlaceholder: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    placeholder: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    isLoading: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    searchTerm: {
        type: StringConstructor;
        required: false;
        default: string;
    };
    disabled: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    selectionDisablingMethod: {
        type: PropType<(selection: Record<string, string>) => boolean>;
        required: false;
        default: () => boolean;
    };
    hideLabels: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
    multiSelection: {
        type: BooleanConstructor;
        required: true;
    };
    disableInput: {
        type: BooleanConstructor;
        required: false;
        default: boolean;
    };
}>> & Readonly<{}>, {
    size: "small" | "default" | "medium";
    disabled: boolean;
    placeholder: string;
    isLoading: boolean;
    selections: Record<string, string>[];
    labelProperty: string | string[];
    valueProperty: string;
    enableSearch: boolean;
    invisibleCount: number;
    alwaysShowPlaceholder: boolean;
    searchTerm: string;
    selectionDisablingMethod: (selection: Record<string, string>) => boolean;
    hideLabels: boolean;
    disableInput: boolean;
}, {}, {
    "mt-label": {
        new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
            variant?: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
            size?: "small" | "medium" | "default";
            appearance?: "default" | "pill" | "circle" | "badged";
            ghost?: boolean;
            caps?: boolean;
            dismissable?: boolean;
        }> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
            size: "small" | "medium" | "default";
            variant: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
            ghost: boolean;
            appearance: "default" | "pill" | "circle" | "badged";
            caps: boolean;
        }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<{
            variant?: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
            size?: "small" | "medium" | "default";
            appearance?: "default" | "pill" | "circle" | "badged";
            ghost?: boolean;
            caps?: boolean;
            dismissable?: boolean;
        }> & Readonly<{}>, {}, {}, {}, {}, {
            size: "small" | "medium" | "default";
            variant: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
            ghost: boolean;
            appearance: "default" | "pill" | "circle" | "badged";
            caps: boolean;
        }>;
        __isFragment?: never;
        __isTeleport?: never;
        __isSuspense?: never;
    } & import('vue').ComponentOptionsBase<Readonly<{
        variant?: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
        size?: "small" | "medium" | "default";
        appearance?: "default" | "pill" | "circle" | "badged";
        ghost?: boolean;
        caps?: boolean;
        dismissable?: boolean;
    }> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
        size: "small" | "medium" | "default";
        variant: "info" | "danger" | "success" | "warning" | "neutral" | "primary";
        ghost: boolean;
        appearance: "default" | "pill" | "circle" | "badged";
        caps: boolean;
    }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
        $slots: {
            default?(_: {}): any;
            'dismiss-icon'?(_: {}): any;
        };
    });
    "mt-button": {
        new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
            is?: import('vue').Component | string;
            disabled?: boolean;
            variant?: "primary" | "secondary" | "tertiary" | "critical" | "action";
            ghost?: boolean;
            size?: "x-small" | "small" | "default" | "large";
            square?: boolean;
            block?: boolean;
            link?: string;
            isLoading?: boolean;
        }> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
            size: "x-small" | "small" | "default" | "large";
            link: string;
            variant: "primary" | "secondary" | "tertiary" | "critical" | "action";
            is: import('vue').Component | string;
        }, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<{
            is?: import('vue').Component | string;
            disabled?: boolean;
            variant?: "primary" | "secondary" | "tertiary" | "critical" | "action";
            ghost?: boolean;
            size?: "x-small" | "small" | "default" | "large";
            square?: boolean;
            block?: boolean;
            link?: string;
            isLoading?: boolean;
        }> & Readonly<{}>, {}, {}, {}, {}, {
            size: "x-small" | "small" | "default" | "large";
            link: string;
            variant: "primary" | "secondary" | "tertiary" | "critical" | "action";
            is: import('vue').Component | string;
        }>;
        __isFragment?: never;
        __isTeleport?: never;
        __isSuspense?: never;
    } & import('vue').ComponentOptionsBase<Readonly<{
        is?: import('vue').Component | string;
        disabled?: boolean;
        variant?: "primary" | "secondary" | "tertiary" | "critical" | "action";
        ghost?: boolean;
        size?: "x-small" | "small" | "default" | "large";
        square?: boolean;
        block?: boolean;
        link?: string;
        isLoading?: boolean;
    }> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
        size: "x-small" | "small" | "default" | "large";
        link: string;
        variant: "primary" | "secondary" | "tertiary" | "critical" | "action";
        is: import('vue').Component | string;
    }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
        $slots: Readonly<{
            default: null;
            iconFront: {
                size: number;
            };
            iconBack: {
                size: number;
            };
        }> & {
            default: null;
            iconFront: {
                size: number;
            };
            iconBack: {
                size: number;
            };
        };
    });
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;
