/** * API Documentation Validator for LLMS SDK * Ensures API documentation is accurate and complete */ /** * Documentation validation types */ export interface DocumentationIssue { file: string; line?: number; type: "missing" | "outdated" | "invalid" | "broken-example"; severity: "error" | "warning" | "info"; message: string; suggestion?: string; } export interface APIElement { name: string; kind: "class" | "interface" | "function" | "type" | "enum" | "const"; exported: boolean; documented: boolean; file: string; line: number; signature?: string; jsDoc?: string; } export interface DocumentationReport { totalAPIs: number; documentedAPIs: number; coverage: number; issues: DocumentationIssue[]; undocumentedAPIs: APIElement[]; validatedExamples: { total: number; passed: number; failed: number; }; } export interface ValidationConfig { sourcePattern: string; docPattern: string; excludePatterns?: string[]; requireExamples?: boolean; validateExamples?: boolean; minCoveragePercent?: number; checkDeprecations?: boolean; checkBreakingChanges?: boolean; } /** * API Documentation Validator */ export declare class DocumentationValidator { private config; private issues; private apiElements; private program; constructor(config: ValidationConfig); /** * Run full documentation validation */ validate(): Promise; /** * Extract public API surface from TypeScript files */ private extractAPISurface; /** * Visit TypeScript AST nodes */ private visitNode; /** * Check if a node is exported */ private isNodeExported; /** * Add API element to tracking */ private addAPIElement; /** * Extract JSDoc comments */ private extractJSDoc; /** * Extract signature for functions and methods */ private extractSignature; /** * Check documentation coverage */ private checkDocumentationCoverage; /** * Validate JSDoc quality */ private validateJSDocQuality; /** * Validate documentation files (README, API docs, etc.) */ private validateDocumentationFiles; /** * Validate individual documentation file */ private validateDocFile; /** * Check for outdated API references in documentation */ private checkAPIReferences; /** * Validate code examples in documentation */ private validateCodeExamples; /** * Extract code examples from documentation */ private extractCodeExamples; /** * Validate a single code example */ private validateExample; /** * Check for deprecated APIs */ private checkDeprecations; /** * Check for breaking changes (requires baseline) */ private checkBreakingChanges; /** * Generate validation report */ private generateReport; /** * Save API baseline for future breaking change detection */ saveBaseline(): Promise; } /** * Generate documentation report in various formats */ export declare class DocumentationReportGenerator { static generateMarkdown(report: DocumentationReport): string; static generateJSON(report: DocumentationReport): string; static generateHTML(report: DocumentationReport): string; } /** * CLI runner for documentation validation */ export declare function runDocumentationValidation(config?: Partial): Promise<{ success: boolean; report: string; }>; //# sourceMappingURL=documentation-validator.d.ts.map