import { ElementRef, EventEmitter, OnInit, TemplateRef } from '@angular/core';
import { DejaConnectionPositionPair, Destroy } from '@deja-js/component/core';
import { DejaTooltipService } from './tooltip.service';
import { ITooltipParams } from './tooltip-params.interface';
import * as i0 from "@angular/core";
/**
 * Customizable tooltip component for Angular
 */
export declare class DejaTooltipComponent extends Destroy implements OnInit {
    private tooltipService;
    /** Tooltip name. Mandatory, and need to be unic */
    name: string;
    /** Event Emmited when hide action is called */
    readonly hide: EventEmitter<any>;
    /** Template for tooltip content */
    tooltipTemplate: TemplateRef<unknown>;
    /** Parameters of the tooltip */
    params: ITooltipParams;
    overlayVisible: boolean;
    ownerElement: HTMLElement;
    /**
     * This position config ensures that the top "start" corner of the overlay
     * is aligned with with the top "start" of the origin by default (overlapping
     * the trigger completely). If the panel cannot fit below the trigger, it
     * will fall back to a position above the trigger.
     */
    private _positions;
    private _model;
    private _closeOnMoveOver;
    set closeOnMoveOver(value: boolean);
    get closeOnMoveOver(): boolean;
    set positions(value: DejaConnectionPositionPair[] | string);
    get positions(): string | DejaConnectionPositionPair[];
    get model(): unknown;
    /**
     * Constructor
     * Subscribe to mouseover to know when tooltip must disappear.
     */
    constructor(elementRef: ElementRef, tooltipService: DejaTooltipService);
    /**
     * Init tooltip configuration
     * Check if ng-template model passed through param is an observable or a promise and resolve it before set.
     */
    ngOnInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DejaTooltipComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DejaTooltipComponent, "deja-tooltip", never, { "name": "name"; "closeOnMoveOver": "closeOnMoveOver"; "positions": "positions"; }, { "hide": "hide"; }, ["tooltipTemplate"], ["*"], false>;
}
