i18next-mcp-server
Version:
A comprehensive Model Context Protocol (MCP) server for i18next translation management, health checking, and automated translation workflows
61 lines (60 loc) • 2.15 kB
TypeScript
import type { I18nConfig, HealthCheckResult, ValidationIssue } from '../types/index.js';
import type { FileManager } from '../core/file-manager.js';
export declare class HealthChecker {
private config;
private fileManager;
constructor(config: I18nConfig, fileManager: FileManager);
performHealthCheck(languages?: string[], namespaces?: string[], detailed?: boolean): Promise<HealthCheckResult>;
performHealthCheckSummary(languages?: string[], namespaces?: string[]): Promise<{
overall: {
score: number;
grade: 'A' | 'B' | 'C' | 'D' | 'F';
status: 'excellent' | 'good' | 'needs_attention' | 'poor';
totalIssues: number;
criticalIssues: number;
};
files: Record<string, {
score: number;
grade: 'A' | 'B' | 'C' | 'D' | 'F';
keyCount: number;
issueCount: number;
status: 'healthy' | 'warning' | 'error';
}>;
topIssues: Array<{
type: string;
severity: 'error' | 'warning' | 'info';
count: number;
description: string;
}>;
recommendations: string[];
}>;
validateFiles(fix?: boolean): Promise<{
valid: boolean;
issues: ValidationIssue[];
totalFiles: number;
validFiles: number;
fixedIssues?: string[];
}>;
private getAllKeysWithDetails;
private validateInterpolation;
private validatePluralization;
private validateConsistency;
private validateTranslationQuality;
private validateStructure;
private validatePerformance;
private performCrossLanguageAnalysis;
private calculateQualityScore;
private calculateOverallScore;
private generateRecommendations;
private getExpectedPluralForms;
private getLanguageName;
private extractInterpolationVars;
private isUntranslated;
private hasSuspiciousPattern;
private containsHtml;
private validateTranslationLength;
private validateNamingPatterns;
private validateJsonStructure;
private attemptJsonFix;
private getIssueTypeDescription;
}