/** * Saying what the pass found, and putting it where the next session will read it. * * TWO RULES GOVERN THE WRITING. A block this tool owns is delimited, so running * again replaces its own advice instead of appending a fourth copy of it -- an * instructions file that grows every time a tool runs is one a user deletes. And * nothing outside those markers is ever touched: the file belongs to the user, and * this is a guest in it. */ import { AnalysisResult } from './models.js'; export declare const BLOCK_START = ""; export declare const BLOCK_END = ""; /** The lines a human reads in a terminal. */ export declare function describeAnalysis(result: AnalysisResult): string[]; /** The markdown block, contents only, without the markers. */ export declare function renderRecommendations(result: AnalysisResult): string; export interface WriteOutcome { readonly path: string; /** What the file would become. Returned whether or not it was written. */ readonly content: string; readonly written: boolean; /** True when the file already said exactly this. */ readonly unchanged: boolean; /** True when the tool's own block was replaced rather than added. */ readonly replaced: boolean; } /** * Put the block in a context file. * * `dryRun` is the default at every call site above this one. A tool that edits a * user's instructions file the first time they ask it to look at something has * misunderstood what it was asked. */ export declare function writeRecommendations(projectDir: string, contextFile: string, result: AnalysisResult, options?: { readonly dryRun?: boolean; }): Promise; //# sourceMappingURL=report.d.ts.map