import * as _angular_core from '@angular/core';
import * as i1 from '@eui/components/shared';
import { BaseStatesDirective } from '@eui/components/shared';

/**
 * @description
 * Chip button component that provides clickable chip-styled buttons for triggering actions.
 * Similar to eui-chip but designed specifically for button interactions rather than display or removal.
 * Supports color variants, sizes, and filled/outline styles for various use cases.
 * Emits buttonClick event when clicked, making it ideal for filters, toggles, and action triggers.
 *
 * @usageNotes
 * #### Basic chip button
 * ```html
 * <eui-chip-button (buttonClick)="onChipClick($event)">
 *   Click me
 * </eui-chip-button>
 * ```
 *
 * #### Chip buttons with variants
 * ```html
 * <eui-chip-button euiPrimary [isFilled]="true">
 *   Primary
 * </eui-chip-button>
 * <eui-chip-button euiSuccess>
 *   Success
 * </eui-chip-button>
 * ```
 *
 * #### Filter chips
 * ```html
 * <eui-chip-button
 *   id="filter-active"
 *   [isFilled]="isActive"
 *   (buttonClick)="toggleFilter($event)">
 *   Active
 * </eui-chip-button>
 * ```
 *
 * #### With tooltip
 * ```html
 * <eui-chip-button
 *   euiTooltip="Click to apply filter"
 *   tooltipMessage="Filter by category">
 *   Category
 * </eui-chip-button>
 * ```
 *
 * #### Size variants
 * ```html
 * <eui-chip-button euiSizeS>Small</eui-chip-button>
 * <eui-chip-button>Default</eui-chip-button>
 * ```
 *
 * ```ts
 * onChipClick(id: string | number): void {
 *   console.log('Chip button clicked:', id);
 * }
 *
 * toggleFilter(id: string | number): void {
 *   this.isActive = !this.isActive;
 * }
 * ```
 *
 * ### Accessibility
 * - Native button semantics for keyboard accessibility (Enter/Space)
 * - Focus visible by default for keyboard navigation
 * - Disabled state prevents interaction and is announced to screen readers
 * - Color variants provide visual meaning supplemented by text labels
 * - tooltipMessage provides additional context on hover
 * - Ensure descriptive labels for screen reader users
 *
 * ### Notes
 * - Can be used as element (eui-chip-button) or attribute (span[euiChipButton], li[euiChipButton])
 * - Color variants: euiPrimary, euiSecondary, euiSuccess, euiInfo, euiWarning, euiDanger
 * - Size variants: euiSizeS, default (medium)
 * - isFilled applies solid background color instead of outline
 * - euiOutline applies outline/ghost styling
 * - euiDisabled disables button interaction
 * - buttonClick event emits the chip's id when clicked
 * - id property used for identification in click events
 * - euiInternalId for internal tracking purposes
 * - tooltipMessage displays tooltip on hover
 * - Different from eui-chip: designed for actions, not display/removal
 * - Commonly used for filters, category selection, and toggleable options
 * - Does not support removal functionality (use eui-chip with isChipRemovable instead)
 */
declare class EuiChipButtonComponent {
    /**
     * @description
     * Computes and returns the CSS classes for the component based on its current state.
     *
     * @returns {string} Space-separated string of CSS class names
     */
    cssClasses: _angular_core.Signal<string>;
    /**
     * Sets the `data-e2e` attribute for the host element.
     *
     * @default 'eui-chip-button'
     */
    e2eAttr: _angular_core.InputSignal<string>;
    /**
     * Sets the euiInternalId of the chip.
     *
     * @default null
     */
    euiInternalId: _angular_core.InputSignal<string>;
    /**
     * Sets the label of the tooltip to diaply on hover.
     */
    tooltipMessage: _angular_core.InputSignal<string>;
    /**
     * Sets the id of the chip.
     */
    id: _angular_core.InputSignal<string | number>;
    /**
     * Wether the chip is filled with color.
     *
     * @default false
     */
    isFilled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    buttonClick: _angular_core.OutputEmitterRef<any>;
    baseStatesDirective: BaseStatesDirective;
    onClick(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<EuiChipButtonComponent, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<EuiChipButtonComponent, "eui-chip-button, span[euiChipButton], li[euiChipButton]", never, { "e2eAttr": { "alias": "e2eAttr"; "required": false; "isSignal": true; }; "euiInternalId": { "alias": "euiInternalId"; "required": false; "isSignal": true; }; "tooltipMessage": { "alias": "tooltipMessage"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "isFilled": { "alias": "isFilled"; "required": false; "isSignal": true; }; }, { "buttonClick": "buttonClick"; }, never, ["*"], true, [{ directive: typeof i1.BaseStatesDirective; inputs: { "euiPrimary": "euiPrimary"; "euiSecondary": "euiSecondary"; "euiSuccess": "euiSuccess"; "euiInfo": "euiInfo"; "euiWarning": "euiWarning"; "euiDanger": "euiDanger"; "euiVariant": "euiVariant"; "euiSizeS": "euiSizeS"; "euiSizeVariant": "euiSizeVariant"; "euiOutline": "euiOutline"; "euiDisabled": "euiDisabled"; }; outputs: {}; }]>;
}

declare const EUI_CHIP_BUTTON: readonly [typeof EuiChipButtonComponent];

export { EUI_CHIP_BUTTON, EuiChipButtonComponent };
//# sourceMappingURL=eui-components-eui-chip-button.d.ts.map
