1 | declare function parseDiff(input?: string | null): parseDiff.File[];
|
2 |
|
3 | declare namespace parseDiff {
|
4 | export interface File {
|
5 | chunks: Chunk[];
|
6 | deletions: number;
|
7 | additions: number;
|
8 | from?: string;
|
9 | to?: string;
|
10 | index?: string[];
|
11 | deleted?: true;
|
12 | new?: true;
|
13 | }
|
14 |
|
15 | export interface Chunk {
|
16 | content: string;
|
17 | changes: Change[];
|
18 | oldStart: number;
|
19 | oldLines: number;
|
20 | newStart: number;
|
21 | newLines: number;
|
22 | }
|
23 |
|
24 | export interface NormalChange {
|
25 | type: 'normal';
|
26 | ln1: number;
|
27 | ln2: number;
|
28 | normal: true;
|
29 | content: string;
|
30 | }
|
31 |
|
32 | export interface AddChange {
|
33 | type: 'add';
|
34 | add: true;
|
35 | ln: number;
|
36 | content: string;
|
37 | }
|
38 |
|
39 | export interface DeleteChange {
|
40 | type: 'del';
|
41 | del: true;
|
42 | ln: number;
|
43 | content: string;
|
44 | }
|
45 |
|
46 | export type ChangeType = 'normal' | 'add' | 'del';
|
47 |
|
48 | export type Change = NormalChange | AddChange | DeleteChange;
|
49 | }
|
50 |
|
51 | export = parseDiff;
|