import { Overlay } from '@angular/cdk/overlay';
import { Platform } from '@angular/cdk/platform';
import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, Renderer2, SimpleChanges, ViewContainerRef } from '@angular/core';
import { NzConfigKey, NzConfigService } from 'ng-zorro-antd/core/config';
import { BooleanInput, IndexableObject } from 'ng-zorro-antd/core/types';
import { NzDropdownMenuComponent, NzPlacementType } from './dropdown-menu.component';
import * as i0 from "@angular/core";
export declare class NzDropDownDirective implements AfterViewInit, OnDestroy, OnChanges {
    readonly nzConfigService: NzConfigService;
    elementRef: ElementRef;
    private overlay;
    private renderer;
    private viewContainerRef;
    private platform;
    readonly _nzModuleName: NzConfigKey;
    static ngAcceptInputType_nzBackdrop: BooleanInput;
    static ngAcceptInputType_nzClickHide: BooleanInput;
    static ngAcceptInputType_nzDisabled: BooleanInput;
    static ngAcceptInputType_nzVisible: BooleanInput;
    private portal?;
    private overlayRef;
    private destroy$;
    private positionStrategy;
    private inputVisible$;
    private nzTrigger$;
    private overlayClose$;
    nzDropdownMenu: NzDropdownMenuComponent | null;
    nzTrigger: 'click' | 'hover';
    nzMatchWidthElement: ElementRef | null;
    nzBackdrop: boolean;
    nzClickHide: boolean;
    nzDisabled: boolean;
    nzVisible: boolean;
    nzOverlayClassName: string;
    nzOverlayStyle: IndexableObject;
    nzPlacement: NzPlacementType;
    readonly nzVisibleChange: EventEmitter<boolean>;
    setDropdownMenuValue<T extends keyof NzDropdownMenuComponent>(key: T, value: NzDropdownMenuComponent[T]): void;
    constructor(nzConfigService: NzConfigService, elementRef: ElementRef, overlay: Overlay, renderer: Renderer2, viewContainerRef: ViewContainerRef, platform: Platform);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzDropDownDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzDropDownDirective, "[nz-dropdown]", ["nzDropdown"], { "nzDropdownMenu": "nzDropdownMenu"; "nzTrigger": "nzTrigger"; "nzMatchWidthElement": "nzMatchWidthElement"; "nzBackdrop": "nzBackdrop"; "nzClickHide": "nzClickHide"; "nzDisabled": "nzDisabled"; "nzVisible": "nzVisible"; "nzOverlayClassName": "nzOverlayClassName"; "nzOverlayStyle": "nzOverlayStyle"; "nzPlacement": "nzPlacement"; }, { "nzVisibleChange": "nzVisibleChange"; }, never, never, false, never>;
}
