import { ElementRef, OnInit, Renderer2, OnDestroy } from '@angular/core';
import { PoTooltipBaseDirective } from './po-tooltip-base.directive';
import { PoTooltipControlPositionService } from './po-tooltip-control-position.service';
import { DomSanitizer } from '@angular/platform-browser';
/**
 * @docsExtends PoTooltipBaseDirective
 *
 * @example
 *
 * <example name="po-tooltip-basic" title="PO Tooltip Basic" >
 *  <file name="sample-po-tooltip-basic/sample-po-tooltip-basic.component.html"> </file>
 *  <file name="sample-po-tooltip-basic/sample-po-tooltip-basic.component.ts"> </file>
 * </example>
 *
 * <example name="po-tooltip-labs" title="PO Tooltip Labs" >
 *  <file name="sample-po-tooltip-labs/sample-po-tooltip-labs.component.html"> </file>
 *  <file name="sample-po-tooltip-labs/sample-po-tooltip-labs.component.ts"> </file>
 * </example>
 *
 * <example name="po-tooltip-new-user" title="PO Tooltip - New User" >
 *  <file name="sample-po-tooltip-new-user/sample-po-tooltip-new-user.component.html"> </file>
 *  <file name="sample-po-tooltip-new-user/sample-po-tooltip-new-user.component.ts"> </file>
 * </example>
 *
 */
export declare class PoTooltipDirective extends PoTooltipBaseDirective implements OnInit, OnDestroy {
    private readonly elementRef;
    private readonly renderer;
    private readonly poControlPosition;
    private readonly sanitizer;
    private arrowDirection;
    private divArrow;
    private divContent;
    private isHidden;
    private lastTooltipText;
    private textContent;
    private readonly tooltipOffset;
    private eventListenerFunction;
    constructor(elementRef: ElementRef, renderer: Renderer2, poControlPosition: PoTooltipControlPositionService, sanitizer: DomSanitizer);
    ngOnDestroy(): void;
    ngOnInit(): void;
    onMouseEnter(): void;
    onMouseLeave(): void;
    onMouseClick(): void;
    onFocusOut(): void;
    onFocusIn(): void;
    onKeyDown(event: any): void;
    toggleTooltipVisibility(show: boolean): void;
    protected addTooltipAction(): void;
    protected removeTooltipAction(): void;
    private addArrow;
    private addScrollEventListener;
    private createTooltip;
    private initScrollEventListenerFunction;
    private hideTooltip;
    private removeArrow;
    private removeScrollEventListener;
    private showTooltip;
    private updateTextContent;
    private insertAriaLabelTooltip;
}
