import { EventEmitter } from '../../stencil-public-runtime'; import { TextColorsTokenType } from '../../types/design-token.type'; import { VegaButtonType } from '../vega-button/types'; import { VegaButtonCircleSize, VegaButtonCircleVariant, VegaButtonCircleTooltip } from './types'; import { GlobalSlimmers } from '../../vega-slimmer/vega-slimmer-core'; import { EventEmitSlimmerBase } from '../../helpers/event-manager/slimmers/event-emit-slimmer'; import { ChildNodesEventPreventSlimmer } from '../../helpers/event-manager/slimmers/child-nodes-event-prevent-slimmer'; import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics'; import { AriaAttributesValueMapper } from '../../helpers/slimmers/mutation-observer/aria-attributes-value-mapper'; /** * @vegaVersion 1.0.2 */ export declare class VegaButtonCircle { protected readonly globalSlimmers: GlobalSlimmers; protected clickEventEmitter: EventEmitSlimmerBase; protected eventPrevent: ChildNodesEventPreventSlimmer; protected ariaAttributesValueMapper: AriaAttributesValueMapper; protected vegaComponentUsageRuntimeMetricsSlimmer: VegaComponentUsageRuntimeMetricsSlimmer; host: HTMLVegaButtonCircleElement; /** * Specifies the size of the circular button. * * @vegaVersion 1.0.2 */ size: VegaButtonCircleSize; /** * Specifies the variant and prominence of the circular button. * * The following options are available for the `variant` parameter: * - `primary`: * The circular button is rendered with the `bg-action` background color, * which typically signifies a primary or important action. * - `secondary`: * The circular button is rendered with a transparent background and * an `action` border color. This variant is often used for * secondary or less prominent actions. * - `icon-only`: * The circular button is rendered with an icon displayed in the default state, * and the circle background appears when hovering over the button. * * @vegaVersion 1.0.2 */ variant: VegaButtonCircleVariant; /** * Specifies the icon to be displayed on the circular button, * which can be selected from a list of predefined icon tokens * or specified using a Font Awesome class. * * @vegaVersion 1.0.4 */ icon: string; /** * Specifies the text to be displayed in the tooltip for the circular button * and sets it as the `aria-label` for accessibility. * * @vegaVersion 1.0.4 */ label: string; /** * Specifies whether the circular button element is disabled. * * @vegaVersion 1.0.4 */ disabled: boolean; /** * Indicates the danger status of the circular button, * typically used for destructive actions. * * @vegaVersion 1.3.0 */ danger: boolean; /** * Specifies the type of button and its behavior in relation to * form submission and data reset. * * @vegaVersion 1.16.0 */ type: VegaButtonType; /** * Specifies the color of the icon displayed on the circular button. * * @vegaVersion 1.24.0 */ iconColor: TextColorsTokenType; /** * Indicates whether to use a tooltip to display the label for the button circle. * * @vegaVersion 2.0.0 */ showTooltip: boolean; /** * Specifies the properties of the `vega-tooltip` displayed for the button circle. * * @vegaVersion 1.52.0 */ tooltip: VegaButtonCircleTooltip; /** * An event emitter notifying the click event of the circular button. * * @vegaVersion 1.0.11 */ vegaClick: EventEmitter; /** * An event emitter notifying the click event of the circular button. * * @eventSemantics namespace:native * @vegaVersion 2.0.0 */ click: EventEmitter; componentWillLoad(): void; render(): VegaButtonCircle; private renderButton; private handleClick; private renderContent; /** * get the button content icon size from the button size * * @param {VegaButtonCircleSize} size the button size * @returns {SpacingTokenType} the icon size */ private getIconSize; }