import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue'; type __VLS_Props = { /** Whether the button is displayed as block. */ block?: boolean; /** @ignore */ disabled?: HTMLButtonElement['disabled']; /** * Whether the button is loading. It will be non-interactive in loading state. */ loading?: boolean; /** * HTML tag for rendering the button. * @default 'button' */ tag?: 'button' | 'a' | (string & {}); }; declare function __VLS_template(): { attrs: Partial<{}>; slots: Readonly<{ /** Content of the button. */ default?: (props: {}) => any; }> & { /** Content of the button. */ default?: (props: {}) => any; }; refs: {}; rootEl: any; }; type __VLS_TemplateResult = ReturnType; declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>; declare const _default: __VLS_WithTemplateSlots; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };