import { Overlay } from '@angular/cdk/overlay';
import { ElementRef, OnDestroy, OnInit, ViewContainerRef } from '@angular/core';
import * as i0 from "@angular/core";
export declare class RichTooltipDirective implements OnInit, OnDestroy {
    private readonly overlay;
    private readonly elementRef;
    private readonly vcr;
    /**
     * Define content for the tooltip directive
     * This can be plain text or html content
     * For Eg. micTooltip='This is a tooltip' or micTooltip='<strong>This is a bold tooltip</strong>'
     * If html content is passed, it will be rendered as it is
     * and will not be sanitized
     * If you want to sanitize the html content, you can use DomSanitizer
     * and sanitize the content before passing it to the directive
     *
     */
    micTooltip: string | null;
    /**
     * Define class for the tooltip directive
     */
    micTooltipClass: string | null;
    /**
     * Define position of the tooltip (below,above,left,right)
     * By default position will be dynamic and based on available space and scroll position of the window
     * tooltip will render accordingly
     */
    micTooltipPosition: string;
    /**
     * Define delay for the tooltip to show
     * Default value is 200ms
     */
    micTooltipShowDelay: number;
    /**
     * Define delay for the tooltip to hide
     * Default value is 200ms
     */
    micTooltipHideDelay: number;
    private overlayRef;
    private isEventAdded;
    constructor(overlay: Overlay, elementRef: ElementRef, vcr: ViewContainerRef);
    ngOnInit(): void;
    private setupTooltip;
    private showTooltip;
    private updateMouseEvent;
    private hideTooltip;
    private handleTooltipHide;
    private getTooltipPosition;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RichTooltipDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<RichTooltipDirective, "[micTooltip]", never, { "micTooltip": { "alias": "micTooltip"; "required": false; }; "micTooltipClass": { "alias": "micTooltipClass"; "required": false; }; "micTooltipPosition": { "alias": "micTooltipPosition"; "required": false; }; "micTooltipShowDelay": { "alias": "micTooltipShowDelay"; "required": false; }; "micTooltipHideDelay": { "alias": "micTooltipHideDelay"; "required": false; }; }, {}, never, never, false, never>;
}
