apple-dev-mcp
Version:
Complete Apple development guidance: Human Interface Guidelines (design) + Technical Documentation for iOS, macOS, watchOS, tvOS, and visionOS
74 lines • 2.5 kB
TypeScript
/**
* ContentQualityValidatorService
*
* Validates content quality and monitors extraction success rates
* to ensure compliance with the 95%+ real content SLA.
*/
import type { HIGSection, ContentQualityMetrics, QualityValidationResult, ExtractionStatistics } from '../types.js';
import type { IContentQualityValidator, IExtractionMonitor } from '../interfaces/content-interfaces.js';
export interface ValidationThresholds {
minQualityScore: number;
minConfidence: number;
minContentLength: number;
maxFallbackRate: number;
minStructureScore: number;
minAppleTermsScore: number;
}
export interface QualityReport {
summary: {
totalValidated: number;
passedValidation: number;
failedValidation: number;
overallScore: number;
slaCompliance: boolean;
};
issues: {
highPriority: string[];
mediumPriority: string[];
lowPriority: string[];
};
recommendations: string[];
detailedMetrics: ExtractionStatistics;
}
export declare class ContentQualityValidatorService implements IContentQualityValidator, IExtractionMonitor {
private validatedSections;
private extractionHistory;
private thresholds;
constructor(customThresholds?: Partial<ValidationThresholds>);
/**
* Validate content quality against established thresholds
*/
validateContent(content: string, section: HIGSection): Promise<QualityValidationResult>;
/**
* Calculate quality score for content without existing metrics
*/
calculateQualityScore(content: string): number;
/**
* Check if content meets high quality standards
*/
isHighQualityContent(metrics: ContentQualityMetrics): boolean;
/**
* Record extraction for monitoring
*/
recordExtraction(section: HIGSection, quality: ContentQualityMetrics): void;
/**
* Get current extraction statistics
*/
getStatistics(): ExtractionStatistics;
/**
* Generate comprehensive quality report
*/
generateReport(): string;
private calculateBasicQuality;
private detectFallbackContent;
private validateQualityScore;
private validateConfidence;
private validateContentLength;
private validateStructure;
private validateAppleTerms;
private validateFallbackContent;
private createValidationResult;
private generateQualityReport;
private formatQualityReport;
}
//# sourceMappingURL=content-quality-validator.service.d.ts.map