UNPKG

@intl-t/react

Version:

A Fully-Typed Object-Based i18n Translation Library for React

22 lines (21 loc) 1.56 kB
import type { isArray, SearchWays, ArrayToString, Locale, TranslationProps as TP } from "@intl-t/core/types"; import type { GlobalTranslation } from "@intl-t/global"; import { TranslationNode } from "@intl-t/react/translation"; import type { ReactState, ReactSetState } from "./types"; export type TranslationContext = null | { reRender?: ReactSetState<number>; localeState?: ReactState<Locale>; t?: TranslationNode; }; export declare const TranslationContext: import("react").Context<TranslationContext>; interface TranslationProps<T extends TranslationNode, A extends string[] = string[], D extends string = string> extends TP<T["settings"], T["node"], T["values"], A, D> { t?: T; } export { TranslationProps as TranslationProviderProps }; export declare function TranslationProvider<T extends TranslationNode, A extends isArray<SearchWays<T>>, D extends ArrayToString<A, T["settings"]["ps"]>>({ t, onLocaleChange, locale, children, i18nKey, id, path, messages, source, variables, settings, ...state }: TranslationProps<T, A, D>): bigint | false | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("@intl-t/types").Base | import("@intl-t/types").Content<T["node"]> | null | undefined; export declare const T: typeof TranslationProvider; export { T as Trans, T as Tr }; export declare function hook(...args: any[]): any; export declare const useTranslation: GlobalTranslation; export declare const useTranslations: GlobalTranslation; export { hook as useTranslation, hook as useTranslations };