import * as _angular_core from '@angular/core'; import { WritableSignal, Signal, TemplateRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; type PillboxSize = 'default' | 'sm'; type PillboxVariant = 'default' | 'combobox'; interface PillboxSelectedItem { readonly value: unknown; readonly label: string; readonly template: TemplateRef | null; readonly track: unknown; } declare abstract class PillboxContext { abstract readonly query: WritableSignal; abstract readonly openState: Signal; abstract optionVisible(option: PillboxOptionComponent): boolean; abstract optionSelected(option: PillboxOptionComponent): boolean; abstract chooseOption(option: PillboxOptionComponent, event: Event): void; abstract createVisible(option: PillboxOptionCreateComponent): boolean; abstract chooseCreate(option: PillboxOptionCreateComponent, event: Event): void; abstract emptyVisible(): boolean; abstract emptyMessage(): string; } declare class PillboxSelectedDirective { readonly template: TemplateRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } declare class PillboxOptionComponent { private readonly context; private readonly element; private readonly selectedTemplate; readonly value: _angular_core.InputSignal; readonly label: _angular_core.InputSignal; readonly selectedLabel: _angular_core.InputSignal; readonly disabled: _angular_core.InputSignalWithTransform; readonly filterable: _angular_core.InputSignalWithTransform; readonly class: _angular_core.InputSignal; readonly selectedChange: _angular_core.OutputEmitterRef; protected readonly selected: Signal; protected readonly visible: Signal; protected readonly classes: Signal; textLabel(): string; pillLabel(): string; pillTemplate(): TemplateRef | null; protected handleClick(event: Event): void; protected handleKeydown(event: KeyboardEvent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class PillboxOptionCreateComponent { private readonly context; readonly minLength: _angular_core.InputSignalWithTransform; readonly disabled: _angular_core.InputSignalWithTransform; readonly class: _angular_core.InputSignal; readonly selected: _angular_core.OutputEmitterRef; protected readonly visible: Signal; protected readonly classes: Signal; protected handleClick(event: Event): void; protected handleKeydown(event: KeyboardEvent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class PillboxOptionEmptyComponent { protected readonly context: PillboxContext; readonly whenLoading: _angular_core.InputSignal; readonly class: _angular_core.InputSignal; protected readonly classes: Signal; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class PillboxComponent extends PillboxContext implements ControlValueAccessor { private readonly element; private readonly document; private readonly destroyRef; readonly id: _angular_core.InputSignal; readonly placeholder: _angular_core.InputSignal; readonly searchPlaceholder: _angular_core.InputSignal; readonly size: _angular_core.InputSignal; readonly variant: _angular_core.InputSignal; readonly multiple: _angular_core.InputSignalWithTransform; readonly searchable: _angular_core.InputSignalWithTransform; readonly filter: _angular_core.InputSignalWithTransform; readonly clearable: _angular_core.InputSignalWithTransform; readonly disabled: _angular_core.InputSignalWithTransform; readonly invalid: _angular_core.InputSignalWithTransform; readonly loading: _angular_core.InputSignalWithTransform; readonly emptyText: _angular_core.InputSignal; readonly loadingText: _angular_core.InputSignal; readonly ariaLabel: _angular_core.InputSignal; readonly ariaDescribedby: _angular_core.InputSignal; readonly ariaLabelledby: _angular_core.InputSignal; readonly class: _angular_core.InputSignal; readonly valueChange: _angular_core.OutputEmitterRef; readonly searchChange: _angular_core.OutputEmitterRef; readonly create: _angular_core.OutputEmitterRef; readonly openedChange: _angular_core.OutputEmitterRef; readonly query: WritableSignal; readonly openState: WritableSignal; private readonly selectedValues; private readonly disabledFromControl; private readonly generatedId; private readonly trigger; private readonly inlineSearch; private readonly panelSearch; private readonly options; private readonly createOptions; private readonly emptyOptions; private removeDocumentListener; private onChange; private onTouched; protected readonly panelId: string; protected readonly resolvedId: Signal; protected readonly disabledState: Signal; protected readonly classes: Signal; protected readonly triggerClasses: Signal; protected readonly pillClasses: Signal; protected readonly panelClasses: Signal; protected readonly selectedItems: Signal; constructor(); optionVisible(option: PillboxOptionComponent): boolean; optionSelected(option: PillboxOptionComponent): boolean; chooseOption(option: PillboxOptionComponent, event: Event): void; createVisible(option: PillboxOptionCreateComponent): boolean; chooseCreate(option: PillboxOptionCreateComponent, event: Event): void; emptyVisible(): boolean; emptyMessage(): string; protected handleTriggerClick(): void; protected handleTriggerKeydown(event: KeyboardEvent): void; protected handleSearchInput(event: Event): void; protected handleInlineBackspace(event: KeyboardEvent): void; protected clearSearch(event: Event): void; protected clear(event: Event): void; protected removeSelected(value: unknown, event: Event): void; open(): void; close(): void; focus(): void; writeValue(value: unknown): void; registerOnChange(fn: (value: unknown) => void): void; registerOnTouched(fn: () => void): void; setDisabledState(disabled: boolean): void; private emitValue; private hasValue; private findOption; private hasVisibleOptions; private hasVisibleCreateOption; private sameValue; private focusSearchInput; private bindOutsideListener; private removeOutsideListener; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } export { PillboxComponent, PillboxOptionComponent, PillboxOptionCreateComponent, PillboxOptionEmptyComponent, PillboxSelectedDirective }; export type { PillboxSize, PillboxVariant };