editcodewithai
Version:
Edit Code With AI
30 lines (29 loc) • 1.13 kB
TypeScript
import { VizFiles, VizFile, FileCollection } from "@vizhub/viz-types";
/**
* If the LLM outputs empty text for a file, we interpret this
* as a request to delete the file.
*/
export declare function shouldDeleteFile(file?: VizFile): boolean;
/**
* Processes files for the prompt by truncating large files
*/
export declare function prepareFilesForPrompt(files: VizFiles): FileCollection;
/**
* Merges original files with changes from the LLM
*/
export declare function mergeFileChanges(originalFiles: VizFiles, parsedFiles: FileCollection): VizFiles;
export interface Diff {
fileName: string;
search: string;
replace: string;
}
export declare function parseDiffs(responseText: string): Diff[];
export declare function applyDiffs(originalFiles: VizFiles, diffs: Diff[]): VizFiles;
export declare function parseDiffFenced(responseText: string): Diff[];
export interface UdiffHunk {
fileName: string;
original: string;
updated: string;
}
export declare function parseUdiffs(responseText: string): UdiffHunk[];
export declare function applyUdiffs(originalFiles: VizFiles, hunks: UdiffHunk[]): VizFiles;