import { ESLPopup } from '../../esl-popup/core';
import type { ESLPopupActionParams } from '../../esl-popup/core';
export interface ESLTooltipActionParams extends ESLPopupActionParams {
    /** text to be shown */
    text?: string;
    /** html content to be shown */
    html?: string;
    /** text directionality of tooltips content */
    dir?: string;
    /** language of tooltips text content */
    lang?: string;
    /** tooltip without arrow */
    disableArrow?: boolean;
}
/** @deprecated alias, use {@link ESLTooltipActionParams} instead. Will be removed in v5.0.0. */
export type TooltipActionParams = ESLTooltipActionParams;
export declare class ESLTooltip extends ESLPopup {
    static is: string;
    /** Default params to pass into the tooltip on show/hide actions */
    static DEFAULT_PARAMS: ESLTooltipActionParams;
    /** Shared instanse of Tooltip */
    static get sharedInstance(): ESLTooltip;
    /** Active state marker */
    static get open(): boolean;
    /** Changes the element state to active */
    static show(params?: ESLTooltipActionParams): void;
    /** Changes the element state to inactive */
    static hide(params?: ESLTooltipActionParams): void;
    connectedCallback(): void;
    /** Sets initial state of the Tooltip */
    protected setInitialState(): void;
    /** Actions to execute on show Tooltip. */
    onShow(params: ESLTooltipActionParams): void;
    /** Actions to execute on Tooltip hiding. */
    onHide(params: ESLTooltipActionParams): void;
}
declare global {
    export interface ESLLibrary {
        Tooltip: typeof ESLTooltip;
    }
    export interface HTMLElementTagNameMap {
        'esl-tooltip': ESLTooltip;
    }
}
