///
import { type Readable } from 'svelte/store';
import type { ActionReturn } from 'svelte/action';
import type { HoverEvent as IHoverEvent, HoverHandlers } from './events.js';
export type HoverConfig = HoverHandlers & {
/** Whether the hover events should be disabled */
isDisabled?: boolean;
};
type HoverActionReturn = ActionReturn) => void;
'on:hoverend'?: (e: CustomEvent) => void;
}>;
declare class HoverEvent implements IHoverEvent {
type: 'hoverstart' | 'hoverend';
pointerType: 'mouse' | 'pen';
target: Element;
constructor(type: IHoverEvent['type'], pointerType: 'mouse' | 'pen', originalEvent: Event);
}
export type HoverResult = {
/** Whether the element is currently being hovered */
isHovered: Readable;
/** A Svelte action which handles applying the event listeners to the element */
hoverAction: (node: HTMLElement | SVGElement) => HoverActionReturn;
};
/**
* Handles pointer hover interactions for an element. Normalizes behavior
* across browsers and platforms, and ignores emulated mouse events on touch devices.
*/
export declare function createHover(config?: HoverConfig): HoverResult;
export {};