/** * Translatable string keys for consent banner */ export interface BannerTranslations { title: string; message: string; acceptAll: string; rejectAll: string; customize: string; privacyLinkText: string; } /** * Translatable string keys for a single consent category */ export interface CategoryTranslations { name: string; description: string; } /** * Translatable string keys for preference center modal */ export interface PreferenceCenterTranslations { title: string; description: string; savePreferences: string; acceptAll: string; categories: { necessary: CategoryTranslations; analytics: CategoryTranslations; marketing: CategoryTranslations; functional: CategoryTranslations; }; } /** * Translatable string keys for CCPA compliance. * * Note: CCPA text is intentionally NOT translated to local languages. * "Do Not Sell My Personal Information" is the legally required phrase * under California Consumer Privacy Act. CCPA only applies to US states, * where English is the primary language. Translating this legal phrase * could cause compliance issues. */ export interface CCPATranslations { /** "Do Not Sell My Personal Information" link text (English only, legally required phrase) */ doNotSell: string; } /** * Complete translation bundle for a single locale */ export interface Translations { banner: BannerTranslations; preferenceCenter: PreferenceCenterTranslations; ccpa: CCPATranslations; } /** * Supported locale codes */ export type SupportedLocale = "en" | "de" | "fr" | "es" | "it" | "pt" | "nl" | "pl" | "ru" | "uk" | "ja" | "zh" | "ko";