import type React from "react"; import type { InitOptions, i18n } from "i18next"; import type { HttpBackendOptions } from "i18next-http-backend"; import type { DetectorOptions } from "i18next-browser-languagedetector"; export type I18nInstance = i18n; export type I18nConfig = { languageInPath?: boolean; } & I18nOptions; export type I18nContextValue = { i18nInstance?: I18nInstance; languageInPath?: boolean; }; export type I18nOptions = { backend?: HttpBackendOptions; detection?: DetectorOptions; } & InitOptions; export type I18nProviderProps = { children: React.ReactNode; config?: I18nConfig; }; export type I18nProviderComponent = (props: I18nProviderProps) => JSX.Element; export type UseI18nHook = () => I18nContextValue; export type CreateI18NInstanceUtil = (options: I18nOptions) => I18nInstance;