import type { Target } from "./pointer"; export interface MouseDragOptions { /** * Target for mousedown event. Defaults to the element. */ downTarget?: Target | "window"; /** * Target for mousemove events. Defaults to "window". */ moveTarget?: Target | "window"; /** * Target for mouseup event. Defaults to "window". */ upTarget?: Target | "window"; /** * Number of intermediate mousemove events to dispatch for smooth dragging. * Defaults to 10. */ steps?: number; /** * Mouse button to use. Defaults to 0 (left button). */ button?: number; } /** * Performs a mouse drag gesture from one position to another. * Dispatches mousedown, multiple mousemove events (for smooth dragging), and mouseup. * * @param element - The element that initiates the drag (used if downTarget is not specified) * @param startX - Starting X coordinate (clientX) * @param startY - Starting Y coordinate (clientY) * @param endX - Ending X coordinate (clientX) * @param endY - Ending Y coordinate (clientY) * @param options - Configuration options for the drag gesture */ export declare function dragMouse(element: Target, startX: number, startY: number, endX: number, endY: number, options?: MouseDragOptions): Promise;