import React, { PropsWithChildren } from "react"; import { RebaseTranslations } from "@rebasepro/cms-types"; export declare const REBASE_LOCALE_STORAGE_KEY = "rebase_locale"; /** DeepPartial helper — allows partial overrides at any nesting level */ type DeepPartial = T extends object ? { [K in keyof T]?: DeepPartial; } : T; export interface RebaseI18nProviderProps { /** BCP-47 locale tag, e.g. "en", "es", "fr". Defaults to "en". */ locale?: string; /** * Override or extend any Rebase UI string, keyed by locale. * * @example * translations={{ * en: { save: "Publish" }, * es: { save: "Publicar", discard: "Descartar" } * }} */ translations?: { [locale: string]: DeepPartial; }; } /** * Initialises a dedicated i18next instance for Rebase's internal UI strings. * * This instance is isolated from any app-level i18next configuration the * consumer may have. Mount this at the top of the Rebase component tree. * * @internal */ export declare function RebaseI18nProvider({ locale, translations, children }: PropsWithChildren): React.JSX.Element | null; export {};