/** * Documentation Service * * Analyzes documentation coverage, validates examples, and generates templates */ import type { DocAnalysisResult, MissingDocResult, DocValidationResult, DocGenerationResult, DocAnalysisOptions, DocThresholds } from "../types/documentation.js"; /** * Service for analyzing documentation coverage and generating templates. * * Parses JSDoc/TSDoc comments, calculates coverage metrics, validates * code examples, and generates documentation stubs for undocumented code. */ export declare class DocumentationService { private readonly projectRoot; private thresholds; /** Directories to exclude */ private static readonly EXCLUDE_DIRS; /** File extensions to analyze */ private static readonly EXTENSIONS; constructor(projectRoot: string, thresholds?: Partial); /** * Analyze documentation coverage */ analyzeDocumentation(options?: DocAnalysisOptions): Promise; /** * Find undocumented code */ findMissingDocumentation(options?: DocAnalysisOptions): Promise; /** * Validate documentation examples */ validateDocumentation(options?: DocAnalysisOptions): Promise; /** * Generate documentation templates for missing docs */ generateDocumentation(options?: DocAnalysisOptions): Promise; /** * Find source files to analyze */ private findSourceFiles; /** * Walk directory recursively */ private walkDirectory; /** * Read file content */ private readFile; /** * Analyze a single file */ private analyzeFile; /** * Extract documentable items from content */ private extractDocumentableItems; /** * Extract JSDoc blocks from content */ private extractDocBlocks; /** * Parse a JSDoc block */ private parseDocBlock; /** * Find doc block before a line */ private findDocBlockBefore; /** * Get line number from character index */ private getLineNumber; /** * Find end of code block */ private findBlockEnd; /** * Parse function parameters */ private parseParameters; /** * Extract parameter name from declaration */ private extractParamName; /** * Get documented parameters from doc block */ private getDocumentedParams; /** * Check if doc block has @returns */ private hasReturnDoc; /** * Get documentation status */ private getDocStatus; /** * Get function documentation status */ private getFunctionDocStatus; /** * Extract code examples from content */ private extractExamples; /** * Find entity name for an example */ private findEntityForExample; /** * Validate a code example */ private validateExample; /** * Find issues in file analysis */ private findIssues; /** * Generate documentation template for an item */ private generateTemplate; /** * Generate description for an item */ private generateDescription; /** * Calculate file coverage */ private calculateFileCoverage; /** * Calculate overall coverage */ private calculateOverallCoverage; /** * Calculate quality score */ private calculateQualityScore; /** * Calculate file quality score */ private calculateFileQualityScore; /** * Get quality rating from score */ private getQualityRating; /** * Generate empty file analysis */ private emptyFileAnalysis; /** * Generate analysis summary */ private generateAnalysisSummary; /** * Generate missing documentation summary */ private generateMissingSummary; /** * Generate validation summary */ private generateValidationSummary; /** * Generate generation summary */ private generateGenerationSummary; } //# sourceMappingURL=documentation-service.d.ts.map