export declare enum TaskStatus {
    Pending = "pending",
    Active = "active",
    Done = "done",
    Failed = "failed",
    RequiresClarification = "requires-clarification"
}
export declare enum TaskPriority {
    Low = "low",
    Medium = "medium",
    High = "high",
    Critical = "critical"
}
export declare enum TaskType {
    Code = "code",
    Debug = "debug",
    Test = "test",
    Plan = "plan",
    Refactor = "refactor",
    Documentation = "documentation",
    Research = "research",
    Generic = "generic"
}
export interface Task {
    id: string;
    title: string;
    description: string;
    status: TaskStatus;
    priority: TaskPriority;
    type?: TaskType;
    dependsOn?: string[];
    parentId?: string;
    subtaskIds?: string[];
    failureReason?: string;
    suggestedRetryStrategy?: string;
    completedDetails?: string;
    artifactsGenerated?: string[];
    environmentContext?: string;
    summaryFilePath?: string;
    createdAt: string;
    updatedAt: string;
}
export interface RequestEntry {
    requestId: string;
    originalRequest: string;
    splitDetails: string;
    tasks: Task[];
    completed: boolean;
    createdAt: string;
    updatedAt: string;
}
export interface TaskManagerFile {
    requests: RequestEntry[];
    metadata: {
        lastRequestId: number;
        lastTaskId: number;
    };
}
export interface ArchivedTaskBundle {
    originalRequestId: string;
    originalRequestText: string;
    archivedRootTask: Task;
    archivedSubtasks: Task[];
    archivedAt: string;
}
export interface CompletedTasksFile {
    archivedTaskBundles: ArchivedTaskBundle[];
    metadata: {
        lastArchiveDate?: string;
    };
}
export interface TaskRow {
    taskId: string;
    requestId: string;
    parentId: string | null;
    title: string;
    description: string | null;
    status: string;
    priority: string;
    type: string | null;
    dependsOn: string | null;
    subtaskIds: string | null;
    failureReason: string | null;
    suggestedRetryStrategy: string | null;
    completedDetails: string | null;
    artifactsGenerated: string | null;
    environmentContext: string | null;
    summaryFilePath: string | null;
    costData: string | null;
    feedbackHistory: string | null;
    retryCount: number;
    createdAt: string;
    updatedAt: string;
}
export interface RequestRow {
    requestId: string;
    originalRequest: string;
    splitDetails: string | null;
    completed: boolean;
    createdAt: string;
    updatedAt: string;
}
export interface ArchivedTaskRow {
    taskId: string;
    originalRequestId: string;
    originalRequestText: string;
    parentId: string | null;
    title: string;
    description: string | null;
    status: string;
    priority: string;
    type: string | null;
    dependsOn: string | null;
    subtaskIds: string | null;
    failureReason: string | null;
    suggestedRetryStrategy: string | null;
    completedDetails: string | null;
    artifactsGenerated: string | null;
    environmentContext: string | null;
    summaryFilePath: string | null;
    costData: string | null;
    feedbackHistory: string | null;
    retryCount: number;
    createdAt: string;
    updatedAt: string;
    archivedAt: string;
}
export interface MetadataRow {
    key: string;
    value: string;
    updatedAt: string;
}
export declare class NotFoundError extends Error {
    constructor(message: string);
}
export declare class InvalidOperationError extends Error {
    constructor(message: string);
}
