export interface GitCommit { sha: string; shortSha: string; message: string; author: string; date: string; files?: string[]; } export interface GitLogInput { projectId?: string; count?: number; since?: string; until?: string; author?: string; path?: string; grep?: string; } export interface GitCommitWithStats { sha: string; shortSha: string; message: string; author: string; email: string; date: string; linesAdded: number; linesDeleted: number; filesChanged: number; } export interface GitLogWithStatsInput { projectId?: string; count?: number; since?: string; until?: string; author?: string; path?: string; } export interface GitLogWithStatsOutput { commits: GitCommitWithStats[]; total: number; totals: { linesAdded: number; linesDeleted: number; filesChanged: number; }; } export interface GitLogOutput { commits: GitCommit[]; total: number; } export interface GitChangedFilesInput { projectId?: string; from?: string; to?: string; nameOnly?: boolean; } export interface GitChangedFilesOutput { files: Array<{ path: string; status: 'A' | 'M' | 'D' | 'R' | 'C' | 'U'; }>; from: string; to: string; } export interface GitFindRemovalInput { projectId?: string; search: string; path?: string; } export interface GitFindRemovalOutput { matches: Array<{ sha: string; message: string; date: string; author: string; changeType: 'added' | 'removed'; }>; searchTerm: string; } export interface GitBlameInput { projectId?: string; file: string; line?: number; startLine?: number; endLine?: number; } export interface GitBlameOutput { lines: Array<{ lineNumber: number; sha: string; author: string; date: string; content: string; }>; file: string; } export interface GitTagsInput { projectId?: string; count?: number; pattern?: string; } export interface GitTagsOutput { tags: Array<{ name: string; sha: string; date?: string; message?: string; }>; } export interface GitStatusInput { projectId?: string; } export interface GitStatusOutput { branch: string; ahead: number; behind: number; staged: number; modified: number; untracked: number; hasChanges: boolean; } export interface GitError { error: string; stderr?: string; exitCode?: number; } export declare function gitLogRecent(input: GitLogInput): Promise; export declare function gitLogWithStats(input: GitLogWithStatsInput): Promise; export declare function gitChangedFiles(input: GitChangedFilesInput): Promise; export declare function gitFindRemoval(input: GitFindRemovalInput): Promise; export declare function gitBlame(input: GitBlameInput): Promise; export declare function gitTags(input: GitTagsInput): Promise; export declare function gitStatus(input: GitStatusInput): Promise; export declare function isGitErrorResult(result: unknown): result is GitError; //# sourceMappingURL=git.d.ts.map