import { FmButtonColorThemeVariant, FmButtonVariant } from '../../components/button'; export interface FmButtonProps { /** Variant of the button. */ variant?: FmButtonVariant | `${FmButtonVariant}`; /** Label of the button. */ label?: string; /** * @deprecated * Please use `prependIcon` and `appendIcon` from now on. */ icon?: string; /** * Size of the button. * * `FAB` will be size `lg` always. */ size?: 'md' | 'lg'; /** Specify if button is disabled. */ disabled?: boolean; iconColor?: FmButtonColorThemeVariant | string; borderColor?: FmButtonColorThemeVariant | string; textColor?: FmButtonColorThemeVariant | string; bgColor?: FmButtonColorThemeVariant | string; /** * The type of the button. * * Default: `button` */ type?: 'submit' | 'reset' | 'button'; /** * @deprecated * Please use `prependIcon` and `appendIcon` from now on. * * This option was originally to be used with `icon`. */ iconPosition?: 'prepend' | 'append'; /** To add icon at the front. */ prependIcon?: string; /** To add icon at the back. */ appendIcon?: string; /** Loading state */ loading?: boolean; /** Disable icon status */ disableIconStatus?: boolean; /** Force icon outline status */ overwriteIconOutline?: 'outline' | 'filled'; } declare const _default: __VLS_WithTemplateSlots, { variant: FmButtonVariant; label: string; icon: string; size: string; disabled: boolean; type: string; iconPosition: string; prependIcon: string; appendIcon: string; loading: boolean; }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly, { variant: FmButtonVariant; label: string; icon: string; size: string; disabled: boolean; type: string; iconPosition: string; prependIcon: string; appendIcon: string; loading: boolean; }>>>, { size: "md" | "lg"; type: "reset" | "submit" | "button"; label: string; disabled: boolean; variant: "plain" | "primary" | "secondary" | "destructive" | "tertiary" | "fab" | FmButtonVariant; loading: boolean; icon: string; iconPosition: "prepend" | "append"; prependIcon: string; appendIcon: string; }, {}>, { default?(_: { disabled: boolean; }): any; }>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };