import GirafeSingleton from '../../base/GirafeSingleton.js'; import IGirafeContext from '../context/icontext.js'; /** * A dictionary that holds translation strings. * For example: * { * 'layer': 'couche' * } */ export type TranslationsDict = { [lang: string]: string; }; declare class I18nManager extends GirafeSingleton { private readonly translations; private readonly translationAliases; private loadingLanguagePromise; constructor(context: IGirafeContext); initializeSingleton(): void; private formatNumber; ensureTranslationLoaded(): Promise; private loadTranslations; getTranslation(key: string): string; translate(dom: DocumentFragment | HTMLElement): Promise; private handleLanguageChange; private getFnTranslated; /** * Define a translation alias. * The alias will use the same translation as the key. * But if the key already has another translation, the alias will be ignored */ addTranslationAlias(key: string, alias: string): void; } export default I18nManager;