import { ReactNode } from 'react'; export type Translations = Record; export type TranslationSet = Record<'', TranslationConfig> | Record; export type TranslationConfig = Record; export type TranslationItem = Array; type BasicTypes = boolean | string | number; export type TranslateData = Record | null; export type TranslateDataWithJSX = Record React.ReactNode) | BasicTypes> | null; export interface TranslationOptions { strict?: boolean; verbose?: boolean; jsxWhitelist?: TranslateDataWithJSX; replaceStringRegex?: ReplaceStringRegex; content?: { trimWhiteSpace?: boolean; preserveIndentation?: boolean; replaceNewLines?: false | string; }; } export type TranslateFunc = (message: string, data?: TranslateData, context?: string) => string; export type TranslateJsxFunc = (message: string, data?: TranslateDataWithJSX, context?: string) => ReactNode; export type TranslatePluralFunc = (n: number, singular: string, plural: string, data?: TranslateData, context?: string) => string; export type TranslatePluralJsxFunc = (n: number, singular: string, plural: string, data?: TranslateDataWithJSX, context?: string) => ReactNode; export type FormatLocaleOption = 'xx-yy' | 'xx_yy' | 'xx-YY' | 'xx_YY'; export interface ReplaceStringRegex { pattern: (key: string) => string; } export interface ReplaceStringOptions { strict?: boolean; replaceStringRegex?: ReplaceStringRegex; } export interface ReplaceJsxOptions { strict?: boolean; replaceStringRegex?: ReplaceStringRegex; } export {}; //# sourceMappingURL=types.d.ts.map