import * as _aiready_core from '@aiready/core'; import { Issue, IssueType, ScanOptions, DocDriftRisk } from '@aiready/core'; /** * Documentation Drift Tool Provider */ declare const DOC_DRIFT_PROVIDER: _aiready_core.ToolProvider; /** * Options for documentation drift analysis */ interface DocDriftOptions extends ScanOptions { /** Maximum commit distance to check for drift */ maxCommits?: number; /** Consider comments older than this many months as outdated */ staleMonths?: number; } /** * Documentation drift specific issue */ interface DocDriftIssue extends Issue { /** Type identifier for doc-drift issues */ type: IssueType.DocDrift; } /** * Comprehensive report for doc-drift analysis */ interface DocDriftReport { /** High-level summary of the drift status */ summary: { /** Total number of files checked */ filesAnalyzed: number; /** Total number of exported functions/classes checked */ functionsAnalyzed: number; /** Final doc-drift score (0-100) */ score: number; /** Qualitative rating (minimal to severe) */ rating: DocDriftRisk['rating']; }; /** List of detected drift points */ issues: DocDriftIssue[]; /** Detailed counts for the three drift dimensions */ rawData: { /** Number of exports without JSDoc/comments */ uncommentedExports: number; /** Total number of exports in the analyzed set */ totalExports: number; /** Number of comments considered stale/outdated */ outdatedComments: number; /** Count of complex functions without sufficient documentation */ undocumentedComplexity: number; /** Number of functions where code changed after docs */ actualDrift: number; }; /** AI-generated remediation advice */ recommendations: string[]; } /** * Analyzes documentation drift across a set of files. */ declare function analyzeDocDrift(options: DocDriftOptions): Promise; export { DOC_DRIFT_PROVIDER, type DocDriftIssue, type DocDriftOptions, type DocDriftReport, analyzeDocDrift };