import { MtnaI18nLanguageOption } from './i18n-language-option.model'; import { MtnaLocaleIds } from './locale-ids.model'; /** * Default properties for use in extracting values in an internationalized application. */ export interface MtnaI18nDefaultOptions { /** The languages supported by an application. */ languages: MtnaI18nLanguageOption[]; /** * Given that a locale ID specifies the language, country, and an optional code for further variants or subdivisions. * A locale ID consists of the language identifier, a dash (-) character, and the locale extension. * `{language_id}-{locale_extension}`. * * This is the full default locale ID, i.e. * - en * - en-US * - en-CA * - fr-CA */ defaultLocaleId?: typeof MtnaLocaleIds.type; /** * The name of an InternationalizedString's language property. * * @example * ``` * // Given the object below, * // the langPropName should be "facetId" * { * "vehicle": { * "facetId": "en", * "value": "car" * } * } * ``` */ langPropName?: string; /** * The name of an InternationalizedString's value property. * * @example * ``` * // Given the object below, * // the valuePropName should be "value" * { * "vehicle": { * "facetId": "en", * "value": "car" * } * } * ``` */ valuePropName?: string; }