/** * Topological sort for import order using Kahn's algorithm. * Ported from lib/data/import-sort.sh * * Ensures tasks are imported in dependency order where: * 1. Parents are imported before children (parentId references) * 2. Dependencies are imported before dependents (depends[] references) * * @task T4552 * @epic T4545 */ /** Minimal task shape needed for topological sorting. */ export interface SortableTask { id: string; parentId?: string | null; depends?: string[]; } /** * Topological sort for task import order using Kahn's algorithm. * * Ensures tasks are imported in dependency order: * - Parents before children (parentId references) * - Dependencies before dependents (depends[] references) * - Only counts edges to tasks within the set (external deps ignored) * * @task T4552 */ export declare function topologicalSortTasks(tasks: SortableTask[]): string[]; /** * Detect cycles in task dependency graph. * Returns true if no cycles, false if cycles detected. * @task T4552 */ export declare function detectCycles(tasks: SortableTask[]): boolean; //# sourceMappingURL=import-sort.d.ts.map