Skip to content

Interface: ComposerOptions<Schema, Locales, MessagesLocales, DateTimeFormatsLocales, NumberFormatsLocales, MessageSchema, DateTimeSchema, NumberSchema, _Messages, _DateTimeFormats, _NumberFormats>

Composer Options

Signature

ts
export interface ComposerOptions<
  Schema extends {
    message?: unknown
    datetime?: unknown
    number?: unknown
  } = {
    message: DefaultLocaleMessageSchema
    datetime: DefaultDateTimeFormatSchema
    number: DefaultNumberFormatSchema
  },
  Locales extends
    | {
        messages: unknown
        datetimeFormats: unknown
        numberFormats: unknown
      }
    | string = Locale,
  MessagesLocales = Locales extends { messages: infer M }
    ? M
    : Locales extends string
      ? Locales
      : Locale,
  DateTimeFormatsLocales = Locales extends { datetimeFormats: infer D }
    ? D
    : Locales extends string
      ? Locales
      : Locale,
  NumberFormatsLocales = Locales extends { numberFormats: infer N }
    ? N
    : Locales extends string
      ? Locales
      : Locale,
  MessageSchema = Schema extends { message: infer M } ? M : DefaultLocaleMessageSchema,
  DateTimeSchema = Schema extends { datetime: infer D } ? D : DefaultDateTimeFormatSchema,
  NumberSchema = Schema extends { number: infer N } ? N : DefaultNumberFormatSchema,
  _Messages extends LocaleMessages<MessageSchema, MessagesLocales, VueMessageType> = LocaleMessages<
    MessageSchema,
    MessagesLocales,
    VueMessageType
  >,
  _DateTimeFormats extends DateTimeFormatsType<DateTimeSchema, DateTimeFormatsLocales> =
    DateTimeFormatsType<DateTimeSchema, DateTimeFormatsLocales>,
  _NumberFormats extends NumberFormatsType<NumberSchema, NumberFormatsLocales> = NumberFormatsType<
    NumberSchema,
    NumberFormatsLocales
  >
>

Type Parameters

Name
Schema extends { message?: unknown datetime?: unknown number?: unknown } = { message: DefaultLocaleMessageSchema datetime: DefaultDateTimeFormatSchema number: DefaultNumberFormatSchema }
Locales extends | { messages: unknown datetimeFormats: unknown numberFormats: unknown } | string = Locale
MessagesLocales = Locales extends { messages: infer M } ? M : Locales extends string ? Locales : Locale
DateTimeFormatsLocales = Locales extends { datetimeFormats: infer D } ? D : Locales extends string ? Locales : Locale
NumberFormatsLocales = Locales extends { numberFormats: infer N } ? N : Locales extends string ? Locales : Locale
MessageSchema = Schema extends { message: infer M } ? M : DefaultLocaleMessageSchema
DateTimeSchema = Schema extends { datetime: infer D } ? D : DefaultDateTimeFormatSchema
NumberSchema = Schema extends { number: infer N } ? N : DefaultNumberFormatSchema
_Messages extends LocaleMessages<MessageSchema, MessagesLocales, VueMessageType> = LocaleMessages<MessageSchema, MessagesLocales, VueMessageType>
_DateTimeFormats extends DateTimeFormatsType<DateTimeSchema, DateTimeFormatsLocales> = DateTimeFormatsType<DateTimeSchema, DateTimeFormatsLocales>
_NumberFormats extends NumberFormatsType<NumberSchema, NumberFormatsLocales> = NumberFormatsType<NumberSchema, NumberFormatsLocales>

Properties

NameTypeDescription
datetimeFormats (optional){ [K in keyof _DateTimeFormats]: DateTimeSchema }Default: {}
escapeParameter (optional)booleanDefault: false
fallbackFormat (optional)booleanDefault: false
fallbackLocale (optional)FallbackLocaleDefault: The default 'en-US'for thelocaleif it's not specified, or it'slocale value
fallbackRoot (optional)booleanDefault: true
fallbackWarn (optional)boolean | RegExpDefault: true
flatJson (optional)booleanDefault: false
inheritLocale (optional)booleanDefault: true
locale (optional)LocaleDefault: 'en-US'
localeFallbacker (optional)LocaleFallbackerDefault: undefined
messageCompiler (optional)MessageCompilerDefault: undefined
messageResolver (optional)MessageResolverDefault: undefined
messages (optional){ [K in keyof _Messages]: MessageSchema }Default: {}
missing (optional)MissingHandlerDefault: null
missingWarn (optional)boolean | RegExpDefault: true
modifiers (optional)LinkedModifiers<VueMessageType>
numberFormats (optional){ [K in keyof _NumberFormats]: NumberSchema }Default: {}
pluralRules (optional)PluralizationRulesDefault: {}
postTranslation (optional)PostTranslationHandler<VueMessageType>Default: null
warnHtmlMessage (optional)booleanDefault: true

missing Parameters

NameTypeDescription
localeLocale
keyPath
uidnumberoptional
typestringoptional

missing Returns

string | void

Tags

  • @VueI18nComposition
  • @remarks — This is options to create composer.

Released under the MIT License.