import { AfterContentInit, ElementRef, EventEmitter, QueryList, Renderer2 } from '@angular/core';
import { HeadwindOptionComponent } from './headwind-option/headwind-option.component';
import { HeadwindClickDetector } from '../../../services/headwind-click-detector.service';
import { HeadwindWindowService } from '../../../services/headwind-window.service';
import { HeadwindPlatformService } from '../../../services/headwind-platform.service';
import { HeadwindSelectService } from '../service/headwind-select.service';
import { YDirections } from '../../../types/y-directions';
import { HeadwindQueryListService } from '../../../services/headwind-query-list.service';
import * as i0 from "@angular/core";
export declare class HeadwindOptionsOverlayComponent implements AfterContentInit {
    private readonly _renderer;
    private readonly _elementRef;
    private readonly _headwindWindowService;
    private readonly _headwindPlatformService;
    private readonly _headwindClickDetector;
    private readonly _headwindQueryListService;
    private readonly _headwindSelectService;
    actualDirectionChange: EventEmitter<YDirections>;
    optionList?: QueryList<HeadwindOptionComponent>;
    private _focusedIndex;
    constructor(_renderer: Renderer2, _elementRef: ElementRef<HTMLElement>, _headwindWindowService: HeadwindWindowService, _headwindPlatformService: HeadwindPlatformService, _headwindClickDetector: HeadwindClickDetector, _headwindQueryListService: HeadwindQueryListService, _headwindSelectService: HeadwindSelectService);
    get optionsLastIndex(): number;
    ngAfterContentInit(): void;
    onWindowArrowUpKeydown(event: Event): void;
    onWindowArrowDownKeydown(event: Event): void;
    onWindowSpaceKeydown(event: Event): void;
    onWindowEnterKeydown(event: Event): void;
    /** Focus to option that is equal to value */
    focusToSelected(): void;
    focusToPrevious(): void;
    focusToNext(): void;
    selectFocusedOption(): void;
    findOptionByValue(value: any): HeadwindOptionComponent | undefined;
    findOptionIndexByValue(value: any): number;
    updatePosition(select: HTMLElement): void;
    scrollToOptionByValue(value: any): void;
    private _emitActualDirectionTop;
    private _emitActualDirectionBottom;
    static ɵfac: i0.ɵɵFactoryDeclaration<HeadwindOptionsOverlayComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<HeadwindOptionsOverlayComponent, "headwind-options-overlay", never, {}, { "actualDirectionChange": "actualDirectionChange"; }, ["optionList"], ["*"], true, never>;
}
