import { ElementRef, TemplateRef, ViewContainerRef, Renderer2, ComponentFactoryResolver, Injector, EventEmitter, NgZone, OnDestroy } from '@angular/core';
import { PopoverComponent, Direction, Size } from './popover.component';
export declare class PopoverTriggerDirective implements OnDestroy {
    private element;
    private viewContainer;
    private injector;
    private ngZone;
    private renderer;
    unoPopover: string | TemplateRef<any>;
    unoPopoverHeader: string;
    unoPopoverFooter: string;
    unoPopoverTemplate: 'defaultContent' | 'infoContent' | 'downloadContent';
    unoPopoverTemplateData: any;
    hasEdit: boolean;
    hasDelete: boolean;
    infoTitle: string;
    infoCreatedBy: string;
    infoModifiedBy: string;
    infoDate: string;
    set unoPopoverPlacement(_placement: Direction);
    set unoPopoverTheme(theme: string);
    set unoPopoverNubbin(_nubbin: Direction);
    set unoPopoverSize(_size: Size);
    unoPopoverTooltip: string | boolean;
    set unoPopoverDelay(delay: any | any[]);
    set unoPopoverInteractive(interactive: boolean | string);
    get unoPopoverInteractive(): boolean | string;
    set unoPopoverOpen(open: boolean);
    unoPopoverToggled: EventEmitter<boolean>;
    unoPopoverTemplateEvent: EventEmitter<any>;
    popover: PopoverComponent;
    private popoverFactory;
    private componentRef;
    private viewRef;
    private placement;
    private theme;
    private nubbin;
    private size;
    private tether;
    private openDelay;
    private closeDelay;
    private toggleTimeout;
    private interactive;
    private template$;
    private interactive$;
    constructor(element: ElementRef, viewContainer: ViewContainerRef, injector: Injector, ngZone: NgZone, renderer: Renderer2, componentFactoryResolver: ComponentFactoryResolver);
    open(delay?: number): void;
    close(delay?: number): void;
    position(async?: boolean): void;
    ngOnDestroy(): void;
    private toggle;
    private setTether;
    private setPopover;
    private create;
    private getProjectableNodes;
    private destroy;
}
