import type { MutableRefObject, PointerEvent as ReactPointerEvent } from 'react';
import type { FloorMapPaletteDragPayload } from '../utils/floorMapDropUtils';
export interface UseFloorMapPaletteTouchDragParams {
    enabled: boolean;
    mapDropLayerRef: MutableRefObject<HTMLDivElement | null>;
    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<HTMLElement>) => void;
    /** 图元按钮 onClick 前检查：触摸拖放过则吞掉本次点击 */
    consumeToolbarClickIfTouchDrag: () => boolean;
}
export declare function useFloorMapPaletteTouchDrag(params: UseFloorMapPaletteTouchDragParams): UseFloorMapPaletteTouchDragResult;
