import { EventEmitter, ViewContainerRef, ComponentRef, OnDestroy, ElementRef, OnInit, ComponentFactoryResolver, Renderer2, TemplateRef, OnChanges, SimpleChanges } from '@angular/core';
import { PopoverComponent } from './popover.component';
import { PopoverOptions } from './popover-options.provider';
import * as i0 from "@angular/core";
export declare class PopoverDirective implements OnInit, OnChanges, OnDestroy {
    private _viewContainerRef;
    private _elm;
    private _defaultOptions;
    private _cfr;
    private _renderer;
    popover: ComponentRef<PopoverComponent>;
    appendToBodyElement: HTMLElement;
    private _eventListeners;
    mask: boolean;
    showArrow: boolean;
    visible: boolean;
    placement: string;
    overlay: TemplateRef<any>;
    onVisibleChange: EventEmitter<boolean>;
    onSelect: EventEmitter<any>;
    appendToBody: boolean;
    className: string;
    autoClose: boolean;
    togglePopover(): void;
    constructor(_viewContainerRef: ViewContainerRef, _elm: ElementRef, _defaultOptions: PopoverOptions, _cfr: ComponentFactoryResolver, _renderer: Renderer2);
    positionMap(placement: any): string;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    private onDocumentClick;
    private showPopover;
    private positionPopover;
    private hidePopover;
    static ɵfac: i0.ɵɵFactoryDeclaration<PopoverDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<PopoverDirective, "[Popover], [nzm-popover]", never, { "mask": { "alias": "mask"; "required": false; }; "showArrow": { "alias": "showArrow"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "overlay": { "alias": "overlay"; "required": false; }; "appendToBody": { "alias": "appendToBody"; "required": false; }; "className": { "alias": "className"; "required": false; }; "autoClose": { "alias": "autoClose"; "required": false; }; }, { "onVisibleChange": "onVisibleChange"; "onSelect": "onSelect"; }, never, never, false, never>;
}
