export interface TaskContext { agentId: string; taskInstanceId: string; taskNodeId: string; tenantId: string; workspacePath: string; projectId: string; } export interface FileChangeRecord { workspacePath: string; filePath: string; operation: 'CREATE' | 'UPDATE' | 'DELETE'; beforeContent: string | null; afterContent: string | null; beforeHash: string | null; afterHash: string | null; timestamp: string; reason: string; } export declare function setTaskContext(ctx: TaskContext): void; export declare function clearTaskContext(): void; export declare function getTaskContext(): TaskContext | null; export declare function hasActiveTask(): boolean; export declare function startWatching(targetWorkspacePath: string): Promise; export declare function stopWatching(): Promise; export declare function readBeforeContentFromCache(workspacePath: string, cacheKey: string): Promise; export declare function readDiffFromCache(workspacePath: string, cacheKey: string): Promise; export declare function sweepExpiredChangeCache(): Promise; export declare function getPendingChangeCountForTest(): number; export declare function isWatching(): boolean; export declare function getWorkspaceRoot(): string; export declare function recordAgentFileChange(record: { filePath: string; operation: 'CREATE' | 'UPDATE' | 'DELETE'; beforeContent: string | null; afterContent: string | null; reason?: string; agentId?: string; workspacePath?: string; }): Promise;