import { IconType, ExtendedThemeType, TranslatableString, GradientProp, GradientDirProp } from '..'; type __VLS_Props = { disabled?: boolean; icon?: IconType; iconEnd?: IconType; iconSize?: number | string; iconMobileSize?: number | string; color?: ExtendedThemeType; variant?: 'solid' | 'flat' | 'outline' | 'soft' | 'frost'; /** Boolean variant shorthands: — same as variant="flat" */ flat?: boolean; outline?: boolean; /** Soft variant: light tinted bg + full-color text & border, driven by `color`. Shorthand for variant="soft". e.g. */ soft?: boolean; /** Frost variant: translucent + blur, tinted by `color`. Reads beautifully over photos / gradients / dark heroes. Shorthand for variant="frost". */ frost?: boolean; /** Gradient fill (white text). Boolean = auto (a darker shade of `color`); or a space-separated tone list — "purple" pairs with `color` (blue→purple), "blue purple pink" defines all stops. */ gradient?: GradientProp; /** Gradient direction: a named direction ("to-br") or an angle in degrees (45 or "45"). Defaults to 135deg. */ gradientDir?: GradientDirProp; /** Solid fill + a hairline border (keeps the background, unlike `outline`). */ frame?: boolean; /** @deprecated Use `outline` */ border?: boolean; thin?: boolean; size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl'; /** Boolean size shorthands: */ xs?: boolean; sm?: boolean; md?: boolean; lg?: boolean; xl?: boolean; type?: 'button' | 'submit' | 'reset'; loading?: boolean; role?: string; value?: TranslatableString; to?: string | Record; href?: string; round?: boolean; is?: string; ripple?: boolean; fullWidth?: boolean; fullWidthMobile?: boolean; alignTxt?: 'center' | 'start' | 'end'; alignTxtMobile?: 'center' | 'start' | 'end'; onClick?: (e: MouseEvent) => void; confirm?: boolean | string; }; declare function __VLS_template(): { attrs: Partial<{}>; slots: { default?(_: {}): any; }; refs: {}; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { confirmed: (event: MouseEvent) => any; }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{ onConfirmed?: ((event: MouseEvent) => any) | undefined; }>, { onClick: (e: MouseEvent) => void; round: boolean; type: "button" | "submit" | "reset"; disabled: boolean; border: boolean; outline: boolean; fullWidth: boolean; ripple: boolean; loading: boolean; role: string; is: string; fullWidthMobile: boolean; alignTxt: "center" | "start" | "end"; alignTxtMobile: "center" | "start" | "end"; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; //# sourceMappingURL=Btn.vue.d.ts.map