import { z } from 'zod'; export type LanguageCode = string; export type LocalizedStringEntry = Record> = { value: string; updatedAt: Date; autoTranslated?: boolean; } & TExtra; export type LocalizedString = Record> = Record>; export type I18nStringRecord = LocalizedString; export type I18nString = LocalizedString; export type LocalizedStringWithFallback = LocalizedString & { get: (key: string) => LocalizedStringEntry | undefined; getExact: (key: string) => LocalizedStringEntry | undefined; hasExact: (key: string) => boolean; }; export declare const LANGUAGE_CODE_REGEX: RegExp; export declare function buildLocaleFallbackChain(locale: string, fallbacks?: string | string[]): string[]; export declare function resolveLocalizedString(value: LocalizedString | null | undefined, locale: string, options?: { fallbacks?: string | string[]; }): string | undefined; export declare function withLocalizedStringFallback(value: T): T; export declare const zLocalizedString: () => z.ZodRecord; }, z.core.$loose>>; export declare const zI18nString: () => z.ZodRecord; }, z.core.$loose>>; //# sourceMappingURL=localizedString.d.ts.map