import type * as languages from '../../i18n'; export type PartialResource = T extends object ? { [P in keyof T]?: PartialResource; } : T; export type LanguageKey = keyof typeof languages; export type LanguageResource = typeof languages.en; export type LanguageResources = | { [language in LanguageKey]?: PartialResource; } | { [language: string]: PartialResource; }; export type LanguageTranslationResource = { [namespace in 'translation']: PartialResource; }; export type LanguageTranslationResources = { [language: string]: LanguageTranslationResource; };