import { hasSlotContent } from '../../common/utils';
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    circle: {
        type: BooleanConstructor;
        default: boolean;
    };
    iconPosition: {
        type: StringConstructor;
        default: string;
        validator: (position: unknown) => boolean;
    };
    importance: {
        type: StringConstructor;
        default: string;
        validator: (i: unknown) => boolean;
    };
    link: {
        type: BooleanConstructor;
        default: boolean;
    };
    linkKind: {
        type: StringConstructor;
        default: string;
        validator: (lk: unknown) => boolean;
    };
    linkInverted: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    type: {
        type: StringConstructor;
        default: string;
        validator: (t: unknown) => boolean;
    };
    width: {
        type: StringConstructor;
        default: null;
    };
    size: {
        type: StringConstructor;
        default: string;
        validator: (s: unknown) => boolean;
    };
    labelClass: {
        type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
        default: string;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    kind: {
        type: StringConstructor;
        default: string;
        validator: (k: unknown) => boolean;
    };
    assertiveOnFocus: {
        type: BooleanConstructor;
        default: boolean;
    };
    active: {
        type: BooleanConstructor;
        default: boolean;
    };
    to: {
        type: (ObjectConstructor | StringConstructor)[];
        default: null;
    };
    href: {
        type: StringConstructor;
        default: null;
    };
    target: {
        type: StringConstructor;
        default: null;
    };
    rel: {
        type: StringConstructor;
        default: null;
    };
    replace: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {}, {
    ICON_POSITION_MODIFIERS: {
        left: string;
        right: string;
        top: string;
        bottom: string;
    };
    isInFocus: boolean;
    hasSlotContent: typeof hasSlotContent;
    i18n: any;
}, {
    computedTag(): string | import('vue').ConcreteComponent<{}, any, any, import('vue').ComputedOptions, import('vue').MethodOptions, {}, any>;
    isNativeButton(): boolean;
    computedAttrs(): {
        'aria-disabled'?: string | undefined;
        tabindex?: string | undefined;
        to: string | Record<string, any>;
        replace: boolean;
        type?: undefined;
        disabled?: undefined;
    } | {
        'aria-disabled'?: string | undefined;
        tabindex?: string | undefined;
        href: string | null;
        target: string;
        rel: string;
        type?: undefined;
        disabled?: undefined;
    } | {
        type: string;
        disabled: boolean;
    };
    computedListeners(): {
        focusin: (e: any) => void;
        focusout: (e: any) => void;
    };
    computedAriaLive(): unknown;
    iconSize(): any;
    loaderSize(): any;
}, {
    resolveRouterLink(): string | import('vue').ConcreteComponent<{}, any, any, import('vue').ComputedOptions, import('vue').MethodOptions, {}, any>;
    buttonClasses(): any[];
    isInvalidPropCombination(circle: any, kind: any, importance: any): boolean;
    shouldRenderIcon(): any;
    isIconOnly(): any;
    isVerticalIconLayout(): boolean;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("focusin" | "focusout")[], "focusin" | "focusout", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    circle: {
        type: BooleanConstructor;
        default: boolean;
    };
    iconPosition: {
        type: StringConstructor;
        default: string;
        validator: (position: unknown) => boolean;
    };
    importance: {
        type: StringConstructor;
        default: string;
        validator: (i: unknown) => boolean;
    };
    link: {
        type: BooleanConstructor;
        default: boolean;
    };
    linkKind: {
        type: StringConstructor;
        default: string;
        validator: (lk: unknown) => boolean;
    };
    linkInverted: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    type: {
        type: StringConstructor;
        default: string;
        validator: (t: unknown) => boolean;
    };
    width: {
        type: StringConstructor;
        default: null;
    };
    size: {
        type: StringConstructor;
        default: string;
        validator: (s: unknown) => boolean;
    };
    labelClass: {
        type: (ObjectConstructor | StringConstructor | ArrayConstructor)[];
        default: string;
    };
    loading: {
        type: BooleanConstructor;
        default: boolean;
    };
    kind: {
        type: StringConstructor;
        default: string;
        validator: (k: unknown) => boolean;
    };
    assertiveOnFocus: {
        type: BooleanConstructor;
        default: boolean;
    };
    active: {
        type: BooleanConstructor;
        default: boolean;
    };
    to: {
        type: (ObjectConstructor | StringConstructor)[];
        default: null;
    };
    href: {
        type: StringConstructor;
        default: null;
    };
    target: {
        type: StringConstructor;
        default: null;
    };
    rel: {
        type: StringConstructor;
        default: null;
    };
    replace: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onFocusin?: ((...args: any[]) => any) | undefined;
    onFocusout?: ((...args: any[]) => any) | undefined;
}>, {
    link: boolean;
    disabled: boolean;
    type: string;
    target: string;
    circle: boolean;
    active: boolean;
    loading: boolean;
    size: string;
    replace: boolean;
    kind: string;
    labelClass: string | unknown[] | Record<string, any>;
    href: string;
    to: string | Record<string, any>;
    iconPosition: string;
    importance: string;
    linkKind: string;
    linkInverted: boolean;
    width: string;
    assertiveOnFocus: boolean;
    rel: string;
}, {}, {
    DtLoader: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
        ariaLabel: {
            type: StringConstructor;
            default: string;
        };
        size: {
            type: StringConstructor;
            default: string;
            validator: (s: unknown) => boolean;
        };
    }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
        ariaLabel: {
            type: StringConstructor;
            default: string;
        };
        size: {
            type: StringConstructor;
            default: string;
            validator: (s: unknown) => boolean;
        };
    }>> & Readonly<{}>, {
        size: string;
        ariaLabel: string;
    }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export default _default;
//# sourceMappingURL=button.vue.d.ts.map