export interface GitStatus { branch: string; isClean: boolean; ahead: number; behind: number; staged: string[]; modified: string[]; untracked: string[]; } export interface CodeDiff { file: string; additions: number; deletions: number; changeType: 'added' | 'modified' | 'deleted' | 'renamed'; language?: string; content?: string; } export interface SmartCommitInfo { changeType: string; commitPrefix: string; commitMessage: string; files: CodeDiff[]; summary: string; } export declare class SmartGit { private cwd; constructor(cwd?: string); /** * Get current git status including branch information */ getStatus(): Promise; /** * Get current branch name */ getCurrentBranch(): Promise; /** * Get ahead/behind count for current branch */ private getAheadBehind; /** * Analyze code changes to determine commit type */ analyzeChanges(): Promise; /** * Get detailed diff information for files */ private getDetailedDiffs; /** * Detect programming language from file extension */ private detectLanguage; /** * Determine the type of changes (feat, fix, docs, etc.) */ private determineChangeType; /** * Get commit prefix based on change type */ private getCommitPrefix; /** * Generate a summary of changes */ private generateChangeSummary; /** * Generate smart commit message */ private generateCommitMessage; /** * Generate feature description based on file changes */ private generateFeatureDescription; /** * Generate fix description based on file changes */ private generateFixDescription; /** * Create a smart commit with analysis */ createSmartCommit(options?: { addAll?: boolean; push?: boolean; customMessage?: string; }): Promise<{ message: string; analysis: SmartCommitInfo; }>; /** * Check if we're in a git repository */ isGitRepository(): Promise; /** * Get the default branch name */ getDefaultBranch(): Promise; } //# sourceMappingURL=git-smart.d.ts.map