interface TranslationOptions { rawKeyIfTranslationMissing?: boolean; } type GenericTranslationObject = Record; export declare class I18n { listeners: Set<() => void>; defaultLocale: string; enableFallback: boolean; locale: string; private cachedLocales; translations: GenericTranslationObject; constructor(localeTranslations: Record); private missingMessage; private flattenTranslation; private translateWithReplacements; t(key: string, replacements?: Record, options?: TranslationOptions): string; isLocaleCached(locale: string): boolean; updateLocale(locale: string): void; setTranslations(locale: string, translations: GenericTranslationObject): void; private notifyListeners; onChange(fn: () => void): () => void; } export {};