import { EventEmitter, ElementRef, ChangeDetectorRef, QueryList, Renderer2 } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { ListItemDirective } from './chips.directive';
export declare class ChipsComponent implements ControlValueAccessor {
    private el;
    private _cd;
    private render;
    /**
     * The event emitted when chips value changes
     */
    change: EventEmitter<string[]>;
    /**
     * Default chips value
     * @default []
     */
    value: Array<string>;
    /**
     * Whether the chips is disabled
     * @default false
     */
    disabled: boolean;
    /**
     * placeholder
     * @default '请输入'
     */
    placeholder: string;
    /**
     * 获取input输入框
     * @docs-private
     */
    liInput: ElementRef;
    /**
     * 获取已输入的chips list
     * @docs-private
     */
    chipsLi: QueryList<ListItemDirective>;
    constructor(el: ElementRef, _cd: ChangeDetectorRef, render: Renderer2);
    /**
     * Input event
     * @param {number} k event type
     * @param {string} v input value
     * @docs-private
     */
    onInputValue(k: number, v: string): void;
    /**
     * Delete chip event
     * @param {string} v to delete value
     * @docs-private
     */
    onDelChip(i: number): void;
    /**
     * Imitate input focus event
     * @param {object} input input element
     * @docs-private
     */
    inputFocus(): void;
    /**
     * The method to be called in order to update ngModel.
     * Now `ngModel` binding is not supported in multiple selection mode.
     */
    private _onModelChange;
    /**
     * Registers a callback that will be triggered when the value has changed.
     * Implemented as part of ControlValueAccessor.
     * @param fn On change callback function.
     */
    registerOnChange(fn: Function): void;
    /** onTouch function registered via registerOnTouch (ControlValueAccessor). */
    private _onTouch;
    /**
     * Registers a callback that will be triggered when the control has been touched.
     * Implemented as part of ControlValueAccessor.
     * @param fn On touch callback function.
     */
    registerOnTouched(fn: Function): void;
    /**
     * Sets the model value. Implemented as part of ControlValueAccessor.
     * @param {any} value - value to be set to the model.
     */
    writeValue(value: any): void;
    /**
     * Toggles the disabled state of the component. Implemented as part of ControlValueAccessor.
     * @param {boolean} isDisabled - Whether the component should be disabled.
     */
    setDisabledState(isDisabled: boolean): void;
    /**
     * update form model value and mark for check
     * @docs-private
     */
    _markForCheck(): void;
}
