import { ViewContainerRef, ComponentFactoryResolver, AfterViewInit, ElementRef, ChangeDetectorRef, OnDestroy, OnInit, EventEmitter, OnChanges, SimpleChange, Compiler } from "@angular/core";
export declare class Popover implements OnInit, OnChanges, OnDestroy {
    private compiler;
    private viewContainerRef;
    private resolver;
    private popover;
    private visible;
    constructor(compiler: Compiler, viewContainerRef: ViewContainerRef, resolver: ComponentFactoryResolver);
    content: string | PopoverContent;
    popoverDisabled: boolean;
    popoverAnimation: boolean;
    popoverPlacement: "top" | "bottom" | "left" | "right";
    popoverTitle: string;
    popoverAppendToBody: boolean;
    popoverOnHover: boolean;
    popoverCloseOnClickOutside: boolean;
    popoverCloseOnClick: boolean;
    popoverCloseOnMouseOutside: boolean;
    popoverDismissTimeout: number;
    closeOnClickOutside: boolean;
    closeOnMouseOutside: boolean;
    ngOnInit(): void;
    init(): void;
    showOrHideOnClick: (event: any) => void;
    showOnHover: (event: any) => void;
    hideOnHover: (event: any) => void;
    ngOnChanges(changes: {
        [propertyName: string]: SimpleChange;
    }): void;
    toggle(): void;
    show(): void;
    hide(): void;
    getElement(): any;
    ngOnDestroy(): void;
}
export declare class PopoverContent implements AfterViewInit, OnDestroy {
    private element;
    private cdr;
    content: string;
    placement: "top" | "bottom" | "left" | "right";
    title: string;
    animation: boolean;
    AppendToBody: boolean;
    closeOnClickOutside: boolean;
    closeOnMouseOutside: boolean;
    popoverDiv: ElementRef;
    popover: Popover;
    onCloseFromOutside: EventEmitter<{}>;
    top: number;
    left: number;
    isIn: boolean;
    displayType: string;
    /**
     * Closes dropdown if user clicks outside of this directive.
     */
    onDocumentMouseDown: (event: any) => void;
    constructor(element: ElementRef, cdr: ChangeDetectorRef);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    show(): void;
    hide(): void;
    hideFromPopover(): void;
    private positionElements(hostEl, targetEl, positionStr, appendToBody?);
    private position(nativeEl);
    private offset(nativeEl);
    private getStyle(nativeEl, cssProp);
    private isStaticPositioned(nativeEl);
    private parentOffsetEl(nativeEl);
}
