import { StreamProcessor } from "../../basic/StreamProcessor";
import { InteractiveEvent } from "../../../../common";
import { AppEventContext } from "../../../../app";
import { LayoutWorker } from "@/ability/line/LayoutWorker";
export declare class DragSlideProcessor extends StreamProcessor {
    private originPos;
    private originNodePos;
    private dragNode;
    private originDragNodes;
    private originBaseProps;
    private rowNodes;
    private rowIds;
    private rowIndex;
    private targetRowIndex;
    private isInsertNewRow;
    private originIndex;
    private insertIndex;
    layoutWorker: LayoutWorker;
    private computeRowNodes;
    onStart(event: InteractiveEvent, ctx: AppEventContext): void;
    onMove(event: InteractiveEvent, ctx: AppEventContext): void;
    private batchCollectNodeLinks;
    private collectNodeLinks;
    /**
     * 重新布局一行的所有节点
     */
    private relayoutRow;
    /**
     * 处理插入新行的逻辑
     */
    private handleInsertNewRow;
    /**
     * 根据鼠标 y 坐标（相对于 slideContainer 的局部坐标）确定目标行索引
     */
    private determineTargetRow;
    /**
     * 显示插入提示线
     * @param mouseLocalX 鼠标相对于 slideContainer 的局部 X 坐标
     */
    private showInsertIndicator;
    /**
     * 显示新行插入提示线（水平线）
     */
    private showNewRowIndicator;
    /**
     * 显示现有行内插入提示线
     * @param mouseLocalX 鼠标相对于 slideContainer 的局部 X 坐标
     */
    private showExistingRowIndicator;
    /**
     * 处理同行拖动的逻辑
     */
    private handleSameRowDrag;
    /**
     * 处理跨行拖动的逻辑
     */
    private handleCrossRowDrag;
    onUp(event: InteractiveEvent, ctx: AppEventContext): void;
}
//# sourceMappingURL=DragSlideProcessor.d.ts.map