UNPKG

@shelchin/svelte-i18n

Version:

The last Svelte i18n library you'll ever need. Type-safe, AI-powered, zero-config.

59 lines (58 loc) 1.92 kB
/** * Client-side initialization functions for i18n * Handles browser-specific initialization and hydration */ import type { I18nInstance } from '../core/types.js'; /** * Setup i18n on client with SSR data * Handles hydration of SSR translations * * @param i18n - The i18n instance * @param data - SSR data from server * @param options - Configuration options */ export declare function setupI18nClient<T = I18nInstance>(i18n: T & Pick<I18nInstance, 'locale' | 'locales' | 'setLocale' | 'loadLanguageSync'>, data: any, options?: { defaultLocale?: string; storageKey?: string; }): { locale: any; locales: any; i18nReady: boolean; }; /** * Initialize i18n on mount (client-side only) * Use this in your +layout.svelte onMount * * @param i18n - The i18n instance * @param data - SSR data * @param options - Configuration options */ export declare function initI18nOnMount<T = I18nInstance>(i18n: T & Pick<I18nInstance, 'locale' | 'locales' | 'setLocale'>, _data: any, options?: { initFunction?: (i18n: any, initOptions?: any) => Promise<void>; storageKey?: string; defaultLocale?: string; }): Promise<{ locale: string; locales: string[]; i18nReady: boolean; } | undefined>; /** * Check if i18n is ready (translations loaded) * * @param i18n - The i18n instance * @param data - SSR data */ export declare function i18nIsReady<T = I18nInstance>(i18n: T & Pick<I18nInstance, 'locale' | 'locales'>, data: any): boolean; /** * Backward compatible client init function * @deprecated Use setupI18nClient or initI18nOnMount instead */ export declare function i18nClientInit<T = I18nInstance>(i18n: T & Pick<I18nInstance, 'locale' | 'locales' | 'setLocale'>, data: any, options?: { storageKey?: string; autoLoad?: boolean; initFunction?: (i18n: any) => Promise<void>; }): Promise<{ locale: string; locales: any; i18nReady: boolean; }>;