/// <reference types="lodash" />
import { ContextService } from '../context.service';
import { OnDestroy, ElementRef, Renderer } from '@angular/core';
import { FieldViewModel } from '../view-models/field-view-model';
import { ChoiceViewModel } from '../view-models/choice-view-model';
import { IDraggableViewModel } from '../view-models/idraggable-view-model';
import { FormGroup, AbstractControl } from '@angular/forms';
import { Dictionary } from 'lodash';
import { BehaviorSubject } from 'rxjs';
export declare class AutoCompleteComponent implements OnDestroy {
    private readonly context;
    private readonly renderer;
    constructor(context: ContextService, renderer: Renderer);
    private fieldViewModel;
    model: FieldViewModel;
    form: FormGroup;
    readonly modelPaneId: string;
    readonly modelId: string;
    readonly control: AbstractControl;
    readonly choices: ChoiceViewModel[];
    canDrop: boolean;
    accept(droppableVm: FieldViewModel): (draggableVm: IDraggableViewModel) => boolean;
    drop(draggableVm: IDraggableViewModel): void;
    classes(): Dictionary<boolean | null>;
    readonly description: string;
    paste(event: KeyboardEvent): void;
    clear(): void;
    select(item: ChoiceViewModel): void;
    choiceName: (choice: ChoiceViewModel) => string;
    private bSubject;
    private sub;
    readonly subject: BehaviorSubject<any>;
    private currentIndex;
    isSelected(i: number): {
        "selected": boolean;
    };
    onArrowUp(): boolean;
    onArrowDown(): boolean;
    selectCurrent(): boolean;
    ngOnDestroy(): void;
    inputField: ElementRef;
    focus(): boolean;
}
