import type { ProjectTaskDependencyEdge, TaskDependencySummary } from '@xopcai/gateway-contract'; import { type TaskAggregate } from './task-repository.js'; export type TaskDependencyErrorCode = 'not_found' | 'conflict' | 'invalid_dependency' | 'cycle'; export declare class TaskDependencyError extends Error { readonly code: TaskDependencyErrorCode; constructor(code: TaskDependencyErrorCode, message: string); } export declare class TaskDependencyService { #private; listDependencies(taskId: string): TaskDependencySummary[]; listDependents(taskId: string): TaskDependencySummary[]; listBlocking(taskId: string): TaskDependencySummary[]; listProjectEdges(projectId: string): ProjectTaskDependencyEdge[]; listReadyDependents(taskId: string): TaskAggregate[]; replace(input: { taskId: string; dependsOnTaskIds: string[]; expectedVersion: number; now?: number; }): TaskAggregate; private listRelated; }