UNPKG

auto-translatr

Version:
34 lines (33 loc) 1.83 kB
import { Language, Translations } from './translationsReader'; import { Either } from './utils'; export declare const readTranslations: (reader: () => Promise<Either<Error, Record<Language, Translations>>>) => Promise<Either<Error, Record<Language, Translations>>>; export declare const getMissingTranslations: (defaultTranslations: Translations, targetTranslations: Translations) => Translations; export declare const extractDefaultAndOthers: (defaultLanguage: Language, translations: Record<Language, Translations>) => { default: { language: string; translations: Translations; }; others: { language: string; translations: Translations; }[]; }; export declare const extractMissingTranslations: (translations: { default: TranslationWithLanguageCode; others: TranslationWithLanguageCode[]; }) => TranslationWithLanguageCode[]; export declare const addTranslator: (defaultLanguage: Language, translator: (text: string) => Promise<string>) => (translation: TranslationWithLanguageCode) => TranslationWithTranslator; export declare const translate: (translation: TranslationWithTranslator) => Promise<Either<Error, TranslationWithLanguageCode>>; export declare const addMissingTranslations: (defaultLanguage: Language, dependencies: TranslationsParserDependencies) => Promise<void>; export type TranslationsParserDependencies = { reader: () => Promise<Either<Error, Record<Language, Translations>>>; writer: (translations: Record<Language, Translations>) => Promise<Either<Error, void>>; translator: (text: string) => Promise<string>; }; export type TranslationWithLanguageCode = { language: Language; translations: Translations; }; export type TranslationWithTranslator = TranslationWithLanguageCode & { translate: (text: string) => Promise<string>; };