import { BooleanInput } from '@angular/cdk/coercion';
import { EventEmitter, TemplateRef } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';
import { IDejaChipsComponentCloseEvent } from './chips-close.event';
import * as i0 from "@angular/core";
export declare class DejaChipsComponent implements ControlValueAccessor {
    control: NgControl;
    readonly close: EventEmitter<IDejaChipsComponentCloseEvent>;
    /** Retourne ou definit la liste des éléments. */
    _items: unknown[];
    /** Retourne ou definit le champ à utiliser comme texte. */
    textField: string;
    /** Template d'élément si définit extérieurement au composant */
    itemTemplateExternal: TemplateRef<unknown>;
    /** Template de control d'insertion si définit extérieurement au composant */
    insertTemplateExternal: TemplateRef<unknown>;
    _disabled: boolean;
    private itemTemplateInternal;
    private insertTemplateInternal;
    private _readonly;
    constructor(control: NgControl);
    /** Lecture seule */
    set readonly(value: BooleanInput);
    get readonly(): BooleanInput;
    /** Retourne ou definit si le selecteur est desactivé. */
    set disabled(value: BooleanInput);
    get disabled(): BooleanInput;
    set items(value: unknown[]);
    get items(): unknown[];
    get itemTemplate(): TemplateRef<unknown>;
    get insertTemplate(): TemplateRef<unknown>;
    set value(value: unknown[]);
    get value(): unknown[];
    writeValue(value: unknown[]): void;
    registerOnChange(fn: (_a: unknown) => void): void;
    registerOnTouched(fn: () => void): void;
    setDisabledState(isDisabled: boolean): void;
    getTextValue(value: any): string;
    onClose(closeEvent: Event, item: unknown, index: number): boolean;
    protected onChangeCallback: (_a: unknown) => void;
    protected onTouchedCallback: () => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DejaChipsComponent, [{ optional: true; self: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DejaChipsComponent, "deja-chips", never, { "_items": "_items"; "textField": "textField"; "itemTemplateExternal": "itemTemplateExternal"; "insertTemplateExternal": "insertTemplateExternal"; "readonly": "readonly"; "disabled": "disabled"; "items": "items"; }, { "close": "close"; }, ["itemTemplateInternal", "insertTemplateInternal"], never, false>;
}
