import { Component } from 'vue';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        leading?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<(import('./types').KdsButtonCommonProps<import('./types').KdsButtonVariant> & {
    label: string;
    leadingIcon?: import('..').KdsIconName;
    trailingIcon?: import('..').KdsIconName;
    ariaLabel?: never;
} & import('./types').WithDestructive & {
    success?: boolean;
} & {
    error?: boolean;
} & {
    toggled?: boolean;
} & {
    removeBorderRadius?: "left" | "right";
} & {
    component?: string | Component;
}) | (import('./types').KdsButtonCommonProps<import('./types').KdsButtonVariant> & {
    label?: never;
    leadingIcon: import('..').KdsIconName;
    trailingIcon?: never;
    ariaLabel: string;
} & import('./types').WithDestructive & {
    success?: boolean;
} & {
    error?: boolean;
} & {
    toggled?: boolean;
} & {
    removeBorderRadius?: "left" | "right";
} & {
    component?: string | Component;
}), {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    click: (event: MouseEvent) => any;
}, string, import('vue').PublicProps, Readonly<(import('./types').KdsButtonCommonProps<import('./types').KdsButtonVariant> & {
    label: string;
    leadingIcon?: import('..').KdsIconName;
    trailingIcon?: import('..').KdsIconName;
    ariaLabel?: never;
} & import('./types').WithDestructive & {
    success?: boolean;
} & {
    error?: boolean;
} & {
    toggled?: boolean;
} & {
    removeBorderRadius?: "left" | "right";
} & {
    component?: string | Component;
}) | (import('./types').KdsButtonCommonProps<import('./types').KdsButtonVariant> & {
    label?: never;
    leadingIcon: import('..').KdsIconName;
    trailingIcon?: never;
    ariaLabel: string;
} & import('./types').WithDestructive & {
    success?: boolean;
} & {
    error?: boolean;
} & {
    toggled?: boolean;
} & {
    removeBorderRadius?: "left" | "right";
} & {
    component?: string | Component;
})> & Readonly<{
    onClick?: ((event: MouseEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
//# sourceMappingURL=BaseButton.vue.d.ts.map