import { FocusMonitor } from "@angular/cdk/a11y";
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges } from "@angular/core";
import { Subject } from "rxjs";
import { LoggerService } from "../../../services/log-service";
import { UtilService } from "../../../services/util.service";
import { MenuActionComponent } from "../../menu/menu-item/menu-action/menu-action.component";
import { MenuGroupComponent } from "../../menu/menu-item/menu-group/menu-group.component";
import { MenuKeyControlService } from "../../menu/menu-key-control.service";
import { PopupComponent } from "../../popup-adapter/popup-adapter.component";
import { BaseSelect } from "../base-select";
import { ISelectGroup } from "../public-api";
import * as i0 from "@angular/core";
/**
 * @deprecated in v11 - Use ComboboxV2Component instead - Removal: NUI-5796
 */
export declare class ComboboxComponent extends BaseSelect implements OnInit, OnChanges, OnDestroy, AfterViewInit {
    private elRef;
    private renderer;
    private changeDetector;
    private keyControlService;
    private focusMonitor;
    private logger;
    /**
     * The option to clear the combobox if the value entered is not in array.
     */
    clearOnBlur: boolean;
    /**
     * A value that tells popup to be attached right after it's parent declaration or in <body>
     */
    appendToBody: boolean;
    isOpened: boolean;
    openControl: Subject<Event>;
    menuItems: QueryList<MenuActionComponent>;
    comboboxToggle: ElementRef;
    scrollContainer: ElementRef;
    menuGroups: QueryList<MenuGroupComponent>;
    popup: PopupComponent;
    popupRef: ElementRef;
    private debouncedBlur;
    private comboboxEventListeners;
    private itemsChangeSubscription;
    private focusMonitorSubscription;
    get isJustified(): boolean;
    get isInline(): boolean;
    constructor(utilService: UtilService, elRef: ElementRef, renderer: Renderer2, changeDetector: ChangeDetectorRef, keyControlService: MenuKeyControlService, focusMonitor: FocusMonitor, logger: LoggerService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    displayPlaceholder(): boolean;
    displayPlaceholderValue(): string;
    showIcon(): boolean;
    showRightBorder(): boolean;
    isRemoveValueDisplayed(): boolean;
    ngAfterViewInit(): void;
    private setKeyboardManagerServiceData;
    openChange(currentValue: boolean): void;
    onInputChange(value: any): void;
    handleBlur(): void;
    select(item: any): void;
    findObjectByValue(value: any): any;
    isGroupedData(itemsSource: any[] | ISelectGroup[]): itemsSource is ISelectGroup[];
    getItemDisplay(item: any): string;
    escapeItem(item: string): string;
    unescapeItem(item: string): string;
    ngOnDestroy(): void;
    getWidth(): string;
    getPopupContextClass(): string;
    clearValue(event: Event): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ComboboxComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ComboboxComponent, "nui-combobox", never, { "clearOnBlur": { "alias": "clearOnBlur"; "required": false; }; "appendToBody": { "alias": "appendToBody"; "required": false; }; }, {}, never, never, false, never>;
}
