import type { ReactiveController, ReactiveControllerHost } from 'lit';
export interface TooltipControllerOptions {
    /** CSS selector to find the target element within the host */
    target: string;
    /** Function returning the tooltip text (re-evaluated each render) */
    text: () => string;
    /** Position relative to target (default: 'top') */
    position?: 'top' | 'bottom' | 'left' | 'right';
    /** Hide the arrow (default: false) */
    noArrow?: boolean;
    /** Offset size (default: null) */
    offset?: 'sm' | 'md' | 'lg' | 'xl' | null;
    /** Show delay in ms for hover (default: 300) */
    delay?: number;
}
/**
 * Reactive Controller that attaches tooltips to sub-elements within a LitElement.
 * Reuses the same CSS classes, Popover API, and CSS anchor positioning as TooltipMixin.
 */
export declare class TooltipController implements ReactiveController {
    private _host;
    private _options;
    private _tooltipEl;
    private _targetEl;
    private _anchorName;
    private _showTimer;
    private _ac;
    constructor(host: ReactiveControllerHost & HTMLElement, options: TooltipControllerOptions);
    hostUpdated(): void;
    hostDisconnected(): void;
    private _attach;
    private _detach;
    private _show;
    private _hide;
    private _clearShowTimer;
}
//# sourceMappingURL=TooltipController.d.ts.map