import { ConnectedPosition } from '@angular/cdk/overlay';
import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { AutoCompleteDirective } from 'ng-devui/auto-complete';
import { I18nInterface, I18nService } from 'ng-devui/i18n';
import { AppendToBodyDirection, AppendToBodyScrollStrategyType, DevConfigService } from 'ng-devui/utils';
import { Observable, Subscription } from 'rxjs';
import * as i0 from "@angular/core";
export declare class EditableSelectComponent implements ControlValueAccessor, OnInit, OnChanges, OnDestroy {
    private cdr;
    private i18n;
    private devConfigService;
    appendToBody: boolean;
    appendToBodyDirections: Array<AppendToBodyDirection | ConnectedPosition>;
    appendToBodyScrollStrategy: AppendToBodyScrollStrategyType;
    disabled: boolean;
    placeholder: string;
    source: any[];
    itemTemplate: TemplateRef<any>;
    noResultItemTemplate: TemplateRef<any>;
    maxHeight: number;
    width: number;
    disabledKey: string;
    allowClear: boolean;
    enableSelectedValueList: boolean;
    enableLazyLoad: boolean;
    customViewTemplate: TemplateRef<any>;
    customViewDirection: 'bottom' | 'right' | 'left' | 'top';
    formatter: (item: any) => any;
    valueParser: (item: any) => any;
    searchFn: (term: string) => Observable<any[]>;
    showAnimation: boolean;
    styleType: string;
    showGlowStyle: boolean;
    get hasGlowStyle(): boolean;
    loadMore: EventEmitter<any>;
    toggleChange: EventEmitter<any>;
    hoverItem: EventEmitter<any>;
    selectItem: EventEmitter<any>;
    autoCompleteDirective: AutoCompleteDirective;
    editableSelectBox: ElementRef;
    inputValue: any;
    inputValueCache: any;
    multiItems: any[];
    activeIndex: number;
    i18nCommonText: I18nInterface['common'];
    i18nSubscription: Subscription;
    subscription: Subscription;
    set dropDownOpen(val: boolean);
    get dropDownOpen(): boolean;
    get placeholderContent(): any;
    private ANIMATION_DELAY;
    private blurTimer;
    private _dropDownOpen;
    private onChange;
    private onTouched;
    onDocumentClick(event: MouseEvent): void;
    constructor(cdr: ChangeDetectorRef, i18n: I18nService, devConfigService: DevConfigService);
    ngOnChanges(changes: SimpleChanges): void;
    ngOnInit(): void;
    ngOnDestroy(): void;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    selectValue(value: any): void;
    valueClear(event: Event): void;
    onTermChange(value: any): void;
    toggle(): void;
    loadMoreEvent(event: any): void;
    toggleChangeHandler(value: boolean): void;
    onHoverItem(event: any): void;
    closeDropdownMenu(event: FocusEvent | MouseEvent, isBlur?: boolean): void;
    blurEventHandle(event: FocusEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<EditableSelectComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EditableSelectComponent, "d-editable-select", ["editable-select"], { "appendToBody": { "alias": "appendToBody"; "required": false; }; "appendToBodyDirections": { "alias": "appendToBodyDirections"; "required": false; }; "appendToBodyScrollStrategy": { "alias": "appendToBodyScrollStrategy"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "source": { "alias": "source"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "noResultItemTemplate": { "alias": "noResultItemTemplate"; "required": false; }; "maxHeight": { "alias": "maxHeight"; "required": false; }; "width": { "alias": "width"; "required": false; }; "disabledKey": { "alias": "disabledKey"; "required": false; }; "allowClear": { "alias": "allowClear"; "required": false; }; "enableSelectedValueList": { "alias": "enableSelectedValueList"; "required": false; }; "enableLazyLoad": { "alias": "enableLazyLoad"; "required": false; }; "customViewTemplate": { "alias": "customViewTemplate"; "required": false; }; "customViewDirection": { "alias": "customViewDirection"; "required": false; }; "formatter": { "alias": "formatter"; "required": false; }; "valueParser": { "alias": "valueParser"; "required": false; }; "searchFn": { "alias": "searchFn"; "required": false; }; "showAnimation": { "alias": "showAnimation"; "required": false; }; "styleType": { "alias": "styleType"; "required": false; }; "showGlowStyle": { "alias": "showGlowStyle"; "required": false; }; }, { "loadMore": "loadMore"; "toggleChange": "toggleChange"; "hoverItem": "hoverItem"; "selectItem": "selectItem"; }, never, never, false, never>;
}
