import { BaseButtonStyle, BaseButtonVariant } from './base-button.types'; import { IxButtonComponent } from './button-component'; import { AnchorTarget } from './button.interface'; import { InheritAriaAttributesMixinContract } from '../utils/internal/mixins/accessibility/inherit-aria-attributes.mixin'; export type ButtonVariant = `${BaseButtonVariant}` | `${BaseButtonStyle}-${BaseButtonVariant}`; declare const Button_base: abstract new (...args: any[]) => { componentDidLoad(): void; disconnectedCallback(): void; hostElement?: import("@stencil/core/internal").HTMLStencilElement; connectedCallback?(): void; componentWillRender?(): Promise | void; componentDidRender?(): void; componentWillLoad?(): Promise | void; componentShouldUpdate?(newVal: any, oldVal: any, propName: string): boolean | void; componentWillUpdate?(): Promise | void; componentDidUpdate?(): void; render?(): any; } & import("../utils/internal/component").StencilLifecycle & { inheritAriaAttributes: import("../utils/a11y").A11yAttributes; getIgnoredAriaAttributes(): import("../utils/a11y").A11yAttributeName[]; componentWillLoad(): Promise | void; ariaAttributeChanged(newValue: string | null, _: string | null, propName: string): void; hostElement?: import("@stencil/core/internal").HTMLStencilElement; connectedCallback?(): void; disconnectedCallback?(): void; componentWillRender?(): Promise | void; componentDidRender?(): void; componentDidLoad?(): void; componentShouldUpdate?(newVal: any, oldVal: any, propName: string): boolean | void; componentWillUpdate?(): Promise | void; componentDidUpdate?(): void; render?(): any; }; export declare class Button extends Button_base implements IxButtonComponent, InheritAriaAttributesMixinContract { /** * Button variant */ variant: ButtonVariant; /** * Disable the button */ disabled: boolean; /** * Type of the button */ type: 'button' | 'submit'; /** * Loading button */ loading: boolean; /** * Provide a form element ID to automatically submit the from if the button is pressed. Only works in combination with type="submit". * * @since 3.1.0 */ form?: string; /** * Icon name */ icon?: string; /** * Icon name for the right side of the button * @since 4.0.0 */ iconRight?: string; /** @internal */ alignment: 'center' | 'start'; /** @internal */ iconSize: '12' | '16' | '24'; /** * URL for the button link. When provided, the button will render as an anchor tag. * * @since 4.0.0 */ href?: string; /** * Specifies where to open the linked document when href is provided. * * @since 4.0.0 */ target?: AnchorTarget; /** * Specifies the relationship between the current document and the linked document when href is provided. * * @since 4.0.0 */ rel?: string; hostElement: HTMLIxButtonElement; /** * Temp. workaround until stencil issue is fixed (https://github.com/ionic-team/stencil/issues/2284) */ submitButtonElement?: HTMLButtonElement; handleClick(event: Event): void; componentDidLoad(): void; handleFormChange(newValue: string | undefined): void; componentDidRender(): void; dispatchFormEvents(): void; setFocus(): void; render(): any; } export {};