import { NgClass } from '@angular/common';
import { ElementRef, NgZone, OnDestroy } from '@angular/core';
import { DokuDropdownMenuItem } from './dropdown-menu-item.directive';
import { DokuDropdown } from './dropdown.directive';
import { DokuDropdownPlacement } from './dropdown.interface';
import * as i0 from "@angular/core";
export declare class DokuDropdownMenu implements OnDestroy {
    private elementRef;
    private ngZone;
    private dropdown?;
    private menuItem?;
    protected readonly classes: NgClass['ngClass'];
    protected placement: DokuDropdownPlacement;
    private nativeElement;
    private cleanup?;
    constructor(elementRef: ElementRef, ngZone: NgZone, dropdown?: DokuDropdown | undefined, menuItem?: DokuDropdownMenuItem | undefined);
    ngOnDestroy(): void;
    toggle(): void;
    show(): void;
    hide(): void;
    private getTogglerElement;
    private updatePosition;
    private doAutoUpdatePosition;
    static ɵfac: i0.ɵɵFactoryDeclaration<DokuDropdownMenu, [null, null, { optional: true; }, { optional: true; host: true; }]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DokuDropdownMenu, "[doku-dropdown-menu]", ["dokuDropdownMenu"], {}, {}, never, never, true>;
}
