import * as i0 from '@angular/core';

/**
 * @description
 * Directive for appending content to chip list, used internally by eui-autocomplete component.
 * Enables positioning of chips above, below, or inside the text input field.
 * Used exclusively within eui-autocomplete for flexible chip placement.
 */
declare class EuiChipListAppendContentDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<EuiChipListAppendContentDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<EuiChipListAppendContentDirective, "eui-chip-list-append-content", never, {}, {}, never, never, true, never>;
}
/**
 * @description
 * Directive for wrapping non-chip content within eui-chip-list.
 * Excludes wrapped content from the list ARIA structure for proper accessibility.
 * Used to include additional elements alongside chips without affecting semantic list structure.
 */
declare class EuiChipListAdditionalContentDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<EuiChipListAdditionalContentDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<EuiChipListAdditionalContentDirective, "eui-chip-list-additional-content", never, {}, {}, never, never, true, never>;
}
/**
 * @description
 * Container component for displaying multiple interactive chip elements as a cohesive group.
 * Provides semantic list structure with ARIA attributes for accessibility.
 * Automatically manages layout and spacing for chip collections.
 * Supports additional content via directives for flexible composition.
 * Typically used for displaying tags, filters, selected items, or multi-value selections.
 *
 * @usageNotes
 * ```html
 * <eui-chip-list>
 *     <eui-chip><span euiLabel>Label</span></eui-chip>
 * </eui-chip-list>
 * ```
 *
 * @usageNotes
 * With icon
 * ```html
 * <eui-chip-list>
 *     <eui-chip><span [class]="eui-user"></span><span euiLabel>Label</span></eui-chip>
 * </eui-chip-list>
 * ```
 *
 * @usageNotes
 * Max visible chips
 * ```html
 * <eui-chip-list>
 *     \@for (chip of chips; let i = $index; track chip.id) {
 *         \@if (isMaxVisibleChipsOpened || i <= maxVisibleChipsCount) {
 *             <eui-chip [data]="{ id: chip.id }" [euiVariant]="chip.variant"><span euiLabel>{{ chip.label }}</span></eui-chip>
 *         }
 *     }
 *     <eui-chip-list-additional-content>
 *         \@if (maxVisibleChipsCount && chips && chips.length > maxVisibleChipsCount) {
 *             <button
 *                 euiButton
 *                 euiBasicButton
 *                 euiSecondary
 *                 euiSizeS
 *                 type="button"
 *                 class="eui-chip-list__expand-button"
 *                 [aria-label]="isMaxVisibleChipsOpened ? 'Collapse tags' : 'Expand tags'"
 *                 (click)="toggleTags()">
 *                 \@if (isMaxVisibleChipsOpened) {
 *                     <eui-icon-svg icon="eui-chevron-left"/>
 *                 } \@else {
 *                     <eui-icon-svg icon="eui-chevron-right"/>
 *                 }
 *            </button>
 *         }
 *     </eui-chip-list-additional-content>
 * </eui-chip-list>
 * ```
 *
 * Typescript logic
 * ```ts
 * public chips = [
 *     { id: 1, label: 'Chip label', variant: 'primary' },
 * ];
 *
 * public maxVisibleChipsCount = 2;
 * public isMaxVisibleChipsOpened = false;
 *
 * public toggleTags(): void {
 *     this.isMaxVisibleChipsOpened = !this.isMaxVisibleChipsOpened;
 * }
 * ```
 */
declare class EuiChipListComponent {
    get cssClasses(): string;
    /**
     * ARIA label for the chip list container for screen reader accessibility.
     * Provides semantic description of the chip list purpose.
     * @default 'eUI Chip list'
     */
    ariaLabel: string;
    static ɵfac: i0.ɵɵFactoryDeclaration<EuiChipListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EuiChipListComponent, "eui-chip-list", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, {}, never, ["*", "eui-chip-list-additional-content", "eui-chip-list-append-content"], true, never>;
}

declare const EUI_CHIP_LIST: readonly [typeof EuiChipListComponent, typeof EuiChipListAppendContentDirective, typeof EuiChipListAdditionalContentDirective];

export { EUI_CHIP_LIST, EuiChipListAdditionalContentDirective, EuiChipListAppendContentDirective, EuiChipListComponent };
//# sourceMappingURL=eui-components-eui-chip-list.d.ts.map
