import type { StageTaskItem } from './StageNode.types';
export interface FlattenedTask {
    id: string;
    task: StageTaskItem;
    groupIndex: number;
    taskIndex: number;
    depth: number;
}
export interface ProjectionResult {
    depth: number;
    maxDepth: number;
    groupIndex: number;
    taskIndex: number;
}
export declare function flattenTasks(tasks: StageTaskItem[][]): FlattenedTask[];
export declare function buildTaskGroups(flattenedTasks: FlattenedTask[]): StageTaskItem[][];
export declare function reorderTasks(tasks: StageTaskItem[][], activeId: string, overId: string, projectedDepth: number): StageTaskItem[][];
export declare function getProjection(tasks: StageTaskItem[][], activeId: string, overId: string, offsetLeft: number): ProjectionResult | null;
//# sourceMappingURL=StageNode.utils.d.ts.map