qraft
Version:
A powerful CLI tool to qraft structured project setups from GitHub template repositories
48 lines • 1.42 kB
TypeScript
import { FileComparison } from './contentComparison';
export interface DiffLine {
type: 'context' | 'added' | 'deleted' | 'header';
content: string;
oldLineNumber?: number;
newLineNumber?: number;
}
export interface DiffHunk {
oldStart: number;
oldCount: number;
newStart: number;
newCount: number;
lines: DiffLine[];
}
export interface FileDiff {
path: string;
status: 'added' | 'deleted' | 'modified' | 'renamed' | 'unchanged';
oldPath?: string | undefined;
hunks: DiffHunk[];
isBinary: boolean;
similarity?: number | undefined;
}
export interface DiffSummary {
filesChanged: number;
insertions: number;
deletions: number;
files: FileDiff[];
}
export declare class DiffGenerator {
generateDiff(comparison: FileComparison): FileDiff;
generateMultipleDiffs(comparisons: FileComparison[]): DiffSummary;
private isBinaryFile;
private containsBinaryData;
private generateAddedFileDiff;
private generateDeletedFileDiff;
private generateModifiedFileDiff;
private computeDiff;
private longestCommonSubsequence;
private isInLCS;
formatDiff(fileDiff: FileDiff): string;
private generateShortHash;
generateSummaryText(summary: DiffSummary): string;
getFileDiffStats(fileDiff: FileDiff): {
insertions: number;
deletions: number;
};
}
//# sourceMappingURL=diffGenerator.d.ts.map