import { ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
import { Observable } from 'rxjs';
import { EvoTooltipService } from '../services/evo-tooltip.service';
import { EvoTooltipPositionType } from '../types/evo-tooltip-position-type';
import { EvoTooltipConfig } from '../interfaces/evo-tooltip-config';
import { EvoTooltipStyles } from '../interfaces/evo-tooltip-styles';
import * as i0 from "@angular/core";
export declare class EvoTooltipDirective implements OnInit, OnDestroy {
    private readonly elementRef;
    private readonly tooltipService;
    content: string | TemplateRef<HTMLElement>;
    position: EvoTooltipPositionType | string;
    disabled: boolean;
    config: Partial<EvoTooltipConfig>;
    set evoTooltipVisibleArrow(visibleArrow: boolean);
    set evoTooltipStyles(tooltipStyles: EvoTooltipStyles);
    set evoTooltipClass(tooltipClass: string | string[]);
    evoTooltipOpen: EventEmitter<void>;
    evoTooltipClose: EventEmitter<void>;
    get hostClasses(): string[];
    readonly isOpen$: Observable<boolean>;
    private readonly destroy$;
    constructor(elementRef: ElementRef, tooltipService: EvoTooltipService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    hide(): void;
    show(event?: MouseEvent): void;
    private initSubscriptions;
    static ɵfac: i0.ɵɵFactoryDeclaration<EvoTooltipDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<EvoTooltipDirective, "[evoTooltip]", ["evoTooltip"], { "content": "evoTooltip"; "position": "evoTooltipPosition"; "disabled": "evoTooltipDisabled"; "config": "evoTooltipConfig"; "evoTooltipVisibleArrow": "evoTooltipVisibleArrow"; "evoTooltipStyles": "evoTooltipStyles"; "evoTooltipClass": "evoTooltipClass"; }, { "evoTooltipOpen": "evoTooltipOpen"; "evoTooltipClose": "evoTooltipClose"; }, never>;
}
