import { Overlay } from '@angular/cdk/overlay';
import { AfterViewInit, OnDestroy, OnInit, ViewContainerRef } from '@angular/core';
import { LocalizationDirectionType, LocalizationService } from '../../../providers/localization/localization.service';
import { DropdownComponent } from './dropdown.component';
import * as i0 from "@angular/core";
export type DropdownPosition = 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
/**
 * A dropdown menu modelled on the Clarity Dropdown component (https://v1.clarity.design/dropdowns).
 *
 * This was created because the Clarity implementation (at this time) does not handle edge detection. Instead
 * we make use of the Angular CDK's Overlay module to manage the positioning.
 *
 * The API of this component (and its related Components & Directives) are based on the Clarity version,
 * albeit only a subset which is currently used in this application.
 */
export declare class DropdownMenuComponent implements AfterViewInit, OnInit, OnDestroy {
    private overlay;
    private viewContainerRef;
    private dropdown;
    private localizationService;
    direction$: LocalizationDirectionType;
    private position;
    customClasses: string;
    private menuTemplate;
    private menuPortal;
    private overlayRef;
    private backdropClickSub;
    onEscapeKeydown(event: KeyboardEvent): void;
    onArrowKey(event: KeyboardEvent): void;
    constructor(overlay: Overlay, viewContainerRef: ViewContainerRef, dropdown: DropdownComponent, localizationService: LocalizationService);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    private getPositionStrategy;
    /** Inverts an overlay position. */
    private invertPosition;
    static ɵfac: i0.ɵɵFactoryDeclaration<DropdownMenuComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DropdownMenuComponent, "vdr-dropdown-menu", never, { "position": { "alias": "vdrPosition"; "required": false; }; "customClasses": { "alias": "customClasses"; "required": false; }; }, {}, never, ["*"], false, never>;
}
