import { DesignWidget, Point } from "../types";
import DesignService from './design.service';
import { YWidget } from "@/services/synchronize.service";
interface Modal {
    beginDragging: boolean;
    isOverlapping: boolean;
}
export default class DraggingService {
    service: DesignService;
    emit: (event: 'drag-start' | 'drag-moving' | 'drag-end', ...args: any[]) => void;
    modal: Modal;
    dragStartPosition: Point;
    orgPosition: Map<string, Point>;
    copyWidgets: DesignWidget[];
    constructor(service: DesignService, emit: (event: 'drag-start' | 'drag-moving' | 'drag-end', ...args: any[]) => void);
    mousedownHandler(event: MouseEvent, yWidget?: YWidget): void;
    dragHandler: (event: MouseEvent) => void;
    dragEndHandler: (event: MouseEvent) => void;
}
export {};
