import { ChangeDetectorRef, Renderer2 } from '@angular/core';
import { AgRendererComponent } from 'ag-grid-angular';
import { IGetRowsParams } from 'ag-grid-community';
import { AbstractApiComboBox } from '../abstract-api-combobox.component';
import { PreferencesService } from 'systelab-preferences';
import * as i0 from "@angular/core";
export declare class KeyName {
    static readonly backspace = "Backspace";
    static readonly enter = "Enter";
    static readonly escape = "Escape";
    static readonly tab = "Tab";
    static readonly arrowUp = "ArrowUp";
    static readonly arrowDown = "ArrowDown";
    static readonly shift = "Shift";
}
export declare abstract class AutocompleteApiComboBox<T> extends AbstractApiComboBox<T> implements AgRendererComponent {
    myRenderer: Renderer2;
    chref: ChangeDetectorRef;
    preferencesService?: PreferencesService;
    startsWith: string;
    debounceTime: number;
    withClearOption: boolean;
    constructor(myRenderer: Renderer2, chref: ChangeDetectorRef, preferencesService?: PreferencesService);
    doSearch(event: any): void;
    setDropdownHeight(): void;
    onInputClicked(event: MouseEvent): void;
    onInputNavigate(event: any): void;
    onCellKeyDown(e: any): void;
    onComboClicked(event: MouseEvent): void;
    closeDropDown(): void;
    getRows(params: IGetRowsParams): void;
    protected doSearchText(text: string): void;
    protected resetComboSelection(): void;
    private openDropDown;
    inputIsEmpty(): boolean;
    clearText(event: MouseEvent): void;
    onEnterDoSelect(event: KeyboardEvent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AutocompleteApiComboBox<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<AutocompleteApiComboBox<any>, never, never, { "debounceTime": { "alias": "debounceTime"; "required": false; }; "withClearOption": { "alias": "withClearOption"; "required": false; }; }, {}, never, never, false, never>;
}
