import type * as React from "react"; export interface LongPressOptions { /** Default 500. */ delay?: number; /** Default 8. */ slop?: number; /** Default 10. */ threshold?: number; } export interface LongPressHandlers { onPointerDown: (event: React.PointerEvent) => void; } /** * The press that means move, on a surface whose ordinary press does something else (a row that opens). * Finger and mouse differ: * - **touch/pen** — hold still for `delay`; travel past `slop` first abandons it, so a scroll never picks * a row up. * - **mouse** — travel past `threshold`; holding still is not a gesture, since people rest on the button. * Only `onPointerDown` is returned; the rest is watched on the window, so callers never re-chain their own * move/up handlers and a release outside still ends it. Primary button only (a right-press is a context * menu). Nothing is preventDefault-ed: a surface refuses the click after `onLongPress` itself. * `usePointerDrag` carries the drag itself, with no hold and `touch-action: none`. */ export declare function useLongPress(onLongPress: () => void, options?: LongPressOptions): LongPressHandlers;