UNPKG

@entro314labs/ai-changelog-generator

Version:

AI-powered changelog generator with MCP server support - works with most providers, online and local models

242 lines (241 loc) 7.04 kB
interface ChangeAnalysisSummary { summary: string; category: string; impact: string; userFacing: boolean; [key: string]: any; } export declare class AnalysisEngine { [key: string]: any; constructor(gitService: any, aiAnalysisService: any, gitManager?: any); _ensureGitAnalyzer(): Promise<any>; analyze(type: any, config?: Record<string, any>): Promise<any>; analyzeCurrentChanges(config?: Record<string, any>): Promise<{ changes: never[]; analysis: null; summary?: undefined; error?: undefined; } | { changes: any[]; analysis: ChangeAnalysisSummary | Record<string, any> | null; summary: { primaryChanges: string[]; impactLevel: string; technicalScope: string; businessRelevance: string; frameworks: string[]; patterns: string[]; recommendations: string[]; riskFactors: string[]; }; error?: undefined; } | { summary?: undefined; changes: any[]; analysis: { summary: string; category: string; impact: string; userFacing: boolean; } | null; error: any; }>; analyzeRecentCommits(limit?: number, config?: Record<string, any>): Promise<{ summary?: undefined; commits: never[]; analysis: null; error?: undefined; } | { commits: any[]; analysis: { totalCommits: any; commitTypes: Record<string, number>; totalFiles: number; totalLines: number; breakingChanges: number; highRiskCommits: number; riskLevel: string; complexity: string; trends: { dominantCategory: string; frequency: number; pattern: string; }; }; summary: string; error?: undefined; } | { summary?: undefined; commits: never[]; analysis: null; error: any; }>; enhanceCommitAnalysis(commitAnalysis: any): any; analyzeChangesRuleBased(changes: any): { categories: Record<string, any[]>; complexity: string; risk: string; totalFiles: any; primaryCategory: string; impact: string; userFacing: any; }; categorizeChanges(changes: any): Record<string, any[]>; assessOverallChangeComplexity(changes: any): "high" | "low" | "medium"; assessOverallChangeRisk(changes: any): "high" | "low" | "medium"; assessChangeImpact(changes: any): "high" | "low" | "medium"; hasUserFacingChanges(changes: any): any; generateOverallCommitAnalysis(commits: any): { totalCommits: any; commitTypes: Record<string, number>; totalFiles: number; totalLines: number; breakingChanges: number; highRiskCommits: number; riskLevel: string; complexity: string; trends: { dominantCategory: string; frequency: number; pattern: string; }; }; calculateOverallRisk(commits: any): "high" | "low" | "medium"; calculateOverallComplexity(commits: any): "high" | "low" | "medium"; analyzeTrends(commits: any): { dominantCategory: string; frequency: number; pattern: string; }; identifyPattern(categories: any): "diverse" | "focused" | "mixed"; combineAnalyses(aiAnalysis: any, ruleBasedAnalysis: any): any; generateCommitsSummary(_commits: any, analysis: any): string; analyzeBranches(config: any): Promise<any>; analyzeComprehensive(config: any): Promise<any>; assessRepositoryHealth(config: any): Promise<any>; analyzeCommitPatterns(commits: any): { patterns: never[]; compliance: number; suggestions: string[]; conventionalCommits?: undefined; semanticCommits?: undefined; totalCommits?: undefined; } | { patterns: string[]; compliance: number; conventionalCommits: number; semanticCommits: number; totalCommits: any; suggestions: string[]; }; detectChangeTypes(changes: any): { types: never[]; confidence: string; details: string; totalChanges?: undefined; } | { types: any[]; confidence: string; totalChanges: any; details: string; }; assessCodeQuality(files: any): { score: number; issues: any[]; recommendations: any[]; filesAnalyzed: any; } | { filesAnalyzed?: undefined; score: number; issues: string[]; recommendations: string[]; }; identifyDependencies(changes: any): { added: Array<{ name: string; version: string; file: string; }>; removed: Array<{ name: string; version: string; file: string; }>; updated: Array<{ name: string; version: string; file: string; }>; details: string[]; }; evaluatePerformanceImpact(changes: any): { impact: string; metrics: Record<string, number | string>; concerns: string[]; improvements: string[]; } | { impact: string; metrics: { error: any; }; concerns: never[]; improvements: never[]; }; checkSecurityImplications(changes: any): { issues: string[]; score: 'safe' | 'caution' | 'warning' | 'critical'; warnings: string[]; recommendations: string[]; } | { issues: string[]; score: string; warnings: never[]; recommendations: never[]; }; analyzeDocumentationChanges(changes: any): { coverage: string; changes: Array<{ file: string; type: string; status: string; }>; statistics: Record<string, number | string>; recommendations: string[]; } | { coverage: string; changes: never[]; statistics: { error: any; }; recommendations: never[]; }; assessTestCoverage(changes: any): { coverage: number; missing: string[]; statistics: Record<string, number | string>; recommendations: string[]; } | { coverage: number; missing: never[]; statistics: { error: any; }; recommendations: never[]; }; evaluateArchitecturalChanges(changes: any): { impact: string; changes: Array<{ file: string; pattern: string; type: string; }>; patterns: string[]; recommendations: string[]; }; getMetrics(): { analysisCount: number; averageTime: number; successRate: number; }; } export {};