import type { MutableRefObject, PointerEvent as ReactPointerEvent } from 'react'; import type { FloorMapPaletteDragPayload } from '../utils/floorMapDropUtils'; export interface UseFloorMapPaletteTouchDragParams { enabled: boolean; mapDropLayerRef: MutableRefObject; contentWidth: number; contentHeight: number; contentOffsetRef: MutableRefObject<{ x: number; y: number; }>; setMapPaletteDragActive: (v: boolean) => void; onDropInScene: (payload: FloorMapPaletteDragPayload, sceneX: number, sceneY: number) => void; } export interface UseFloorMapPaletteTouchDragResult { /** 挂在图元预览按钮上;mouse 不处理,交给 HTML5 DnD */ handlePaletteCardPointerDown: (payload: FloorMapPaletteDragPayload, e: ReactPointerEvent) => void; /** 图元按钮 onClick 前检查:触摸拖放过则吞掉本次点击 */ consumeToolbarClickIfTouchDrag: () => boolean; } export declare function useFloorMapPaletteTouchDrag(params: UseFloorMapPaletteTouchDragParams): UseFloorMapPaletteTouchDragResult;