import { EventEmitter } from '../../stencil-public-runtime';
import { IconName, IconSize } from '../icon/exports';
import { TooltipPosition } from '../tooltip/exports';
/**
* An icon button is a button that contains only an icon and is used to trigger an action.
*
* Example
* ```
*
*
*
* ```
*
* @slot - The icon element to display inside the button
*/
export declare class IconButton {
host: HTMLRIconButtonElement;
/**
* The label for the button, used for accessibility.
* This label is not visible on the button itself.
* It is recommended to provide a label for screen readers.
* If not provided, the button will be considered as having no label.
*/
label?: string;
/**
* Name of the icon to display within the button.
*/
name: IconName;
/**
* Defines the size of the icon used within the button.
*/
size: IconSize;
/**
* @deprecated Use the `` component as a wrapper instead.
* Sets position for the tooltip.
* - `top`: Tooltip appears above the button.
* - `bottom`: Tooltip appears below the button.
* - `left`: Tooltip appears to the left of the button.
* - `right`: Tooltip appears to the right of the button.
*/
tooltipPosition: TooltipPosition;
/**
* @deprecated Use the `` component as a wrapper instead.
* Text to display within the tooltip when the button is hovered or focused.
*/
tooltipText?: string;
/**
* Sets string value for `aria-description` attribute
*/
rAriaDescription?: string;
/**
* Prevents user interaction and applies disabled style.
*/
disabled?: boolean;
/**
* Defines the visual style of the button.
* - `standard`: Default button style.
* - `contained`: Button with a contained background.
*/
variant: 'standard' | 'contained';
/**
* Defines the tabindex of the button for keyboard navigation.
*/
rTabindex?: number;
/**
* Emits `rClick` event on click.
*/
rClick: EventEmitter;
/** Reference to the native button */
private nativeElement?;
/** Simulate a button click */
triggerClick(): Promise;
/** Set focus on the button */
setFocus(): Promise;
/** Remove focus from the button */
setBlur(): Promise;
private _handleClick;
render(): any;
}