type __VLS_Props = { disabled?: boolean; variant?: "primary" | "secondary" | "critical" | "action"; ghost?: boolean; size?: "x-small" | "small" | "default" | "large"; square?: boolean; block?: boolean; link?: string; isLoading?: boolean; }; declare function __VLS_template(): { attrs: Partial<{}>; slots: Readonly<{ default: null; iconFront: { size: number; }; iconBack: { size: number; }; }> & { default: null; iconFront: { size: number; }; iconBack: { size: number; }; }; refs: {}; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, { size: "x-small" | "small" | "default" | "large"; variant: "primary" | "secondary" | "critical" | "action"; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };