UNPKG

@ui18n/angular

Version:

🅰️ Modern Angular internationalization with standalone components, signals, and dependency injection support for Angular 15+

326 lines 9.63 kB
import { UI18nConfig, TranslationResult, SupportedLanguage } from './types'; import { CacheStats } from './cache-manager'; import { DualAPIConfig } from './api-config'; /** * UI18n 核心类 * 提供完整的国际化翻译功能 */ export declare class UI18n { private config; private cacheManager; private aiTranslator?; private currentLanguage; private serviceModeManager; private translationPipeline; private versionControlManager?; private fallbackManager?; private optimizedCache?; private secureConfigManager?; private logger; private batchOptimizer?; private translationQueue?; constructor(config: UI18nConfig); /** * 翻译文本 * @param text 要翻译的文本 * @param targetLanguage 目标语言(可选,默认使用当前语言) * @param options 翻译选项 * @returns 翻译结果 */ translate(text: string, targetLanguage?: SupportedLanguage, options?: { context?: string; forceAI?: boolean; skipCache?: boolean; priority?: 'low' | 'normal' | 'high' | 'urgent'; useBatch?: boolean; }): Promise<TranslationResult>; /** * 简化的翻译方法(类似i18n的t方法) * @param text 要翻译的文本 * @param options 选项 * @returns 翻译后的文本 */ t(text: string, languageOrOptions?: SupportedLanguage | { language?: SupportedLanguage; context?: string; }): Promise<string>; /** * 批量翻译 * @param texts 要翻译的文本数组 * @param targetLanguage 目标语言 * @param options 选项 * @returns 翻译结果数组 */ translateBatch(texts: string[], targetLanguage?: SupportedLanguage, options?: { context?: string; maxConcurrency?: number; useOptimizer?: boolean; priority?: 'low' | 'normal' | 'high'; }): Promise<TranslationResult[]>; /** * 兼容 CLI 的批量翻译映射接口 * @param texts 文本数组 * @param targetLanguage 目标语言 * @returns Record<原文, 译文> */ tBatch(texts: string[], targetLanguage?: SupportedLanguage): Promise<Record<string, string>>; /** * 设置当前语言 * @param language 语言代码 */ setLanguage(language: SupportedLanguage): void; /** * 获取当前语言 * @returns 当前语言代码 */ getCurrentLanguage(): SupportedLanguage; /** * 自动检测并设置系统语言 */ detectAndSetSystemLanguage(): void; /** * 获取支持的语言列表 * @returns 支持的语言数组 */ getSupportedLanguages(): SupportedLanguage[]; /** * 获取内置词典统计信息 */ getBuiltinStats(): { totalKeys: number; supportedLanguages: SupportedLanguage[]; coverage: Record<SupportedLanguage, number>; }; /** * 获取缓存统计信息 */ getCacheStats(): CacheStats; /** * 清除缓存 * @param pattern 可选的匹配模式 */ clearCache(pattern?: string): Promise<void>; /** * 清理过期缓存 */ cleanupCache(): Promise<void>; /** * 预热常用词汇 * @param language 目标语言 * @returns 预热的词汇数量 */ preloadCommonTerms(language: SupportedLanguage): Promise<number>; /** * 搜索翻译 * @param query 搜索关键词 * @param language 搜索语言 * @returns 匹配的翻译结果 */ searchTranslations(query: string, language?: SupportedLanguage): import("./types").TranslationSearchResult[]; /** * 验证AI配置 * @returns 配置是否有效 */ validateAIConfig(): Promise<boolean>; /** * 估算翻译成本 * @param text 要翻译的文本 * @returns 估算成本(美元) */ estimateTranslationCost(text: string): number; /** * 获取语言显示名称 * @param language 语言代码 * @param displayLanguage 显示语言 * @returns 语言显示名称 */ getLanguageDisplayName(language: SupportedLanguage, displayLanguage?: SupportedLanguage): string; /** * 调试日志 */ private log; /** * 切换服务模式 * @param mode 服务模式 */ switchServiceMode(mode: 'self-hosted' | 'cloud' | 'hybrid'): Promise<void>; /** * 获取当前服务模式 */ getCurrentServiceMode(): 'self-hosted' | 'cloud' | 'hybrid'; /** * 获取服务模式统计 */ getServiceModeStats(): import("./service-mode").ServiceModeStats; /** * 获取翻译管道统计 */ getTranslationPipelineStats(): import("./translation-pipeline").PipelineStats; /** * 获取版本控制统计(如果启用) */ getVersionControlStats(): import("./version-control").VersionControlStats | undefined; /** * 同步语言包(如果启用版本控制) */ syncLanguagePack(language: SupportedLanguage): Promise<boolean>; /** * 同步所有语言包(如果启用版本控制) */ syncAllLanguagePacks(): Promise<Map<string, boolean>>; /** * 检查语言包更新(如果启用版本控制) */ checkForUpdates(): Promise<Map<any, any>>; /** * 回滚到指定版本(如果启用版本控制) */ rollbackToVersion(language: SupportedLanguage, version: string): Promise<boolean>; /** * 获取版本历史(如果启用版本控制) */ getVersionHistory(language: SupportedLanguage): import("./version-control").LanguageVersion[]; /** * 获取批量优化器统计(如果启用) */ getBatchOptimizerStats(): undefined; /** * 获取批量优化器队列状态(如果启用) */ getBatchOptimizerQueueStatus(): { currentOptimalBatchSize: number; pendingBatches: number; activeBatches: number; mergingBuffer: number; totalRequests: number; batchedRequests: number; mergedRequests: number; costSavings: number; averageBatchSize: number; batchingEfficiency: number; } | undefined; /** * 获取成本统计(如果启用批量优化器) */ getCostStats(): { totalRequests: number; batchedRequests: number; mergedRequests: number; costSavings: number; batchingEfficiency: number; } | undefined; /** * 暂停批量处理(如果启用批量优化器) */ pauseBatchProcessing(): void; /** * 恢复批量处理(如果启用批量优化器) */ resumeBatchProcessing(): void; /** * 清空批量处理队列(如果启用批量优化器) */ clearBatchQueue(): void; /** * 获取完整的系统状态 */ getSystemStatus(): { currentLanguage: string; serviceMode: "self-hosted" | "cloud" | "hybrid"; serviceModeStats: import("./service-mode").ServiceModeStats; cacheStats: CacheStats; builtinStats: { totalKeys: number; supportedLanguages: SupportedLanguage[]; coverage: Record<SupportedLanguage, number>; }; translationPipelineStats: import("./translation-pipeline").PipelineStats; versionControlStats: import("./version-control").VersionControlStats | undefined; supportedLanguages: string[]; }; /** * 销毁实例,清理资源 */ destroy(): void; /** * 初始化智能回退管理器 */ private initializeFallbackManager; /** * 初始化批量优化器 */ private initializeBatchOptimizer; private buildFallbackOrder; /** * 注册翻译提供者 */ private registerProviders; /** * 使用智能回退机制进行翻译 */ translateWithFallback(text: string, targetLanguage?: SupportedLanguage, options?: { context?: string; forceAPI?: 'aiProvider' | 'cloudService'; skipCache?: boolean; priority?: 'low' | 'normal' | 'high'; }): Promise<TranslationResult & { fallbackInfo?: any; }>; /** * 映射回退源到翻译结果源 */ private mapFallbackSourceToTranslationSource; /** * 获取回退管理器的健康状态 */ getFallbackHealth(): Promise<Map<string, any> | null>; /** * 重置指定提供者的熔断器 */ resetProviderCircuitBreaker(providerName: string): void; /** * 获取回退统计信息 */ getFallbackStats(): any; /** * 保存安全配置到加密文件 */ saveSecureConfig(config: Partial<DualAPIConfig>): boolean; /** * 加载安全配置 */ loadSecureConfig(): Partial<DualAPIConfig> | null; /** * 验证配置文件完整性 */ validateSecureConfig(): { valid: boolean; errors: string[]; }; /** * 轮转加密密钥 */ rotateEncryptionKey(newKey?: string): boolean; /** * 删除安全配置文件 */ deleteSecureConfig(): boolean; /** * 获取安全配置状态 */ getSecureConfigStatus(): { initialized: boolean; hasSecureFile: boolean; validationResult?: { valid: boolean; errors: string[]; }; }; } /** * 创建UI18n实例的工厂函数 * @param config 配置选项 * @returns UI18n实例 */ export declare function createUI18n(config: UI18nConfig): UI18n; //# sourceMappingURL=ui18n.d.ts.map