import { MXBaseComponent, AXPlacement, AXPlacementType } from '@acorex/cdk/common';
import * as i0 from '@angular/core';
import { TemplateRef } from '@angular/core';
import { AXPopoverComponent } from '@acorex/components/popover';
import * as i1 from '@angular/common';

/**
 * A component for displaying tooltips with additional information or context when hovering over elements.
 * @category Components
 */
declare class AXTooltipComponent extends MXBaseComponent {
    /**
     * The text content displayed in the tooltip.
     * @defaultValue 'string'
     */
    text: string;
    /**
     * Specifies the position of the tooltip relative to the target element.
     *
     * @type {AXPlacement}
     */
    position: AXPlacement;
    static ɵfac: i0.ɵɵFactoryDeclaration<AXTooltipComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AXTooltipComponent, "ax-tooltip", never, { "text": { "alias": "text"; "required": false; }; "position": { "alias": "position"; "required": false; }; }, {}, never, never, true, never>;
}

declare class AXTooltipDirective {
    #private;
    private vc;
    private elementRef;
    private dragRef;
    axTooltipDisabled: i0.InputSignal<boolean>;
    content: i0.InputSignal<string | TemplateRef<unknown>>;
    context: i0.InputSignal<unknown>;
    private _placement;
    get placement(): AXPlacementType;
    set placement(v: AXPlacementType);
    private _offsetX;
    get offsetX(): number;
    set offsetX(v: number);
    private _offsetY;
    get offsetY(): number;
    set offsetY(v: number);
    private _openAfter;
    get openAfter(): number;
    set openAfter(v: number);
    private _closeAfter;
    get closeAfter(): number;
    set closeAfter(v: number);
    readonly popupRef: AXPopoverComponent;
    constructor();
    static ɵfac: i0.ɵɵFactoryDeclaration<AXTooltipDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<AXTooltipDirective, "[axTooltip]", never, { "axTooltipDisabled": { "alias": "axTooltipDisabled"; "required": false; "isSignal": true; }; "content": { "alias": "axTooltip"; "required": false; "isSignal": true; }; "context": { "alias": "axTooltipContext"; "required": false; "isSignal": true; }; "placement": { "alias": "axTooltipPlacement"; "required": false; }; "offsetX": { "alias": "axTooltipOffsetX"; "required": false; }; "offsetY": { "alias": "axTooltipOffsetY"; "required": false; }; "openAfter": { "alias": "axTooltipOpenAfter"; "required": false; }; "closeAfter": { "alias": "axTooltipCloseAfter"; "required": false; }; }, {}, never, never, true, never>;
}

declare class AXTooltipModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<AXTooltipModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<AXTooltipModule, never, [typeof i1.CommonModule, typeof AXTooltipComponent, typeof AXTooltipDirective], [typeof AXTooltipComponent, typeof AXTooltipDirective]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<AXTooltipModule>;
}

export { AXTooltipComponent, AXTooltipDirective, AXTooltipModule };
