import { ThreeEvent } from '@react-three/fiber'; export interface HoverIntentOptions { /** * Interval in milliseconds between pointer position checks. * * @default 50 */ interval?: number; /** * Pixel movement threshold below which hover intent is confirmed. * * @default 7 */ sensitivity?: number; /** * Delay in milliseconds before hover intent is evaluated. * * @default 0 */ timeout?: number; /** * Whether the hover intent handlers are disabled. */ disabled?: boolean; /** * Called when hover intent over is confirmed. */ onPointerOver: (event: ThreeEvent) => void; /** * Called when hover intent out is confirmed. */ onPointerOut: (event: ThreeEvent) => void; } export interface HoverIntentResult { pointerOut: (event: ThreeEvent) => void; pointerOver: (event: ThreeEvent) => void; } /** * Hover intent identifies if the user actually is * intending to over by measuring the position of the mouse * once a pointer enters and determining if in a duration if * the mouse moved inside a certain threshold and fires the events. */ export declare const useHoverIntent: ({ sensitivity, interval, timeout, disabled, onPointerOver, onPointerOut }: HoverIntentOptions | undefined) => HoverIntentResult;