import type { RouteLocationRaw } from 'vue-router';
export interface ButtonProps {
/**
* Renders the secondary variant
*/
secondary?: boolean;
/**
* Renders the button as a container for an Icon
*/
icon?: boolean;
/**
* Renders the button as a container for an IconLabel
*/
iconLabel?: boolean;
/**
* Renders the tertiary variant
*/
tertiary?: boolean;
/**
* Renders the component inline
*/
inline?: boolean;
/**
* Renders a color variant
*/
color?: 'blue' | 'red';
/**
* The `to` prop for vue-router's `RouterLink` component. If defined, the button will render as a ``.
*/
to?: RouteLocationRaw;
/**
* Button link. If defined, the button will render as an `` tag.
*/
href?: string;
/**
* Displays a spinning loading icon in place of the button text and disables the button
*/
isLoading?: boolean;
/**
* Disables the button
*/
disabled?: boolean;
}
declare const _default: typeof __VLS_export;
export default _default;
declare const __VLS_export: __VLS_WithSlots & Readonly<{}>, {
color: "blue" | "red";
icon: boolean;
href: string;
secondary: boolean;
iconLabel: boolean;
tertiary: boolean;
inline: boolean;
to: RouteLocationRaw;
isLoading: boolean;
disabled: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
default?: (props: {}) => any;
}>;
type __VLS_WithSlots = T & {
new (): {
$slots: S;
};
};