export declare class IconButton { el: HTMLIfxIconButtonElement; /** * Visual style of the icon button. * Primary has a solid background, secondary has an outline and tertiary is just the icon with no background or border. * @default "primary" */ readonly variant: "primary" | "secondary" | "tertiary"; /** * Size of the icon button. * Options: xs (20px), s (32px), m (36px) and l (40px). * @default "m" */ readonly size: "xs" | "s" | "m" | "l"; /** * Disables the button and blocks user interaction. * @default false */ readonly disabled: boolean; /** * Icon name rendered by the nested `ifx-icon`. * Refer to the [Icon Library](https://infineon.github.io/infineon-design-system-stencil/storybook/?path=/docs/icon-library--development) for available icons. */ readonly icon: string; updateIcon(newIcon: string): void; /** * URL to navigate to; when provided, the component renders as a link. */ readonly href: string; /** * Target for link navigation when `href` is set. * @default "_self" */ readonly target: string; /** * Visual shape of the icon button. * @default "round" */ readonly shape: "round" | "square"; /** * Accessible name announced by assistive technologies. */ readonly ariaLabelText: string | null; internalIcon: string; private focusableElement; /** * Sets focus on the icon button. If the button is rendered as a link, it focuses the anchor element; otherwise, it focuses the button element. */ setFocus(): Promise; handleClick(event: Event): void; componentWillLoad(): void; componentDidLoad(): Promise; render(): any; private getVariantClass; private getSizeClass; private getClassNames; }