import { ComponentInterface } from '../../stencil-public-runtime'; import { ButtonType } from '../types'; import { ButtonVariants } from '../types'; /** * A button component with different styles and icon capability. * * @slot icon-leading - For the icon to be prepended * @slot icon-trailing - For the icon to be appended */ export declare class Button implements ComponentInterface { private buttonEl; el: HTMLInoButtonElement; /** * Sets the autofocus for this element. */ autoFocus?: boolean; /** * Disables this element. */ disabled?: boolean; /** * The name of the element. */ name?: string; /** * The form id this element origins to. */ form?: string; /** * The type of this form. * * Can either be `button`, `submit` or `reset`. */ type?: ButtonType; /** * The button variant. * * * **filled**: Contain actions that are important for your application. * * **outlined**: Buttons with medium highlighting. They contain actions that are important but are not the main action in an app. * * **text**: Typically used for less prominent actions, including those in dialogs and cards. */ variant: ButtonVariants; /** * Makes the button text and container slightly smaller. */ dense: boolean; /** * Shows an infinite loading spinner and prevents further clicks. */ loading?: boolean; private buttonSizeBeforeLoad; private buttonHeightBeforeLoad; loadingChanged(isLoading: boolean): void; componentDidUpdate(): void; private handleClick; render(): any; }