import type { JSX } from "../tools/JSX"; import { type KcContextLike } from "../core/i18n/getI18n"; import type { GenericI18n } from "./GenericI18n"; import type { LanguageTag as LanguageTag_defaultSet, MessageKey as MessageKey_defaultSet } from "../core/i18n/messages_defaultSet/types"; export type ReturnTypeOfCreateUseI18n = { useI18n: () => GenericI18n; I18nProvider: (props: { kcContext: KcContextLike; children: JSX.Element; }) => JSX.Element; ofTypeI18n: GenericI18n; }; export { KcContextLike }; export declare function createUseI18n(params: { extraLanguageTranslations: { [languageTag in LanguageTag_notInDefaultSet]: { label: string; getMessages: () => Promise<{ default: Record; }>; }; }; messagesByLanguageTag_themeDefined: Partial<{ [languageTag in LanguageTag_defaultSet | LanguageTag_notInDefaultSet]: { [key in MessageKey_themeDefined]: string | Record; }; }>; }): ReturnTypeOfCreateUseI18n;