import { ElementRef, EventEmitter, OnChanges } from '@angular/core';
import { BooleanInput } from '@ngx-simple/core/coercion';
import { SimChipListComponent } from './chip-list.component';
import { SimChipTextControl } from './chip-text-control';
/** simChipInput 上的输入事件。 */
export interface SimChipInputEvent {
/** 正在为其触发事件的''元素 */
input: HTMLInputElement;
/** input的值 */
value: string;
}
/**
* 向''的内部或外部。
*/
export declare class SimChipInputDirective implements SimChipTextControl, OnChanges {
protected _elementRef: ElementRef;
/** 兼容ivy编译 */
static ngAcceptInputType_simChipInputAddOnBlur: BooleanInput;
static ngAcceptInputType_disabled: BooleanInput;
/** input控件是否被聚焦 */
focused: boolean;
_chipList: SimChipListComponent;
/** 为芯片列表注册input */
set chipList(value: SimChipListComponent);
/**
* 当input失去焦点,芯片组事件是否会被发出。
*/
get simChipInputAddOnBlur(): boolean;
set simChipInputAddOnBlur(value: boolean);
_addOnBlur: boolean;
/** input 是否被禁用 */
get disabled(): boolean;
set disabled(value: boolean);
private _disabled;
/** input 的 placeholder */
placeholder: string;
/** input的惟一id */
id: string;
/**
* 将触发添加芯片事件的键码列表 默认 `[ENTER]`
*/
simChipInputSeparatorKeyCodes: readonly number[] | ReadonlySet;
/** 当要添加芯片时发出 */
readonly simChipInputTokenEnd: EventEmitter;
/** input是否为空 */
get empty(): boolean;
/** 附加此指令的原生input元素 */
protected _inputElement: HTMLInputElement;
constructor(_elementRef: ElementRef);
ngOnChanges(): void;
/** input框触发键盘事件 */
_keydown(event?: KeyboardEvent): void;
/** 失去焦点,检查是否应该发出(芯片组)事件 */
_blur(): void;
/** 处理自定义按键 */
_focus(): void;
/** 检查是否需要发出(chipEnd)事件 */
_emitChipEnd(event?: KeyboardEvent): void;
/** input输入事件 */
_onInput(): void;
/** 获取焦点 */
focus(options?: FocusOptions): void;
/** 检查键码是否是配置的分隔符之一 */
private _isSeparatorKey;
}