import { HoverCardConfig } from './types';
export type { HoverCardConfig, HoverCardPlacement } from './types';
export declare class HoverCard {
    private readonly trigger;
    private readonly placement;
    private readonly openDelay;
    private readonly closeDelay;
    private readonly className;
    private readonly cardId;
    private cardEl;
    private contentEl;
    private arrowEl;
    private content;
    private showTimeoutId;
    private hideTimeoutId;
    private destroyed;
    /** Bound event handlers for cleanup */
    private readonly handleTriggerMouseEnter;
    private readonly handleTriggerMouseLeave;
    private readonly handleCardMouseEnter;
    private readonly handleCardMouseLeave;
    constructor(config: HoverCardConfig);
    /** Update the hover card content */
    setContent(content: HTMLElement | string): void;
    /** Programmatically show the hover card */
    show(): void;
    /** Programmatically hide the hover card */
    hide(): void;
    /** Remove listeners from trigger and clean up hover card */
    destroy(): void;
    /** Schedule showing the hover card after the configured open delay */
    private scheduleShow;
    /** Schedule hiding the hover card after the configured close delay */
    private scheduleHide;
    /** Cancel any pending show timeout */
    private cancelScheduledShow;
    /** Cancel any pending hide timeout */
    private cancelScheduledHide;
    /** Create the hover card DOM element and append to body */
    private createCardElement;
    /** Render the content into the content element */
    private renderContent;
    /** Position the hover card relative to the trigger element */
    private positionCard;
}
//# sourceMappingURL=index.d.ts.map