@intlify/core-base 12.0.0-alpha.3 → 12.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,1227 +1,996 @@
1
- import type { BaseError } from '@intlify/shared';
2
- import { CompileError } from '@intlify/message-compiler';
3
- import { CompileErrorCodes } from '@intlify/message-compiler';
4
- import type { CompileOptions } from '@intlify/message-compiler';
5
- import { createCompileError } from '@intlify/message-compiler';
6
- import type { IntlifyDevToolsEmitter } from '@intlify/devtools-types';
7
- import type { IntlifyDevToolsHookPayloads } from '@intlify/devtools-types';
8
- import type { IntlifyDevToolsHooks } from '@intlify/devtools-types';
9
- import { ResourceNode } from '@intlify/message-compiler';
10
- import type { VueDevToolsEmitter } from '@intlify/devtools-types';
11
-
12
- declare type __ResourceFormatPath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}` : never : never;
13
-
14
- export declare type __ResourcePath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}.${__ResourcePath<T[Key], Exclude<keyof T[Key], keyof any[]>> & string}` | `${Key}.${Exclude<keyof T[Key], keyof any[]> & string}` : never : never;
15
-
16
- export declare const AST_NODE_PROPS_KEYS: string[];
17
-
18
- export declare function clearCompileCache(): void;
19
-
20
- /* Excluded from this release type: clearDateTimeFormat */
21
-
22
- /* Excluded from this release type: clearNumberFormat */
23
-
24
- export declare function compile<Message = string, MessageSource = string | ResourceNode>(message: MessageSource, context: MessageCompilerContext): MessageFunction<Message>;
25
- export { CompileError }
26
- export { CompileErrorCodes }
27
-
28
- export declare const CORE_ERROR_CODES_EXTEND_POINT = 24;
29
-
30
- export declare const CORE_WARN_CODES_EXTEND_POINT: number;
31
-
32
- export declare interface CoreCommonContext<Message = string, Locales = 'en-US'> {
33
- cid: number;
34
- version: string;
35
- locale: Locales;
36
- fallbackLocale: FallbackLocales<Exclude<Locales, LocaleDetector>>;
37
- missing: CoreMissingHandler<Message> | null;
38
- missingWarn: boolean | RegExp;
39
- fallbackWarn: boolean | RegExp;
40
- fallbackFormat: boolean;
41
- unresolving: boolean;
42
- localeFallbacker: LocaleFallbacker;
43
- onWarn(msg: string, err?: Error): void;
44
- }
45
-
46
- export declare type CoreContext<Message = string, Messages = {}, DateTimeFormats = {}, NumberFormats = {}, LocaleType = Locale, ResourceLocales = PickupLocales<NonNullable<Messages>> | PickupLocales<NonNullable<DateTimeFormats>> | PickupLocales<NonNullable<NumberFormats>>, Locales = IsNever<ResourceLocales> extends true ? LocaleType extends LocaleDetector | Locale ? LocaleType : Locale : ResourceLocales> = CoreCommonContext<Message, Locales> & CoreTranslationContext<NonNullable<Messages>, Message> & CoreDateTimeContext<NonNullable<DateTimeFormats>> & CoreNumberContext<NonNullable<NumberFormats>> & {
47
- fallbackContext?: CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType, ResourceLocales, Locales>;
48
- };
49
-
50
- export declare interface CoreDateTimeContext<DateTimeFormats = {}> {
51
- datetimeFormats: {
52
- [K in keyof DateTimeFormats]: DateTimeFormats[K];
53
- };
54
- }
55
-
56
- export declare interface CoreError extends BaseError {
57
- }
58
-
59
- export declare const CoreErrorCodes: {
60
- readonly INVALID_ARGUMENT: number;
61
- readonly INVALID_DATE_ARGUMENT: 18;
62
- readonly INVALID_ISO_DATE_ARGUMENT: 19;
63
- readonly NOT_SUPPORT_NON_STRING_MESSAGE: 20;
64
- readonly NOT_SUPPORT_LOCALE_PROMISE_VALUE: 21;
65
- readonly NOT_SUPPORT_LOCALE_ASYNC_FUNCTION: 22;
66
- readonly NOT_SUPPORT_LOCALE_TYPE: 23;
67
- };
68
-
69
- export declare type CoreErrorCodes = (typeof CoreErrorCodes)[keyof typeof CoreErrorCodes];
70
-
71
- export declare interface CoreInternalContext {
72
- __datetimeFormatters: Map<string, Intl.DateTimeFormat>;
73
- __numberFormatters: Map<string, Intl.NumberFormat>;
74
- __localeChainCache?: Map<Locale, Locale[]>;
75
- __v_emitter?: VueDevToolsEmitter;
76
- __meta: MetaInfo;
77
- }
78
-
79
- export declare interface CoreInternalOptions {
80
- __datetimeFormatters?: Map<string, Intl.DateTimeFormat>;
81
- __numberFormatters?: Map<string, Intl.NumberFormat>;
82
- __v_emitter?: VueDevToolsEmitter;
83
- __meta?: MetaInfo;
84
- }
85
-
86
- export declare type CoreMissingHandler<Message = string> = (context: CoreContext<Message>, locale: Locale, key: Path, type: CoreMissingType, ...values: unknown[]) => string | void;
87
-
88
- export declare type CoreMissingType = 'translate' | 'datetime format' | 'number format' | 'translate exists';
89
-
90
- export declare interface CoreNumberContext<NumberFormats = {}> {
91
- numberFormats: {
92
- [K in keyof NumberFormats]: NumberFormats[K];
93
- };
94
- }
95
-
96
- export declare interface CoreOptions<Message = string, Schema extends {
97
- message?: unknown;
98
- datetime?: unknown;
99
- number?: unknown;
100
- } = {
101
- message: DefaultCoreLocaleMessageSchema;
102
- datetime: DateTimeFormat;
103
- number: NumberFormat;
104
- }, Locales extends {
105
- messages: unknown;
106
- datetimeFormats: unknown;
107
- numberFormats: unknown;
108
- } | string = Locale, MessagesLocales = Locales extends {
109
- messages: infer M;
110
- } ? M : Locales extends string ? Locales : Locale, DateTimeFormatsLocales = Locales extends {
111
- datetimeFormats: infer D;
112
- } ? D : Locales extends string ? Locales : Locale, NumberFormatsLocales = Locales extends {
113
- numberFormats: infer N;
114
- } ? N : Locales extends string ? Locales : Locale, MessageSchema = Schema extends {
115
- message: infer M;
116
- } ? M : DefaultCoreLocaleMessageSchema, DateTimeSchema = Schema extends {
117
- datetime: infer D;
118
- } ? D : DateTimeFormat, NumberSchema = Schema extends {
119
- number: infer N;
120
- } ? N : NumberFormat, _Messages extends LocaleMessages<MessageSchema, MessagesLocales, Message> = LocaleMessages<MessageSchema, MessagesLocales, Message>, _DateTimeFormats extends DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales> = DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales>, _NumberFormats extends NumberFormats<NumberSchema, NumberFormatsLocales> = NumberFormats<NumberSchema, NumberFormatsLocales>> {
121
- version?: string;
122
- locale?: Locale | LocaleDetector;
123
- fallbackLocale?: FallbackLocale;
124
- messages?: {
125
- [K in keyof _Messages]: MessageSchema;
126
- };
127
- datetimeFormats?: {
128
- [K in keyof _DateTimeFormats]: DateTimeSchema;
129
- };
130
- numberFormats?: {
131
- [K in keyof _NumberFormats]: NumberSchema;
132
- };
133
- modifiers?: LinkedModifiers<Message>;
134
- pluralRules?: PluralizationRules;
135
- missing?: CoreMissingHandler<Message>;
136
- missingWarn?: boolean | RegExp;
137
- fallbackWarn?: boolean | RegExp;
138
- fallbackFormat?: boolean;
139
- unresolving?: boolean;
140
- postTranslation?: PostTranslationHandler<Message>;
141
- processor?: MessageProcessor<Message>;
142
- warnHtmlMessage?: boolean;
143
- escapeParameter?: boolean;
144
- messageCompiler?: MessageCompiler<Message, string | ResourceNode>;
145
- messageResolver?: MessageResolver;
146
- localeFallbacker?: LocaleFallbacker;
147
- fallbackContext?: CoreContext<Message, MessagesLocales, DateTimeFormatsLocales, NumberFormatsLocales>;
148
- onWarn?: (msg: string, err?: Error) => void;
149
- }
150
-
151
- export declare interface CoreTranslationContext<Messages = {}, Message = string> {
152
- messages: {
153
- [K in keyof Messages]: Messages[K];
154
- };
155
- modifiers: LinkedModifiers<Message>;
156
- pluralRules?: PluralizationRules;
157
- postTranslation: PostTranslationHandler<Message> | null;
158
- processor: MessageProcessor<Message> | null;
159
- warnHtmlMessage: boolean;
160
- escapeParameter: boolean;
161
- messageCompiler: MessageCompiler<Message, string | ResourceNode> | null;
162
- messageResolver: MessageResolver;
163
- }
164
-
165
- export declare const CoreWarnCodes: {
166
- readonly NOT_FOUND_KEY: 1;
167
- readonly FALLBACK_TO_TRANSLATE: 2;
168
- readonly CANNOT_FORMAT_NUMBER: 3;
169
- readonly FALLBACK_TO_NUMBER_FORMAT: 4;
170
- readonly CANNOT_FORMAT_DATE: 5;
171
- readonly FALLBACK_TO_DATE_FORMAT: 6;
172
- readonly EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER: 7;
173
- };
174
-
175
- export declare type CoreWarnCodes = (typeof CoreWarnCodes)[keyof typeof CoreWarnCodes];
176
- export { createCompileError }
177
-
178
- export declare function createCoreContext<Message = string, Options extends CoreOptions<Message> = CoreOptions<Message>, Messages extends Record<string, any> = Options['messages'] extends Record<string, any> ? Options['messages'] : {}, DateTimeFormats extends Record<string, any> = Options['datetimeFormats'] extends Record<string, any> ? Options['datetimeFormats'] : {}, NumberFormats extends Record<string, any> = Options['numberFormats'] extends Record<string, any> ? Options['numberFormats'] : {}, LocaleType = Locale | LocaleDetector>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType>;
179
-
180
- export declare function createCoreContext<Schema = LocaleMessage, Locales = 'en-US', Message = string, Options extends CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>> = CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>>, Messages extends Record<string, any> = NonNullable<Options['messages']> extends Record<string, any> ? NonNullable<Options['messages']> : {}, DateTimeFormats extends Record<string, any> = NonNullable<Options['datetimeFormats']> extends Record<string, any> ? NonNullable<Options['datetimeFormats']> : {}, NumberFormats extends Record<string, any> = NonNullable<Options['numberFormats']> extends Record<string, any> ? NonNullable<Options['numberFormats']> : {}, LocaleType = Locale | LocaleDetector>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType>;
181
-
182
- export declare function createCoreError(code: CoreErrorCodes): CoreError;
183
-
184
- declare function createDevToolsHook(hook: IntlifyDevToolsHooks): (payloads: IntlifyDevToolsHookPayloads[IntlifyDevToolsHooks]) => void | null;
185
-
186
- export declare function createMessageContext<T = string, N = {}>(options?: MessageContextOptions<T, N>): MessageContext<T>;
187
-
188
- /**
189
- * number
190
- */
191
- export declare type CurrencyDisplay = 'symbol' | 'code' | 'name';
192
-
193
- export declare interface CurrencyNumberFormatOptions extends Intl.NumberFormatOptions {
194
- style: 'currency';
195
- currency: string;
196
- currencyDisplay?: CurrencyDisplay;
197
- localeMatcher?: LocaleMatcher;
198
- formatMatcher?: FormatMatcher;
199
- }
200
-
201
- /**
202
- * `datetime` function overloads
203
- */
204
- export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number | string | Date): string | number | Intl.DateTimeFormatPart[];
205
-
206
- export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>): string | number | Intl.DateTimeFormatPart[];
207
-
208
- export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale']): string | number | Intl.DateTimeFormatPart[];
209
-
210
- export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[];
211
-
212
- export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['datetimeFormats']> = PickupFormatKeys<Context['datetimeFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale'], override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[];
213
-
214
- /* Excluded from this release type: DATETIME_FORMAT_OPTIONS_KEYS */
215
-
216
- export declare type DateTimeDigital = 'numeric' | '2-digit';
217
-
218
- export declare type DateTimeFormat = {
219
- [key: string]: DateTimeFormatOptions;
220
- };
221
-
222
- export declare type DateTimeFormatOptions = Intl.DateTimeFormatOptions | SpecificDateTimeFormatOptions;
223
-
224
- export declare type DateTimeFormats<Schema = DateTimeFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>;
225
-
226
- /**
227
- * datetime
228
- */
229
- export declare type DateTimeHumanReadable = 'long' | 'short' | 'narrow';
230
-
231
- /**
232
- * # datetime
233
- *
234
- * ## usages:
235
- * // for example `context.datetimeFormats` below
236
- * 'en-US': {
237
- * short: {
238
- * year: 'numeric', month: '2-digit', day: '2-digit',
239
- * hour: '2-digit', minute: '2-digit'
240
- * }
241
- * },
242
- * 'ja-JP': { ... }
243
- *
244
- * // datetimeable value only
245
- * datetime(context, value)
246
- *
247
- * // key argument
248
- * datetime(context, value, 'short')
249
- *
250
- * // key & locale argument
251
- * datetime(context, value, 'short', 'ja-JP')
252
- *
253
- * // object sytle argument
254
- * datetime(context, value, { key: 'short', locale: 'ja-JP' })
255
- *
256
- * // suppress localize miss warning option, override context.missingWarn
257
- * datetime(context, value, { key: 'short', locale: 'ja-JP', missingWarn: false })
258
- *
259
- * // suppress localize fallback warning option, override context.fallbackWarn
260
- * datetime(context, value, { key: 'short', locale: 'ja-JP', fallbackWarn: false })
261
- *
262
- * // if you specify `part` options, you can get an array of objects containing the formatted datetime in parts
263
- * datetime(context, value, { key: 'short', part: true })
264
- *
265
- * // orverride context.datetimeFormats[locale] options with functino options
266
- * datetime(cnotext, value, 'short', { year: '2-digit' })
267
- * datetime(cnotext, value, 'short', 'ja-JP', { year: '2-digit' })
268
- * datetime(context, value, { key: 'short', part: true, year: '2-digit' })
269
- */
270
- /**
271
- * DateTime options
272
- *
273
- * @remarks
274
- * Options for Datetime formatting API
275
- *
276
- * @VueI18nGeneral
277
- */
278
- export declare interface DateTimeOptions<Key = string, Locales = Locale> extends Intl.DateTimeFormatOptions, LocaleOptions<Locales> {
279
- /**
280
- * @remarks
281
- * The target format key
282
- */
283
- key?: Key;
284
- /**
285
- * @remarks
286
- * Whether suppress warnings outputted when localization fails
287
- */
288
- missingWarn?: boolean;
289
- /**
290
- * @remarks
291
- * Whether do resolve on format keys when your language lacks a formatting for a key
292
- */
293
- fallbackWarn?: boolean;
294
- /**
295
- * @remarks
296
- * Whether to use [Intel.DateTimeFormat#formatToParts](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts)
297
- */
298
- part?: boolean;
299
- }
300
-
301
- export declare const DEFAULT_LOCALE = "en-US";
302
-
303
- export declare const DEFAULT_MESSAGE_DATA_TYPE = "text";
304
-
305
- export declare type DefaultCoreLocaleMessageSchema<Schema = RemoveIndexSignature<{
306
- [K in keyof DefineCoreLocaleMessage]: DefineCoreLocaleMessage[K];
307
- }>> = IsEmptyObject<Schema> extends true ? LocaleMessage<string> : Schema;
308
-
309
- /**
310
- * The type definition of Locale Message for `@intlify/core-base` package
311
- *
312
- * @remarks
313
- * The typealias is used to strictly define the type of the Locale message.
314
- *
315
- * @example
316
- * ```ts
317
- * // type.d.ts (`.d.ts` file at your app)
318
- * import { DefineCoreLocaleMessage } from '@intlify/core-base'
319
- *
320
- * declare module '@intlify/core-base' {
321
- * export interface DefineCoreLocaleMessage {
322
- * title: string
323
- * menu: {
324
- * login: string
325
- * }
326
- * }
327
- * }
328
- * ```
329
- *
330
- * @VueI18nGeneral
331
- */
332
- export declare interface DefineCoreLocaleMessage extends LocaleMessage<string> {
333
- }
334
-
335
- export declare type EmptyObject = {
336
- [emptyObjectSymbol]?: never;
337
- };
338
-
339
- declare const emptyObjectSymbol: unique symbol;
340
-
341
- export declare type ExtractToStringKey<T> = Extract<keyof T, 'toString'>;
342
-
343
- /** @VueI18nGeneral */
344
- export declare type FallbackLocale = Locale | Locale[] | {
345
- [locale in string]: Locale[];
346
- } | false;
347
-
348
- export declare type FallbackLocales<Locales = 'en-US'> = Locales | Array<Locales> | {
349
- [locale in string]: Array<PickupFallbackLocales<UnionToTuple<Locales>>>;
350
- } | false;
351
-
352
- /**
353
- * Fallback with locale chain
354
- *
355
- * @remarks
356
- * A fallback locale function implemented with a fallback chain algorithm. It's used in VueI18n as default.
357
- *
358
- * @param ctx - A {@link CoreContext | context}
359
- * @param fallback - A {@link FallbackLocale | fallback locale}
360
- * @param start - A starting {@link Locale | locale}
361
- *
362
- * @returns Fallback locales
363
- *
364
- * @VueI18nSee [Fallbacking](../../guide/essentials/fallback)
365
- *
366
- * @VueI18nGeneral
367
- */
368
- export declare function fallbackWithLocaleChain<Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];
369
-
370
- /**
371
- * Fallback with simple implemenation
372
- *
373
- * @remarks
374
- * A fallback locale function implemented with a simple fallback algorithm.
375
- *
376
- * Basically, it returns the value as specified in the `fallbackLocale` props, and is processed with the fallback inside intlify.
377
- *
378
- * @param ctx - A {@link CoreContext | context}
379
- * @param fallback - A {@link FallbackLocale | fallback locale}
380
- * @param start - A starting {@link Locale | locale}
381
- *
382
- * @returns Fallback locales
383
- *
384
- * @VueI18nGeneral
385
- */
386
- export declare function fallbackWithSimple<Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];
387
-
388
- export declare type First<T extends readonly any[]> = T[0];
389
-
390
- export declare type FormatMatcher = 'basic' | 'best fit';
391
-
392
- export declare type FormattedNumberPart = {
393
- type: FormattedNumberPartType;
394
- value: string;
395
- };
396
-
397
- export declare type FormattedNumberPartType = 'currency' | 'decimal' | 'fraction' | 'group' | 'infinity' | 'integer' | 'literal' | 'minusSign' | 'nan' | 'plusSign' | 'percentSign';
398
-
399
- /**
400
- * Generated locale which resolves to `never` if left unset
401
- */
402
- export declare type GeneratedLocale = GeneratedTypeConfig extends Record<'locale', infer CustomLocale> ? CustomLocale : never;
403
-
404
- /**
405
- *
406
- * The interface used for narrowing types using generated types.
407
- *
408
- * @remarks
409
- *
410
- * The type generated by 3rd party (e.g. nuxt/i18n)
411
- *
412
- * @example
413
- * ```ts
414
- * // generated-i18n-types.d.ts (`.d.ts` file at your app)
415
- *
416
- * declare module '@intlify/core-base' {
417
- * interface GeneratedTypeConfig {
418
- * locale: "en" | "ja"
419
- * }
420
- * }
421
- * ```
422
- */
423
- export declare interface GeneratedTypeConfig {
424
- }
425
-
426
- export declare const getAdditionalMeta: () => MetaInfo | null;
427
-
428
- export declare function getDevToolsHook(): IntlifyDevToolsEmitter | null;
429
-
430
- export declare const getFallbackContext: () => CoreContext | null;
431
-
432
- /* Excluded from this release type: getLocale */
433
-
434
- /**
435
- * @version 12.0.0
436
- */
437
- export declare function getLocaleMessage<Context extends CoreContext, Locales = keyof Context['messages'], Return = Context['messages'][keyof Context['messages']]>(ctx: Context, locale: Locales): Return | undefined;
438
-
439
- export declare function getWarnMessage(code: CoreWarnCodes, ...args: unknown[]): string;
440
-
441
- /* Excluded from this release type: handleMissing */
442
-
443
- export declare function initI18nDevTools(i18n: unknown, version: string, meta?: Record<string, unknown>): void;
444
-
445
- /* Excluded from this release type: isAlmostSameLocale */
446
-
447
- export declare type IsEmptyObject<T> = T extends {
448
- [emptyObjectSymbol]?: never;
449
- } ? true : false;
450
-
451
- /* Excluded from this release type: isImplicitFallback */
452
-
453
- export declare function isMessageAST(val: unknown): val is ResourceNode;
454
-
455
- export declare const isMessageFunction: <T>(val: unknown) => val is MessageFunction<T>;
456
-
457
- export declare type IsNever<T> = [T] extends [never] ? true : false;
458
-
459
- export declare type IsObject<T> = IsTuple<T> extends true ? false : [T] extends [object] ? true : false;
460
-
461
- export declare type IsRecord<T> = IsTuple<T> extends true ? false : [T] extends [Record<string, any>] ? true : false;
462
-
463
- /* Excluded from this release type: isTranslateFallbackWarn */
464
-
465
- /* Excluded from this release type: isTranslateMissingWarn */
466
-
467
- export declare type IsTuple<T> = IsNever<T> extends true ? false : T extends readonly any[] ? number extends T['length'] ? false : true : false;
468
-
469
- export declare type IsUnion<T, B = T> = T extends B ? [B] extends [T] ? false : true : never;
470
-
471
- export declare type JsonPaths<T, Key extends keyof T = keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}.${JsonPaths<T[Key]>}` : `${Key}` : never;
472
-
473
- export declare type LastInUnion<U> = UnionToIntersection<U extends unknown ? (x: U) => 0 : never> extends (x: infer L) => 0 ? L : never;
474
-
475
- /** @VueI18nGeneral */
476
- export declare type LinkedModifiers<T = string> = {
477
- [key: string]: LinkedModify<T>;
478
- };
479
-
480
- export declare type LinkedModify<T = string> = (value: T, type: string) => MessageType<T>;
481
-
482
- export declare interface LinkedOptions {
483
- /**
484
- * The message type of linked message
485
- */
486
- type?: string;
487
- /**
488
- * The modifier of linked message
489
- */
490
- modifier?: string;
491
- }
492
-
493
- /** @VueI18nGeneral */
494
- export declare type Locale = IsNever<GeneratedLocale> extends true ? string : GeneratedLocale;
495
-
496
- /** @VueI18nGeneral */
497
- export declare interface LocaleDetector<Args extends any[] = any[]> {
498
- (...args: Args): Locale | Promise<Locale>;
499
- resolvedOnce?: boolean;
500
- }
501
-
502
- /**
503
- * The locale fallbacker
504
- *
505
- * @VueI18nGeneral
506
- */
507
- export declare type LocaleFallbacker = <Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale) => Locale[];
508
-
509
- export declare type LocaleMatcher = 'lookup' | 'best fit';
510
-
511
- /** @VueI18nGeneral */
512
- export declare type LocaleMessage<Message = string> = Record<string, LocaleMessageValue<Message>>;
513
-
514
- /** @VueI18nGeneral */
515
- export declare type LocaleMessageDictionary<T, Message = string> = {
516
- [K in keyof T]: LocaleMessageType<T[K], Message>;
517
- };
518
-
519
- /** @VueI18nGeneral */
520
- export declare type LocaleMessages<Schema, Locales = Locale, Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>;
521
-
522
- /** @VueI18nGeneral */
523
- export declare type LocaleMessageType<T, Message = string> = T extends string ? string : T extends () => Promise<infer P> ? LocaleMessageDictionary<P, Message> : T extends (...args: infer Arguments) => any ? (...args: Arguments) => ReturnType<T> : T extends Record<string, unknown> ? LocaleMessageDictionary<T, Message> : T extends Array<T> ? {
524
- [K in keyof T]: T[K];
525
- } : T;
526
-
527
- /** @VueI18nGeneral */
528
- export declare type LocaleMessageValue<Message = string> = LocaleMessageDictionary<any, Message> | string;
529
-
530
- /** @VueI18nGeneral */
531
- export declare interface LocaleOptions<Locales = Locale> {
532
- /**
533
- * @remarks
534
- * The locale of localization
535
- */
536
- locale?: Locales | LocaleDetector;
537
- }
538
-
539
- export declare type LocaleParams<T, Default = 'en-US'> = T extends IsUnion<T> ? {
540
- messages: T;
541
- datetimeFormats: T;
542
- numberFormats: T;
543
- } : T extends {
544
- messages?: infer M;
545
- datetimeFormats?: infer D;
546
- numberFormats?: infer N;
547
- } ? {
548
- messages: LocaleParamsType<M, Default>;
549
- datetimeFormats: LocaleParamsType<D, Default>;
550
- numberFormats: LocaleParamsType<N, Default>;
551
- } : T extends string ? {
552
- messages: T;
553
- datetimeFormats: T;
554
- numberFormats: T;
555
- } : {
556
- messages: Default;
557
- datetimeFormats: Default;
558
- numberFormats: Default;
559
- };
560
-
561
- declare type LocaleParamsType<T, R> = T extends IsUnion<T> ? T : T extends string ? T : R;
562
-
563
- export declare type LocaleRecord<T extends any[], R> = {
564
- [K in T[number]]: R;
565
- };
566
-
567
- /**
568
- * The message compiler
569
- *
570
- * @param message - A resolved message that ususally will be passed the string. if you can transform to it with bundler, will be passed the AST.
571
- * @param context - A message context {@link MessageCompilerContext}
572
- *
573
- * @returns A {@link MessageFunction}
574
- *
575
- * @VueI18nGeneral
576
- */
577
- export declare type MessageCompiler<Message = string, MessageSource = string | ResourceNode> = (message: MessageSource, context: MessageCompilerContext) => MessageFunction<Message>;
578
-
579
- /**
580
- * The context that will pass the message compiler.
581
- *
582
- * @VueI18nGeneral
583
- */
584
- export declare type MessageCompilerContext = Pick<CompileOptions, 'onError' | 'onCacheKey'> & {
585
- /**
586
- * Whether to allow the use locale messages of HTML formatting.
587
- */
588
- warnHtmlMessage?: boolean;
589
- /**
590
- * The resolved locale message key
591
- */
592
- key: string;
593
- /**
594
- * The locale
595
- */
596
- locale: Locale;
597
- };
598
-
599
- /**
600
- * The message context.
601
- *
602
- * @VueI18nGeneral
603
- */
604
- export declare interface MessageContext<T = string> {
605
- /**
606
- * Resolve message value from list.
607
- *
608
- * @param index - An index of message values.
609
- *
610
- * @returns A resolved message value.
611
- *
612
- * @example
613
- * ```js
614
- * const messages = {
615
- * en: {
616
- * greeting: ({ list }) => `hello, ${list(0)}!`
617
- * }
618
- * }
619
- * ```
620
- */
621
- list(index: number): unknown;
622
- /**
623
- * Resolve message value from named.
624
- *
625
- * @param key - A key of message value.
626
- *
627
- * @returns A resolved message value.
628
- *
629
- * @example
630
- * ```js
631
- * const messages = {
632
- * en: {
633
- * greeting: ({ named }) => `hello, ${named('name')}!`
634
- * }
635
- * }
636
- * ```
637
- */
638
- named(key: string): unknown;
639
- /**
640
- * Resolve message with plural index.
641
- *
642
- * @remarks
643
- * That's resolved with plural index with translation function.
644
- *
645
- * @param messages - the messages, that is resolved with plural index with translation function.
646
- *
647
- * @returns A resolved message.
648
- *
649
- * @example
650
- * ```js
651
- * const messages = {
652
- * en: {
653
- * car: ({ plural }) => plural(['car', 'cars']),
654
- * apple: ({ plural, named }) =>
655
- * plural([
656
- * 'no apples',
657
- * 'one apple',
658
- * `${named('count')} apples`
659
- * ])
660
- * }
661
- * }
662
- * ```
663
- */
664
- plural(messages: T[]): T;
665
- /**
666
- * Resolve linked message.
667
- *
668
- * @param key - A message key
669
- * @param modifier - A modifier
670
- *
671
- * @returns A resolve message.
672
- */
673
- linked(key: Path, modifier?: string): MessageType<T>;
674
- /**
675
- * Overloaded `linked`
676
- *
677
- * @param key - A message key
678
- * @param modifier - A modifier
679
- * @param type - A message type
680
- *
681
- * @returns A resolve message.
682
- */
683
- linked(key: Path, modifier?: string, type?: string): MessageType<T>;
684
- /**
685
- * Overloaded `linked`
686
- *
687
- * @param key - A message key
688
- * @param optoins - An {@link LinkedOptions | linked options}
689
- *
690
- * @returns A resolve message.
691
- */
692
- linked(key: Path, optoins?: LinkedOptions): MessageType<T>;
693
- /* Excluded from this release type: message */
694
- /**
695
- * The message type to be handled by the message function.
696
- *
697
- * @remarks
698
- * Usually `text`, you need to return **string** in message function.
699
- */
700
- type: string;
701
- /* Excluded from this release type: interpolate */
702
- /* Excluded from this release type: normalize */
703
- /**
704
- * The message values.
705
- *
706
- * @remarks
707
- * The message values are the argument values passed from translation function, such as `$t`, `t`, or `translate`.
708
- *
709
- * @example
710
- * vue-i18n `$t` (or `t`) case:
711
- * ```html
712
- * <p>{{ $t('greeting', { name: 'DIO' }) }}</p> <!-- `{ name: 'DIO' }` is message values -->
713
- * ```
714
- *
715
- * `@intlify/core` (`@intlify/core-base`) `translate` case:
716
- * ```js
717
- * translate(context, 'foo.bar', ['dio']) // `['dio']` is message values
718
- * ```
719
- */
720
- values: Record<string, unknown>;
721
- }
722
-
723
- export declare interface MessageContextOptions<T = string, N = {}> {
724
- parent?: MessageContext<T>;
725
- locale?: string;
726
- list?: unknown[];
727
- named?: NamedValue<N>;
728
- modifiers?: LinkedModifiers<T>;
729
- pluralIndex?: number;
730
- pluralRules?: PluralizationRules;
731
- messages?: MessageFunctions<T> | MessageResolveFunction<T>;
732
- processor?: MessageProcessor<T>;
733
- }
734
-
735
- /**
736
- * The Message Function.
737
- *
738
- * @param ctx - A {@link MessageContext}
739
- *
740
- * @return A resolved format message, that is string type basically.
741
- *
742
- * @VueI18nGeneral
743
- */
744
- export declare type MessageFunction<T = string> = MessageFunctionCallable | MessageFunctionInternal<T>;
745
-
746
- export declare type MessageFunctionCallable = <T = string>(ctx: MessageContext<T>) => MessageFunctionReturn<T>;
747
-
748
- export declare type MessageFunctionInternal<T = string> = {
749
- (ctx: MessageContext<T>): MessageFunctionReturn<T>;
750
- key?: string;
751
- locale?: string;
752
- source?: string;
753
- };
754
-
755
- /** @VueI18nGeneral */
756
- export declare type MessageFunctionReturn<T = string> = T extends string ? MessageType<T> : MessageType<T>[];
757
-
758
- export declare type MessageFunctions<T = string> = Record<string, MessageFunction<T>>;
759
-
760
- export declare type MessageInterpolate<T = string> = (val: unknown) => MessageType<T>;
761
-
762
- export declare type MessageNormalize<T = string> = (values: MessageType<T>[]) => MessageFunctionReturn<T>;
763
-
764
- export declare interface MessageProcessor<T = string> {
765
- type?: string;
766
- interpolate?: MessageInterpolate<T>;
767
- normalize?: MessageNormalize<T>;
768
- }
769
-
770
- export declare type MessageResolveFunction<T = string> = (key: string, useLinked: boolean) => MessageFunction<T>;
771
-
772
- /** @VueI18nGeneral */
773
- export declare type MessageResolver = (obj: unknown, path: Path) => PathValue;
774
-
775
- export declare type MessageType<T = string> = T extends string ? string : StringConvertable<T>;
776
-
777
- export declare interface MetaInfo {
778
- [field: string]: unknown;
779
- }
780
-
781
- export declare const MISSING_RESOLVE_VALUE = "";
782
-
783
- /** @VueI18nGeneral */
784
- export declare type NamedValue<T = {}> = T & Record<string, unknown>;
785
-
786
- export declare const NOT_RESOLVED = -1;
787
-
788
- /**
789
- * `number` function overloads
790
- */
791
- export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number): string | number | Intl.NumberFormatPart[];
792
-
793
- export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>): string | number | Intl.NumberFormatPart[];
794
-
795
- export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale']): string | number | Intl.NumberFormatPart[];
796
-
797
- export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[];
798
-
799
- export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context['numberFormats']> = PickupFormatKeys<Context['numberFormats']>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context['locale']>, locale: Context['locale'], override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[];
800
-
801
- /* Excluded from this release type: NUMBER_FORMAT_OPTIONS_KEYS */
802
-
803
- export declare type NumberFormat = {
804
- [key: string]: NumberFormatOptions;
805
- };
806
-
807
- export declare type NumberFormatOptions = Intl.NumberFormatOptions | SpecificNumberFormatOptions | CurrencyNumberFormatOptions;
808
-
809
- export declare type NumberFormats<Schema = NumberFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>;
810
-
811
- export declare type NumberFormatToPartsResult = {
812
- [index: number]: FormattedNumberPart;
813
- };
814
-
815
- /**
816
- * # number
817
- *
818
- * ## usages
819
- * // for example `context.numberFormats` below
820
- * 'en-US': {
821
- * 'currency': {
822
- * style: 'currency', currency: 'USD', currencyDisplay: 'symbol'
823
- * }
824
- * },
825
- * 'ja-JP: { ... }
826
- *
827
- * // value only
828
- * number(context, value)
829
- *
830
- * // key argument
831
- * number(context, value, 'currency')
832
- *
833
- * // key & locale argument
834
- * number(context, value, 'currency', 'ja-JP')
835
- *
836
- * // object sytle argument
837
- * number(context, value, { key: 'currency', locale: 'ja-JP' })
838
- *
839
- * // suppress localize miss warning option, override context.missingWarn
840
- * number(context, value, { key: 'currency', locale: 'ja-JP', missingWarn: false })
841
- *
842
- * // suppress localize fallback warning option, override context.fallbackWarn
843
- * number(context, value, { key: 'currency', locale: 'ja-JP', fallbackWarn: false })
844
- *
845
- * // if you specify `part` options, you can get an array of objects containing the formatted number in parts
846
- * number(context, value, { key: 'currenty', part: true })
847
- *
848
- * // orverride context.numberFormats[locale] options with functino options
849
- * number(cnotext, value, 'currency', { year: '2-digit' })
850
- * number(cnotext, value, 'currency', 'ja-JP', { year: '2-digit' })
851
- * number(context, value, { key: 'currenty', locale: 'ja-JP', part: true, year: '2-digit'})
852
- */
853
- /**
854
- * Number Options
855
- *
856
- * @remarks
857
- * Options for Number formatting API
858
- *
859
- * @VueI18nGeneral
860
- */
861
- export declare interface NumberOptions<Key = string, Locales = Locale> extends Intl.NumberFormatOptions, LocaleOptions<Locales> {
862
- /**
863
- * @remarks
864
- * The target format key
865
- */
866
- key?: Key;
867
- /**
868
- * @remarks
869
- * Whether suppress warnings outputted when localization fails
870
- */
871
- missingWarn?: boolean;
872
- /**
873
- * @remarks
874
- * Whether do resolve on format keys when your language lacks a formatting for a key
875
- */
876
- fallbackWarn?: boolean;
877
- /**
878
- * @remarks
879
- * Whether to use [Intel.NumberFormat#formatToParts](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/formatToParts)
880
- */
881
- part?: boolean;
882
- }
883
-
884
- /**
885
- * Parse a string path into an array of segments
886
- */
887
- export declare function parse(path: Path): string[] | undefined;
888
-
889
- /* Excluded from this release type: parseDateTimeArgs */
890
-
891
- /* Excluded from this release type: parseNumberArgs */
892
-
893
- /* Excluded from this release type: parseTranslateArgs */
894
-
895
- /** @VueI18nGeneral */
896
- export declare type Path = string;
897
-
898
- /** @VueI18nGeneral */
899
- export declare type PathValue = string | number | boolean | Function | null | {
900
- [key: string]: PathValue;
901
- } | PathValue[];
902
-
903
- export declare type PickupFallbackLocales<T extends any[]> = T[number] | `${T[number]}!`;
904
-
905
- export declare type PickupFormatKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourceFormatPath<T[K]> : never;
906
-
907
- export declare type PickupFormatPathKeys<T extends object> = ResourceFormatPath<T>;
908
-
909
- export declare type PickupKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourcePath<T[K]> : never;
910
-
911
- export declare type PickupLocales<T extends Record<string, any>, K = keyof T> = K extends string ? K : never;
912
-
913
- export declare type PickupPaths<T extends object> = ResourcePath<T>;
914
-
915
- export declare type PluralizationProps = {
916
- n?: number;
917
- count?: number;
918
- };
919
-
920
- export declare type PluralizationRule = (choice: number, choicesLength: number, orgRule?: PluralizationRule) => number;
921
-
922
- /** @VueI18nGeneral */
923
- export declare type PluralizationRules = {
924
- [locale: string]: PluralizationRule;
925
- };
926
-
927
- /** @VueI18nGeneral */
928
- export declare type PostTranslationHandler<Message = string> = (translated: MessageFunctionReturn<Message>, key: string) => MessageFunctionReturn<Message>;
929
-
930
- /**
931
- * Register the locale fallbacker
932
- *
933
- * @param fallbacker - A {@link LocaleFallbacker} function
934
- *
935
- * @VueI18nGeneral
936
- */
937
- export declare function registerLocaleFallbacker(fallbacker: LocaleFallbacker): void;
938
-
939
- export declare function registerMessageCompiler<Message>(compiler: MessageCompiler<Message, string | ResourceNode>): void;
940
-
941
- /**
942
- * Register the message resolver
943
- *
944
- * @param resolver - A {@link MessageResolver} function
945
- *
946
- * @VueI18nGeneral
947
- */
948
- export declare function registerMessageResolver(resolver: MessageResolver): void;
949
-
950
- export declare type RemovedIndexResources<T> = RemoveIndexSignature<{
951
- [K in keyof T]: T[K];
952
- }>;
953
-
954
- export declare type RemoveIndexSignature<T> = {
955
- [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K];
956
- };
957
-
958
- /* Excluded from this release type: resolveLocale */
959
-
960
- /**
961
- * message resolver
962
- *
963
- * @remarks
964
- * Resolves messages. messages with a hierarchical structure such as objects can be resolved. This resolver is used in VueI18n as default.
965
- *
966
- * @param obj - A target object to be resolved with path
967
- * @param path - A {@link Path | path} to resolve the value of message
968
- *
969
- * @returns A resolved {@link PathValue | path value}
970
- *
971
- * @VueI18nGeneral
972
- */
973
- export declare function resolveValue(obj: unknown, path: Path): PathValue;
974
-
975
- /**
976
- * key-value message resolver
977
- *
978
- * @remarks
979
- * Resolves messages with the key-value structure. Note that messages with a hierarchical structure such as objects cannot be resolved
980
- *
981
- * @param obj - A target object to be resolved with path
982
- * @param path - A {@link Path | path} to resolve the value of message
983
- *
984
- * @returns A resolved {@link PathValue | path value}
985
- *
986
- * @VueI18nGeneral
987
- */
988
- export declare function resolveWithKeyValue(obj: unknown, path: Path): PathValue;
989
-
990
- export declare type ResourceFormatPath<T> = _ResourceFormatPath<T> extends string | keyof T ? _ResourceFormatPath<T> : keyof T;
991
-
992
- declare type _ResourceFormatPath<T> = __ResourceFormatPath<T, keyof T> | keyof T;
993
- export { ResourceNode }
994
-
995
- export declare type ResourcePath<T> = _ResourcePath<T> extends string | keyof T ? _ResourcePath<T> : keyof T;
996
-
997
- export declare type _ResourcePath<T> = __ResourcePath<T, keyof T> | keyof T;
998
-
999
- export declare type ResourceValue<T, P extends ResourcePath<T>> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? Rest extends ResourcePath<T[Key]> ? ResourceValue<T[Key], Rest> : never : never : P extends keyof T ? T[P] : never;
1000
-
1001
- export declare type SchemaParams<T, Message = string> = T extends readonly any[] ? {
1002
- message: First<T>;
1003
- datetime: DateTimeFormat;
1004
- number: NumberFormat;
1005
- } : T extends {
1006
- message?: infer M;
1007
- datetime?: infer D;
1008
- number?: infer N;
1009
- } ? {
1010
- message: M extends LocaleMessage<Message> ? M : LocaleMessage<Message>;
1011
- datetime: D extends DateTimeFormat ? D : DateTimeFormat;
1012
- number: N extends NumberFormat ? N : NumberFormat;
1013
- } : {
1014
- message: LocaleMessage<Message>;
1015
- datetime: DateTimeFormat;
1016
- number: NumberFormat;
1017
- };
1018
-
1019
- export declare const setAdditionalMeta: (meta: MetaInfo | null) => void;
1020
-
1021
- export declare function setDevToolsHook(hook: IntlifyDevToolsEmitter | null): void;
1022
-
1023
- export declare const setFallbackContext: (context: CoreContext | null) => void;
1024
-
1025
- /**
1026
- * @version 12.0.0
1027
- */
1028
- export declare function setLocaleMessage<Context extends CoreContext, Locales = keyof Context['messages']>(ctx: Context, locale: Locales, messages: Context['messages'][keyof Context['messages']]): void;
1029
-
1030
- export declare interface SpecificDateTimeFormatOptions extends Intl.DateTimeFormatOptions {
1031
- year?: DateTimeDigital;
1032
- month?: DateTimeDigital | DateTimeHumanReadable;
1033
- day?: DateTimeDigital;
1034
- hour?: DateTimeDigital;
1035
- minute?: DateTimeDigital;
1036
- second?: DateTimeDigital;
1037
- weekday?: DateTimeHumanReadable;
1038
- era?: DateTimeHumanReadable;
1039
- timeZoneName?: 'long' | 'short';
1040
- localeMatcher?: LocaleMatcher;
1041
- formatMatcher?: FormatMatcher;
1042
- }
1043
-
1044
- export declare interface SpecificNumberFormatOptions extends Intl.NumberFormatOptions {
1045
- style?: 'decimal' | 'percent';
1046
- currency?: string;
1047
- currencyDisplay?: CurrencyDisplay;
1048
- localeMatcher?: LocaleMatcher;
1049
- formatMatcher?: FormatMatcher;
1050
- }
1051
-
1052
- /**
1053
- * weather the type `T` is able to convert to string with `toString` method
1054
- */
1055
- export declare type StringConvertable<T, Extracted = ExtractToStringKey<T>> = IsNever<Extracted> extends true ? T extends boolean ? T : T extends Function ? T : IsObject<T> extends true ? T : unknown : T;
1056
-
1057
- /**
1058
- * TODO:
1059
- * this type should be used (refactored) at `translate` type definition
1060
- * (Unfortunately, using this type will result in key completion failure due to type mismatch...)
1061
- */
1062
- /**
1063
- * `translate` function overloads
1064
- */
1065
- export declare function translate<Context extends CoreContext<Message>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1066
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1067
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageFunctionReturn<Message> | number;
1068
-
1069
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1070
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1071
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>): MessageFunctionReturn<Message> | number;
1072
-
1073
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1074
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1075
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageFunctionReturn<Message> | number;
1076
-
1077
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1078
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1079
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
1080
-
1081
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1082
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1083
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string): MessageFunctionReturn<Message> | number;
1084
-
1085
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1086
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1087
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
1088
-
1089
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1090
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1091
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[]): MessageFunctionReturn<Message> | number;
1092
-
1093
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1094
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1095
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], plural: number): MessageFunctionReturn<Message> | number;
1096
-
1097
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1098
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1099
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], defaultMsg: string): MessageFunctionReturn<Message> | number;
1100
-
1101
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1102
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1103
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
1104
-
1105
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1106
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1107
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue): MessageFunctionReturn<Message> | number;
1108
-
1109
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1110
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1111
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, plural: number): MessageFunctionReturn<Message> | number;
1112
-
1113
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1114
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1115
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, defaultMsg: string): MessageFunctionReturn<Message> | number;
1116
-
1117
- export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{
1118
- [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K];
1119
- }> : never, ContextMessages = IsEmptyObject<Context['messages']> extends false ? PickupKeys<Context['messages']> : never, ResourceKeys extends CoreMessages | ContextMessages = IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
1120
-
1121
- export declare const translateDevTools: ReturnType<typeof createDevToolsHook>;
1122
-
1123
- /**
1124
- * # translate
1125
- *
1126
- * ## usages:
1127
- * // for example, locale messages key
1128
- * { 'foo.bar': 'hi {0} !' or 'hi {name} !' }
1129
- *
1130
- * // no argument, context & path only
1131
- * translate(context, 'foo.bar')
1132
- *
1133
- * // list argument
1134
- * translate(context, 'foo.bar', ['kazupon'])
1135
- *
1136
- * // named argument
1137
- * translate(context, 'foo.bar', { name: 'kazupon' })
1138
- *
1139
- * // plural choice number
1140
- * translate(context, 'foo.bar', 2)
1141
- *
1142
- * // plural choice number with name argument
1143
- * translate(context, 'foo.bar', { name: 'kazupon' }, 2)
1144
- *
1145
- * // default message argument
1146
- * translate(context, 'foo.bar', 'this is default message')
1147
- *
1148
- * // default message with named argument
1149
- * translate(context, 'foo.bar', { name: 'kazupon' }, 'Hello {name} !')
1150
- *
1151
- * // use key as default message
1152
- * translate(context, 'hi {0} !', ['kazupon'], { default: true })
1153
- *
1154
- * // locale option, override context.locale
1155
- * translate(context, 'foo.bar', { name: 'kazupon' }, { locale: 'ja' })
1156
- *
1157
- * // suppress localize miss warning option, override context.missingWarn
1158
- * translate(context, 'foo.bar', { name: 'kazupon' }, { missingWarn: false })
1159
- *
1160
- * // suppress localize fallback warning option, override context.fallbackWarn
1161
- * translate(context, 'foo.bar', { name: 'kazupon' }, { fallbackWarn: false })
1162
- *
1163
- * // escape parameter option, override context.escapeParameter
1164
- * translate(context, 'foo.bar', { name: 'kazupon' }, { escapeParameter: true })
1165
- */
1166
- /**
1167
- * Translate Options
1168
- *
1169
- * @remarks
1170
- * Options for Translation API
1171
- *
1172
- * @VueI18nGeneral
1173
- */
1174
- export declare interface TranslateOptions<Locales = Locale> extends LocaleOptions<Locales> {
1175
- /**
1176
- * @remarks
1177
- * List interpolation
1178
- */
1179
- list?: unknown[];
1180
- /**
1181
- * @remarks
1182
- * Named interpolation
1183
- */
1184
- named?: NamedValue;
1185
- /**
1186
- * @remarks
1187
- * Plulralzation choice number
1188
- */
1189
- plural?: number;
1190
- /**
1191
- * @remarks
1192
- * Default message when is occurred translation missing
1193
- */
1194
- default?: string | boolean;
1195
- /**
1196
- * @remarks
1197
- * Whether suppress warnings outputted when localization fails
1198
- */
1199
- missingWarn?: boolean;
1200
- /**
1201
- * @remarks
1202
- * Whether do template interpolation on translation keys when your language lacks a translation for a key
1203
- */
1204
- fallbackWarn?: boolean;
1205
- /**
1206
- * @remarks
1207
- * Whether do escape parameter for list or named interpolation values
1208
- */
1209
- escapeParameter?: boolean;
1210
- /**
1211
- * @remarks
1212
- * Whether the message has been resolved
1213
- */
1214
- resolvedMessage?: boolean;
1215
- }
1216
-
1217
- export declare type TranslationsPaths<T extends object, K extends keyof T = keyof T> = K extends string ? JsonPaths<T[K]> : never;
1218
-
1219
- export declare type UnionToIntersection<U> = (U extends any ? (arg: U) => void : never) extends (arg: infer I) => void ? I : never;
1220
-
1221
- export declare type UnionToTuple<U, Last = LastInUnion<U>> = [U] extends [never] ? [] : [...UnionToTuple<Exclude<U, Last>>, Last];
1222
-
1223
- /* Excluded from this release type: updateFallbackLocale */
1224
-
1225
- /* Excluded from this release type: VERSION */
1226
-
1227
- export { }
1
+ import { CompileError, CompileErrorCodes, CompileOptions, ResourceNode, ResourceNode as ResourceNode$1, createCompileError } from "@intlify/message-compiler";
2
+ import { VueDevToolsEmitter } from "@intlify/devtools-types";
3
+ import { BaseError } from "@intlify/shared";
4
+
5
+ //#region temp/packages/core-base/src/resolver.d.ts
6
+ /** @VueI18nGeneral */
7
+ type Path = string;
8
+ /**
9
+ * Parse a string path into an array of segments
10
+ */
11
+ declare function parse(path: Path): string[] | undefined;
12
+ /** @VueI18nGeneral */
13
+ type PathValue = string | number | boolean | Function | null | {
14
+ [key: string]: PathValue;
15
+ } | PathValue[];
16
+ /** @VueI18nGeneral */
17
+ type MessageResolver = (obj: unknown, path: Path) => PathValue;
18
+ /**
19
+ * key-value message resolver
20
+ *
21
+ * @remarks
22
+ * Resolves messages with the key-value structure. Note that messages with a hierarchical structure such as objects cannot be resolved
23
+ *
24
+ * @param obj - A target object to be resolved with path
25
+ * @param path - A {@link Path | path} to resolve the value of message
26
+ *
27
+ * @returns A resolved {@link PathValue | path value}
28
+ *
29
+ * @VueI18nGeneral
30
+ */
31
+ declare function resolveWithKeyValue(obj: unknown, path: Path): PathValue;
32
+ /**
33
+ * message resolver
34
+ *
35
+ * @remarks
36
+ * Resolves messages. messages with a hierarchical structure such as objects can be resolved. This resolver is used in VueI18n as default.
37
+ *
38
+ * @param obj - A target object to be resolved with path
39
+ * @param path - A {@link Path | path} to resolve the value of message
40
+ *
41
+ * @returns A resolved {@link PathValue | path value}
42
+ *
43
+ * @VueI18nGeneral
44
+ */
45
+ declare function resolveValue(obj: unknown, path: Path): PathValue;
46
+ //#endregion
47
+ //#region temp/packages/core-base/src/fallbacker.d.ts
48
+ /** @VueI18nGeneral */
49
+ interface LocaleOptions<Locales = Locale> {
50
+ /**
51
+ * @remarks
52
+ * The locale of localization
53
+ */
54
+ locale?: Locales | LocaleDetector;
55
+ }
56
+ /**
57
+ * The locale fallbacker
58
+ *
59
+ * @VueI18nGeneral
60
+ */
61
+ type LocaleFallbacker = <Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale) => Locale[];
62
+ /**
63
+ * Fallback with simple implemenation
64
+ *
65
+ * @remarks
66
+ * A fallback locale function implemented with a simple fallback algorithm.
67
+ *
68
+ * Basically, it returns the value as specified in the `fallbackLocale` props, and is processed with the fallback inside intlify.
69
+ *
70
+ * @param ctx - A {@link CoreContext | context}
71
+ * @param fallback - A {@link FallbackLocale | fallback locale}
72
+ * @param start - A starting {@link Locale | locale}
73
+ *
74
+ * @returns Fallback locales
75
+ *
76
+ * @VueI18nGeneral
77
+ */
78
+ declare function fallbackWithSimple<Message = string>(_ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];
79
+ /**
80
+ * Fallback with locale chain
81
+ *
82
+ * @remarks
83
+ * A fallback locale function implemented with a fallback chain algorithm. It's used in VueI18n as default.
84
+ *
85
+ * @param ctx - A {@link CoreContext | context}
86
+ * @param fallback - A {@link FallbackLocale | fallback locale}
87
+ * @param start - A starting {@link Locale | locale}
88
+ *
89
+ * @returns Fallback locales
90
+ *
91
+ * @VueI18nSee [Fallbacking](../../guide/essentials/fallback)
92
+ *
93
+ * @VueI18nGeneral
94
+ */
95
+ declare function fallbackWithLocaleChain<Message = string>(ctx: CoreContext<Message>, fallback: FallbackLocale, start: Locale): Locale[];
96
+ //#endregion
97
+ //#region temp/packages/core-base/src/context.d.ts
98
+ interface MetaInfo {
99
+ [field: string]: unknown;
100
+ }
101
+ /** @VueI18nGeneral */
102
+ type LocaleMessageValue<Message = string> = LocaleMessageDictionary<any, Message> | string;
103
+ /** @VueI18nGeneral */
104
+ type LocaleMessageType<T, Message = string> = T extends string ? string : T extends (() => Promise<infer P>) ? LocaleMessageDictionary<P, Message> : T extends ((...args: infer Arguments) => any) ? (...args: Arguments) => ReturnType<T> : T extends Record<string, unknown> ? LocaleMessageDictionary<T, Message> : T extends Array<T> ? { [K in keyof T]: T[K] } : T;
105
+ /** @VueI18nGeneral */
106
+ type LocaleMessageDictionary<T, Message = string> = { [K in keyof T]: LocaleMessageType<T[K], Message> };
107
+ /** @VueI18nGeneral */
108
+ type LocaleMessage<Message = string> = Record<string, LocaleMessageValue<Message>>;
109
+ /** @VueI18nGeneral */
110
+ type LocaleMessages<Schema, Locales = Locale, _Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>;
111
+ /**
112
+ * The type definition of Locale Message for `@intlify/core-base` package
113
+ *
114
+ * @remarks
115
+ * The typealias is used to strictly define the type of the Locale message.
116
+ *
117
+ * @example
118
+ * ```ts
119
+ * // type.d.ts (`.d.ts` file at your app)
120
+ * import { DefineCoreLocaleMessage } from '@intlify/core-base'
121
+ *
122
+ * declare module '@intlify/core-base' {
123
+ * export interface DefineCoreLocaleMessage {
124
+ * title: string
125
+ * menu: {
126
+ * login: string
127
+ * }
128
+ * }
129
+ * }
130
+ * ```
131
+ *
132
+ * @VueI18nGeneral
133
+ */
134
+ interface DefineCoreLocaleMessage extends LocaleMessage<string> {}
135
+ type DefaultCoreLocaleMessageSchema<Schema = RemoveIndexSignature<{ [K in keyof DefineCoreLocaleMessage]: DefineCoreLocaleMessage[K] }>> = IsEmptyObject<Schema> extends true ? LocaleMessage<string> : Schema;
136
+ type CoreMissingHandler<Message = string> = (context: CoreContext<Message>, locale: Locale, key: Path, type: CoreMissingType, ...values: unknown[]) => string | void;
137
+ /** @VueI18nGeneral */
138
+ type PostTranslationHandler<Message = string> = (translated: MessageFunctionReturn<Message>, key: string) => MessageFunctionReturn<Message>;
139
+ /**
140
+ * The context that will pass the message compiler.
141
+ *
142
+ * @VueI18nGeneral
143
+ */
144
+ type MessageCompilerContext = Pick<CompileOptions, "onError" | "onCacheKey"> & {
145
+ /**
146
+ * Whether to allow the use locale messages of HTML formatting.
147
+ */
148
+ warnHtmlMessage?: boolean;
149
+ /**
150
+ * The resolved locale message key
151
+ */
152
+ key: string;
153
+ /**
154
+ * The locale
155
+ */
156
+ locale: Locale;
157
+ };
158
+ /**
159
+ * The message compiler
160
+ *
161
+ * @param message - A resolved message that ususally will be passed the string. if you can transform to it with bundler, will be passed the AST.
162
+ * @param context - A message context {@link MessageCompilerContext}
163
+ *
164
+ * @returns A {@link MessageFunction}
165
+ *
166
+ * @VueI18nGeneral
167
+ */
168
+ type MessageCompiler<Message = string, MessageSource = string | ResourceNode$1> = (message: MessageSource, context: MessageCompilerContext) => MessageFunction<Message>;
169
+ interface CoreOptions<Message = string, Schema extends {
170
+ message?: unknown;
171
+ datetime?: unknown;
172
+ number?: unknown;
173
+ } = {
174
+ message: DefaultCoreLocaleMessageSchema;
175
+ datetime: DateTimeFormat;
176
+ number: NumberFormat;
177
+ }, Locales extends {
178
+ messages: unknown;
179
+ datetimeFormats: unknown;
180
+ numberFormats: unknown;
181
+ } | string = Locale, MessagesLocales = (Locales extends {
182
+ messages: infer M;
183
+ } ? M : Locales extends string ? Locales : Locale), DateTimeFormatsLocales = (Locales extends {
184
+ datetimeFormats: infer D;
185
+ } ? D : Locales extends string ? Locales : Locale), NumberFormatsLocales = (Locales extends {
186
+ numberFormats: infer N;
187
+ } ? N : Locales extends string ? Locales : Locale), MessageSchema = (Schema extends {
188
+ message: infer M;
189
+ } ? M : DefaultCoreLocaleMessageSchema), DateTimeSchema = (Schema extends {
190
+ datetime: infer D;
191
+ } ? D : DateTimeFormat), NumberSchema = (Schema extends {
192
+ number: infer N;
193
+ } ? N : NumberFormat), _Messages extends LocaleMessages<MessageSchema, MessagesLocales, Message> = LocaleMessages<MessageSchema, MessagesLocales, Message>, _DateTimeFormats extends DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales> = DateTimeFormats<DateTimeSchema, DateTimeFormatsLocales>, _NumberFormats extends NumberFormats<NumberSchema, NumberFormatsLocales> = NumberFormats<NumberSchema, NumberFormatsLocales>> {
194
+ version?: string;
195
+ locale?: Locale | LocaleDetector;
196
+ fallbackLocale?: FallbackLocale;
197
+ messages?: { [K in keyof _Messages]: MessageSchema };
198
+ datetimeFormats?: { [K in keyof _DateTimeFormats]: DateTimeSchema };
199
+ numberFormats?: { [K in keyof _NumberFormats]: NumberSchema };
200
+ modifiers?: LinkedModifiers<Message>;
201
+ pluralRules?: PluralizationRules;
202
+ missing?: CoreMissingHandler<Message>;
203
+ missingWarn?: boolean | RegExp;
204
+ fallbackWarn?: boolean | RegExp;
205
+ fallbackFormat?: boolean;
206
+ unresolving?: boolean;
207
+ postTranslation?: PostTranslationHandler<Message>;
208
+ processor?: MessageProcessor<Message>;
209
+ warnHtmlMessage?: boolean;
210
+ escapeParameter?: boolean;
211
+ messageCompiler?: MessageCompiler<Message, string | ResourceNode$1>;
212
+ messageResolver?: MessageResolver;
213
+ localeFallbacker?: LocaleFallbacker;
214
+ fallbackContext?: CoreContext<Message, MessagesLocales, DateTimeFormatsLocales, NumberFormatsLocales>;
215
+ onWarn?: (msg: string, err?: Error) => void;
216
+ }
217
+ interface CoreInternalOptions {
218
+ __datetimeFormatters?: Map<string, Intl.DateTimeFormat>;
219
+ __numberFormatters?: Map<string, Intl.NumberFormat>;
220
+ __v_emitter?: VueDevToolsEmitter;
221
+ }
222
+ interface CoreCommonContext<Message = string, Locales = "en-US"> {
223
+ cid: number;
224
+ version: string;
225
+ locale: Locales;
226
+ fallbackLocale: FallbackLocales<Exclude<Locales, LocaleDetector>>;
227
+ missing: CoreMissingHandler<Message> | null;
228
+ missingWarn: boolean | RegExp;
229
+ fallbackWarn: boolean | RegExp;
230
+ fallbackFormat: boolean;
231
+ unresolving: boolean;
232
+ localeFallbacker: LocaleFallbacker;
233
+ onWarn(msg: string, err?: Error): void;
234
+ }
235
+ interface CoreTranslationContext<Messages = {}, Message = string> {
236
+ messages: { [K in keyof Messages]: Messages[K] };
237
+ modifiers: LinkedModifiers<Message>;
238
+ pluralRules?: PluralizationRules;
239
+ postTranslation: PostTranslationHandler<Message> | null;
240
+ processor: MessageProcessor<Message> | null;
241
+ warnHtmlMessage: boolean;
242
+ escapeParameter: boolean;
243
+ messageCompiler: MessageCompiler<Message, string | ResourceNode$1> | null;
244
+ messageResolver: MessageResolver;
245
+ }
246
+ interface CoreDateTimeContext<DateTimeFormats = {}> {
247
+ datetimeFormats: { [K in keyof DateTimeFormats]: DateTimeFormats[K] };
248
+ }
249
+ interface CoreNumberContext<NumberFormats = {}> {
250
+ numberFormats: { [K in keyof NumberFormats]: NumberFormats[K] };
251
+ }
252
+ type CoreContext<Message = string, Messages = {}, DateTimeFormats = {}, NumberFormats = {}, LocaleType = Locale, ResourceLocales = PickupLocales<NonNullable<Messages>> | PickupLocales<NonNullable<DateTimeFormats>> | PickupLocales<NonNullable<NumberFormats>>, Locales = (IsNever<ResourceLocales> extends true ? LocaleType extends LocaleDetector | Locale ? LocaleType : Locale : ResourceLocales)> = CoreCommonContext<Message, Locales> & CoreTranslationContext<NonNullable<Messages>, Message> & CoreDateTimeContext<NonNullable<DateTimeFormats>> & CoreNumberContext<NonNullable<NumberFormats>> & {
253
+ fallbackContext?: CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType, ResourceLocales, Locales>;
254
+ };
255
+ interface CoreInternalContext {
256
+ __datetimeFormatters: Map<string, Intl.DateTimeFormat>;
257
+ __numberFormatters: Map<string, Intl.NumberFormat>;
258
+ __localeChainCache?: Map<Locale, Locale[]>;
259
+ __v_emitter?: VueDevToolsEmitter;
260
+ }
261
+ declare const NOT_RESOLVED = -1;
262
+ declare const DEFAULT_LOCALE = "en-US";
263
+ declare const MISSING_RESOLVE_VALUE = "";
264
+ /**
265
+ * Register the message compiler
266
+ *
267
+ * @param compiler - A {@link MessageCompiler} function
268
+ *
269
+ * @deprecated Use `messageCompiler` option of `createI18n` or `createCoreContext` instead. This function will be removed in v13.
270
+ *
271
+ * @VueI18nGeneral
272
+ */
273
+ declare function registerMessageCompiler<Message>(compiler: MessageCompiler<Message, string | ResourceNode$1>): void;
274
+ /**
275
+ * Register the message resolver
276
+ *
277
+ * @param resolver - A {@link MessageResolver} function
278
+ *
279
+ * @deprecated Use `messageResolver` option of `createI18n` or `createCoreContext` instead. This function will be removed in v13.
280
+ *
281
+ * @VueI18nGeneral
282
+ */
283
+ declare function registerMessageResolver(resolver: MessageResolver): void;
284
+ /**
285
+ * Register the locale fallbacker
286
+ *
287
+ * @param fallbacker - A {@link LocaleFallbacker} function
288
+ *
289
+ * @deprecated Use `localeFallbacker` option of `createI18n` or `createCoreContext` instead. This function will be removed in v13.
290
+ *
291
+ * @VueI18nGeneral
292
+ */
293
+ declare function registerLocaleFallbacker(fallbacker: LocaleFallbacker): void;
294
+ declare const setFallbackContext: (context: CoreContext | null) => void;
295
+ declare const getFallbackContext: () => CoreContext | null;
296
+ declare function createCoreContext<Message = string, Options extends CoreOptions<Message> = CoreOptions<Message>, Messages extends Record<string, any> = (Options["messages"] extends Record<string, any> ? Options["messages"] : {}), DateTimeFormats extends Record<string, any> = (Options["datetimeFormats"] extends Record<string, any> ? Options["datetimeFormats"] : {}), NumberFormats extends Record<string, any> = (Options["numberFormats"] extends Record<string, any> ? Options["numberFormats"] : {}), LocaleType = Locale | LocaleDetector>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType>;
297
+ declare function createCoreContext<Schema = LocaleMessage, Locales = "en-US", Message = string, Options extends CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>> = CoreOptions<Message, SchemaParams<Schema, Message>, LocaleParams<Locales>>, Messages extends Record<string, any> = (NonNullable<Options["messages"]> extends Record<string, any> ? NonNullable<Options["messages"]> : {}), DateTimeFormats extends Record<string, any> = (NonNullable<Options["datetimeFormats"]> extends Record<string, any> ? NonNullable<Options["datetimeFormats"]> : {}), NumberFormats extends Record<string, any> = (NonNullable<Options["numberFormats"]> extends Record<string, any> ? NonNullable<Options["numberFormats"]> : {}), LocaleType = Locale | LocaleDetector>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats, LocaleType>;
298
+ /**
299
+ * @version 12.0.0
300
+ */
301
+ declare function getLocaleMessage<Context extends CoreContext, Locales = keyof Context["messages"], Return = Context["messages"][keyof Context["messages"]]>(ctx: Context, locale: Locales): Return | undefined;
302
+ /**
303
+ * @version 12.0.0
304
+ */
305
+ declare function setLocaleMessage<Context extends CoreContext, Locales = keyof Context["messages"]>(ctx: Context, locale: Locales, messages: Context["messages"][keyof Context["messages"]]): void;
306
+ //#endregion
307
+ //#region temp/packages/core-base/src/types/intl.d.ts
308
+ /**
309
+ * datetime
310
+ */
311
+ type DateTimeHumanReadable = "long" | "short" | "narrow";
312
+ type DateTimeDigital = "numeric" | "2-digit";
313
+ type LocaleMatcher = "lookup" | "best fit";
314
+ type FormatMatcher = "basic" | "best fit";
315
+ interface SpecificDateTimeFormatOptions extends Intl.DateTimeFormatOptions {
316
+ year?: DateTimeDigital;
317
+ month?: DateTimeDigital | DateTimeHumanReadable;
318
+ day?: DateTimeDigital;
319
+ hour?: DateTimeDigital;
320
+ minute?: DateTimeDigital;
321
+ second?: DateTimeDigital;
322
+ weekday?: DateTimeHumanReadable;
323
+ era?: DateTimeHumanReadable;
324
+ timeZoneName?: "long" | "short";
325
+ localeMatcher?: LocaleMatcher;
326
+ formatMatcher?: FormatMatcher;
327
+ }
328
+ type DateTimeFormatOptions = Intl.DateTimeFormatOptions | SpecificDateTimeFormatOptions;
329
+ type DateTimeFormat = {
330
+ [key: string]: DateTimeFormatOptions;
331
+ };
332
+ type DateTimeFormats<Schema = DateTimeFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>;
333
+ /**
334
+ * number
335
+ */
336
+ type CurrencyDisplay = "symbol" | "code" | "name";
337
+ interface SpecificNumberFormatOptions extends Intl.NumberFormatOptions {
338
+ style?: "decimal" | "percent";
339
+ currency?: string;
340
+ currencyDisplay?: CurrencyDisplay;
341
+ localeMatcher?: LocaleMatcher;
342
+ formatMatcher?: FormatMatcher;
343
+ }
344
+ interface CurrencyNumberFormatOptions extends Intl.NumberFormatOptions {
345
+ style: "currency";
346
+ currency: string;
347
+ currencyDisplay?: CurrencyDisplay;
348
+ localeMatcher?: LocaleMatcher;
349
+ formatMatcher?: FormatMatcher;
350
+ }
351
+ type NumberFormatOptions = Intl.NumberFormatOptions | SpecificNumberFormatOptions | CurrencyNumberFormatOptions;
352
+ type NumberFormat = {
353
+ [key: string]: NumberFormatOptions;
354
+ };
355
+ type NumberFormats<Schema = NumberFormat, Locales = Locale> = LocaleRecord<UnionToTuple<Locales>, Schema>;
356
+ type FormattedNumberPartType = "currency" | "decimal" | "fraction" | "group" | "infinity" | "integer" | "literal" | "minusSign" | "nan" | "plusSign" | "percentSign";
357
+ type FormattedNumberPart = {
358
+ type: FormattedNumberPartType;
359
+ value: string;
360
+ };
361
+ type NumberFormatToPartsResult = {
362
+ [index: number]: FormattedNumberPart;
363
+ };
364
+ //#endregion
365
+ //#region temp/packages/core-base/src/types/utils.d.ts
366
+ type IsNever<T> = [T] extends [never] ? true : false;
367
+ type IsUnion<T, B = T> = T extends B ? [B] extends [T] ? false : true : never;
368
+ type IsTuple<T> = IsNever<T> extends true ? false : T extends readonly any[] ? number extends T["length"] ? false : true : false;
369
+ type IsRecord<T> = IsTuple<T> extends true ? false : [T] extends [Record<string, any>] ? true : false;
370
+ type IsObject<T> = IsTuple<T> extends true ? false : [T] extends [object] ? true : false;
371
+ type UnionToIntersection<U> = (U extends any ? (arg: U) => void : never) extends ((arg: infer I) => void) ? I : never;
372
+ type LastInUnion<U> = UnionToIntersection<U extends unknown ? (x: U) => 0 : never> extends ((x: infer L) => 0) ? L : never;
373
+ type UnionToTuple<U, Last = LastInUnion<U>> = [U] extends [never] ? [] : [...UnionToTuple<Exclude<U, Last>>, Last];
374
+ type LocaleRecord<T extends any[], R> = { [K in T[number]]: R };
375
+ type First<T extends readonly any[]> = T[0];
376
+ declare type JsonPaths<T, Key extends keyof T = keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}.${JsonPaths<T[Key]>}` : `${Key}` : never;
377
+ declare type TranslationsPaths<T extends object, K extends keyof T = keyof T> = K extends string ? JsonPaths<T[K]> : never;
378
+ type __ResourcePath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}.${__ResourcePath<T[Key], Exclude<keyof T[Key], keyof any[]>> & string}` | `${Key}.${Exclude<keyof T[Key], keyof any[]> & string}` : never : never;
379
+ type _ResourcePath<T> = __ResourcePath<T, keyof T> | keyof T;
380
+ type ResourcePath<T> = _ResourcePath<T> extends string | keyof T ? _ResourcePath<T> : keyof T;
381
+ type ResourceValue<T, P extends ResourcePath<T>> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? Rest extends ResourcePath<T[Key]> ? ResourceValue<T[Key], Rest> : never : never : P extends keyof T ? T[P] : never;
382
+ type PickupLocales<T extends Record<string, any>, K = keyof T> = K extends string ? K : never;
383
+ type PickupKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourcePath<T[K]> : never;
384
+ type PickupPaths<T extends object> = ResourcePath<T>;
385
+ type __ResourceFormatPath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}` : never : never;
386
+ type _ResourceFormatPath<T> = __ResourceFormatPath<T, keyof T> | keyof T;
387
+ type ResourceFormatPath<T> = _ResourceFormatPath<T> extends string | keyof T ? _ResourceFormatPath<T> : keyof T;
388
+ type PickupFormatKeys<T extends Record<string, any>, K = keyof T> = K extends string ? ResourceFormatPath<T[K]> : never;
389
+ type PickupFormatPathKeys<T extends object> = ResourceFormatPath<T>;
390
+ type PickupFallbackLocales<T extends any[]> = T[number] | `${T[number]}!`;
391
+ type FallbackLocales<Locales = "en-US"> = Locales | Array<Locales> | { [locale in string]: Array<PickupFallbackLocales<UnionToTuple<Locales>>> } | false;
392
+ type LocaleParamsType<T, R> = T extends IsUnion<T> ? T : T extends string ? T : R;
393
+ type SchemaParams<T, Message = string> = T extends readonly any[] ? {
394
+ message: First<T>;
395
+ datetime: DateTimeFormat;
396
+ number: NumberFormat;
397
+ } : T extends {
398
+ message?: infer M;
399
+ datetime?: infer D;
400
+ number?: infer N;
401
+ } ? {
402
+ message: M extends LocaleMessage<Message> ? M : LocaleMessage<Message>;
403
+ datetime: D extends DateTimeFormat ? D : DateTimeFormat;
404
+ number: N extends NumberFormat ? N : NumberFormat;
405
+ } : {
406
+ message: LocaleMessage<Message>;
407
+ datetime: DateTimeFormat;
408
+ number: NumberFormat;
409
+ };
410
+ type LocaleParams<T, Default = "en-US"> = T extends IsUnion<T> ? {
411
+ messages: T;
412
+ datetimeFormats: T;
413
+ numberFormats: T;
414
+ } : T extends {
415
+ messages?: infer M;
416
+ datetimeFormats?: infer D;
417
+ numberFormats?: infer N;
418
+ } ? {
419
+ messages: LocaleParamsType<M, Default>;
420
+ datetimeFormats: LocaleParamsType<D, Default>;
421
+ numberFormats: LocaleParamsType<N, Default>;
422
+ } : T extends string ? {
423
+ messages: T;
424
+ datetimeFormats: T;
425
+ numberFormats: T;
426
+ } : {
427
+ messages: Default;
428
+ datetimeFormats: Default;
429
+ numberFormats: Default;
430
+ };
431
+ type RemoveIndexSignature<T> = { [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K] };
432
+ declare const emptyObjectSymbol: unique symbol;
433
+ type EmptyObject = {
434
+ [emptyObjectSymbol]?: never;
435
+ };
436
+ type IsEmptyObject<T> = T extends {
437
+ [emptyObjectSymbol]?: never;
438
+ } ? true : false;
439
+ type RemovedIndexResources<T> = RemoveIndexSignature<{ [K in keyof T]: T[K] }>;
440
+ type ExtractToStringKey<T> = Extract<keyof T, "toString">;
441
+ /**
442
+ * weather the type `T` is able to convert to string with `toString` method
443
+ */
444
+ type StringConvertable<T, Extracted = ExtractToStringKey<T>> = IsNever<Extracted> extends true ? T extends boolean ? T : T extends Function ? T : IsObject<T> extends true ? T : unknown : T;
445
+ type IsPart<O> = O extends {
446
+ part: infer P;
447
+ } ? P : false;
448
+ //#endregion
449
+ //#region temp/packages/core-base/src/runtime.d.ts
450
+ /**
451
+ *
452
+ * The interface used for narrowing types using generated types.
453
+ *
454
+ * @remarks
455
+ *
456
+ * The type generated by 3rd party (e.g. nuxt/i18n)
457
+ *
458
+ * @example
459
+ * ```ts
460
+ * // generated-i18n-types.d.ts (`.d.ts` file at your app)
461
+ *
462
+ * declare module '@intlify/core-base' {
463
+ * interface GeneratedTypeConfig {
464
+ * locale: "en" | "ja"
465
+ * }
466
+ * }
467
+ * ```
468
+ */
469
+ interface GeneratedTypeConfig {}
470
+ /**
471
+ * Generated locale which resolves to `never` if left unset
472
+ */
473
+ type GeneratedLocale = GeneratedTypeConfig extends Record<"locale", infer CustomLocale> ? CustomLocale : never;
474
+ /** @VueI18nGeneral */
475
+ type Locale = IsNever<GeneratedLocale> extends true ? string : GeneratedLocale;
476
+ /** @VueI18nGeneral */
477
+ interface LocaleDetector<Args extends any[] = any[]> {
478
+ (...args: Args): Locale | Promise<Locale>;
479
+ resolvedOnce?: boolean;
480
+ }
481
+ /** @VueI18nGeneral */
482
+ type FallbackLocale = Locale | Locale[] | { [locale in string]: Locale[] } | false;
483
+ type CoreMissingType = "translate" | "datetime format" | "number format" | "translate exists";
484
+ type MessageType<T = string> = T extends string ? string : StringConvertable<T>;
485
+ /** @VueI18nGeneral */
486
+ type MessageFunctionReturn<T = string> = T extends string ? MessageType<T> : MessageType<T>[];
487
+ type MessageFunctionCallable = <T = string>(ctx: MessageContext<T>) => MessageFunctionReturn<T>;
488
+ type MessageFunctionInternal<T = string> = {
489
+ (ctx: MessageContext<T>): MessageFunctionReturn<T>;
490
+ key?: string;
491
+ locale?: string;
492
+ source?: string;
493
+ };
494
+ /**
495
+ * The Message Function.
496
+ *
497
+ * @param ctx - A {@link MessageContext}
498
+ *
499
+ * @returns A resolved format message, that is string type basically.
500
+ *
501
+ * @VueI18nGeneral
502
+ */
503
+ type MessageFunction<T = string> = MessageFunctionCallable | MessageFunctionInternal<T>;
504
+ type MessageFunctions<T = string> = Record<string, MessageFunction<T>>;
505
+ type MessageResolveFunction<T = string> = (key: string, useLinked: boolean) => MessageFunction<T>;
506
+ type MessageNormalize<T = string> = (values: MessageType<T>[]) => MessageFunctionReturn<T>;
507
+ type MessageInterpolate<T = string> = (val: unknown) => MessageType<T>;
508
+ interface MessageProcessor<T = string> {
509
+ type?: string;
510
+ interpolate?: MessageInterpolate<T>;
511
+ normalize?: MessageNormalize<T>;
512
+ }
513
+ type PluralizationRule = (choice: number, choicesLength: number, orgRule?: PluralizationRule) => number;
514
+ /** @VueI18nGeneral */
515
+ type PluralizationRules = {
516
+ [locale: string]: PluralizationRule;
517
+ };
518
+ type PluralizationProps = {
519
+ n?: number;
520
+ count?: number;
521
+ };
522
+ type LinkedModify<T = string> = (value: T, type: string) => MessageType<T>;
523
+ /** @VueI18nGeneral */
524
+ type LinkedModifiers<T = string> = {
525
+ [key: string]: LinkedModify<T>;
526
+ };
527
+ /** @VueI18nGeneral */
528
+ type NamedValue<T = {}> = T & Record<string, unknown>;
529
+ interface MessageContextOptions<T = string, N = {}> {
530
+ parent?: MessageContext<T>;
531
+ locale?: string;
532
+ list?: unknown[];
533
+ named?: NamedValue<N>;
534
+ modifiers?: LinkedModifiers<T>;
535
+ pluralIndex?: number;
536
+ pluralRules?: PluralizationRules;
537
+ messages?: MessageFunctions<T> | MessageResolveFunction<T>;
538
+ processor?: MessageProcessor<T>;
539
+ }
540
+ interface LinkedOptions {
541
+ /**
542
+ * The message type of linked message
543
+ */
544
+ type?: string;
545
+ /**
546
+ * The modifier of linked message
547
+ */
548
+ modifier?: string;
549
+ }
550
+ /**
551
+ * The message context.
552
+ *
553
+ * @VueI18nGeneral
554
+ */
555
+ interface MessageContext<T = string> {
556
+ /**
557
+ * Resolve message value from list.
558
+ *
559
+ * @param index - An index of message values.
560
+ *
561
+ * @returns A resolved message value.
562
+ *
563
+ * @example
564
+ * ```js
565
+ * const messages = {
566
+ * en: {
567
+ * greeting: ({ list }) => `hello, ${list(0)}!`
568
+ * }
569
+ * }
570
+ * ```
571
+ */
572
+ list(index: number): unknown;
573
+ /**
574
+ * Resolve message value from named.
575
+ *
576
+ * @param key - A key of message value.
577
+ *
578
+ * @returns A resolved message value.
579
+ *
580
+ * @example
581
+ * ```js
582
+ * const messages = {
583
+ * en: {
584
+ * greeting: ({ named }) => `hello, ${named('name')}!`
585
+ * }
586
+ * }
587
+ * ```
588
+ */
589
+ named(key: string): unknown;
590
+ /**
591
+ * Resolve message with plural index.
592
+ *
593
+ * @remarks
594
+ * That's resolved with plural index with translation function.
595
+ *
596
+ * @param messages - the messages, that is resolved with plural index with translation function.
597
+ *
598
+ * @returns A resolved message.
599
+ *
600
+ * @example
601
+ * ```js
602
+ * const messages = {
603
+ * en: {
604
+ * car: ({ plural }) => plural(['car', 'cars']),
605
+ * apple: ({ plural, named }) =>
606
+ * plural([
607
+ * 'no apples',
608
+ * 'one apple',
609
+ * `${named('count')} apples`
610
+ * ])
611
+ * }
612
+ * }
613
+ * ```
614
+ */
615
+ plural(messages: T[]): T;
616
+ /**
617
+ * Resolve linked message.
618
+ *
619
+ * @param key - A message key
620
+ * @param modifier - A modifier
621
+ *
622
+ * @returns A resolve message.
623
+ */
624
+ linked(key: Path, modifier?: string): MessageType<T>;
625
+ /**
626
+ * Overloaded `linked`
627
+ *
628
+ * @param key - A message key
629
+ * @param modifier - A modifier
630
+ * @param type - A message type
631
+ *
632
+ * @returns A resolve message.
633
+ */
634
+ linked(key: Path, modifier?: string, type?: string): MessageType<T>;
635
+ /**
636
+ * Overloaded `linked`
637
+ *
638
+ * @param key - A message key
639
+ * @param options - An {@link LinkedOptions | linked options}
640
+ *
641
+ * @returns A resolve message.
642
+ */
643
+ linked(key: Path, options?: LinkedOptions): MessageType<T>;
644
+ /**
645
+ * The message type to be handled by the message function.
646
+ *
647
+ * @remarks
648
+ * Usually `text`, you need to return **string** in message function.
649
+ */
650
+ type: string;
651
+ /**
652
+ * The message values.
653
+ *
654
+ * @remarks
655
+ * The message values are the argument values passed from translation function, such as `$t`, `t`, or `translate`.
656
+ *
657
+ * @example
658
+ * vue-i18n `$t` (or `t`) case:
659
+ * ```html
660
+ * <p>{{ $t('greeting', { name: 'DIO' }) }}</p> <!-- `{ name: 'DIO' }` is message values -->
661
+ * ```
662
+ *
663
+ * `@intlify/core` (`@intlify/core-base`) `translate` case:
664
+ * ```js
665
+ * translate(context, 'foo.bar', ['dio']) // `['dio']` is message values
666
+ * ```
667
+ */
668
+ values: Record<string, unknown>;
669
+ }
670
+ declare const DEFAULT_MESSAGE_DATA_TYPE = "text";
671
+ declare function createMessageContext<T = string, N = {}>(options?: MessageContextOptions<T, N>): MessageContext<T>;
672
+ //#endregion
673
+ //#region temp/packages/core-base/src/ast.d.ts
674
+ declare function isMessageAST(val: unknown): val is ResourceNode$1;
675
+ declare const AST_NODE_PROPS_KEYS: string[];
676
+ //#endregion
677
+ //#region temp/packages/core-base/src/compilation.d.ts
678
+ declare function clearCompileCache(): void;
679
+ declare function compile<Message = string, MessageSource = string | ResourceNode$1>(message: MessageSource, context: MessageCompilerContext): MessageFunction<Message>;
680
+ //#endregion
681
+ //#region temp/packages/core-base/src/datetime.d.ts
682
+ /**
683
+ * # datetime
684
+ *
685
+ * ## usages:
686
+ * // for example `context.datetimeFormats` below
687
+ * 'en-US': {
688
+ * short: {
689
+ * year: 'numeric', month: '2-digit', day: '2-digit',
690
+ * hour: '2-digit', minute: '2-digit'
691
+ * }
692
+ * },
693
+ * 'ja-JP': { ... }
694
+ *
695
+ * // datetimeable value only
696
+ * datetime(context, value)
697
+ *
698
+ * // key argument
699
+ * datetime(context, value, 'short')
700
+ *
701
+ * // key & locale argument
702
+ * datetime(context, value, 'short', 'ja-JP')
703
+ *
704
+ * // object sytle argument
705
+ * datetime(context, value, { key: 'short', locale: 'ja-JP' })
706
+ *
707
+ * // suppress localize miss warning option, override context.missingWarn
708
+ * datetime(context, value, { key: 'short', locale: 'ja-JP', missingWarn: false })
709
+ *
710
+ * // suppress localize fallback warning option, override context.fallbackWarn
711
+ * datetime(context, value, { key: 'short', locale: 'ja-JP', fallbackWarn: false })
712
+ *
713
+ * // if you specify `part` options, you can get an array of objects containing the formatted datetime in parts
714
+ * datetime(context, value, { key: 'short', part: true })
715
+ *
716
+ * // orverride context.datetimeFormats[locale] options with functino options
717
+ * datetime(cnotext, value, 'short', { year: '2-digit' })
718
+ * datetime(cnotext, value, 'short', 'ja-JP', { year: '2-digit' })
719
+ * datetime(context, value, { key: 'short', part: true, year: '2-digit' })
720
+ */
721
+ /**
722
+ * DateTime options
723
+ *
724
+ * @remarks
725
+ * Options for Datetime formatting API
726
+ *
727
+ * @VueI18nGeneral
728
+ */
729
+ interface DateTimeOptions<Key = string, Locales = Locale> extends Intl.DateTimeFormatOptions, LocaleOptions<Locales> {
730
+ /**
731
+ * @remarks
732
+ * The target format key
733
+ */
734
+ key?: Key;
735
+ /**
736
+ * @remarks
737
+ * Whether suppress warnings outputted when localization fails
738
+ */
739
+ missingWarn?: boolean;
740
+ /**
741
+ * @remarks
742
+ * Whether do resolve on format keys when your language lacks a formatting for a key
743
+ */
744
+ fallbackWarn?: boolean;
745
+ /**
746
+ * @remarks
747
+ * Whether to use [Intel.DateTimeFormat#formatToParts](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts)
748
+ */
749
+ part?: boolean;
750
+ }
751
+ /**
752
+ * `datetime` function overloads
753
+ */
754
+ declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number | string | Date): string | number | Intl.DateTimeFormatPart[];
755
+ declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["datetimeFormats"]> = PickupFormatKeys<Context["datetimeFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context["locale"]>): string | number | Intl.DateTimeFormatPart[];
756
+ declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["datetimeFormats"]> = PickupFormatKeys<Context["datetimeFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context["locale"]>, locale: Context["locale"]): string | number | Intl.DateTimeFormatPart[];
757
+ declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["datetimeFormats"]> = PickupFormatKeys<Context["datetimeFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context["locale"]>, override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[];
758
+ declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Value extends number | string | Date = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["datetimeFormats"]> = PickupFormatKeys<Context["datetimeFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | DateTimeOptions<Key | ResourceKeys, Context["locale"]>, locale: Context["locale"], override: Intl.DateTimeFormatOptions): string | number | Intl.DateTimeFormatPart[];
759
+ //#endregion
760
+ //#region temp/packages/core-base/src/errors.d.ts
761
+ interface CoreError extends BaseError {}
762
+ declare const CoreErrorCodes: {
763
+ readonly INVALID_ARGUMENT: number;
764
+ readonly INVALID_DATE_ARGUMENT: 18;
765
+ readonly INVALID_ISO_DATE_ARGUMENT: 19;
766
+ readonly NOT_SUPPORT_NON_STRING_MESSAGE: 20;
767
+ readonly NOT_SUPPORT_LOCALE_PROMISE_VALUE: 21;
768
+ readonly NOT_SUPPORT_LOCALE_ASYNC_FUNCTION: 22;
769
+ readonly NOT_SUPPORT_LOCALE_TYPE: 23;
770
+ };
771
+ declare const CORE_ERROR_CODES_EXTEND_POINT = 24;
772
+ type CoreErrorCodes = (typeof CoreErrorCodes)[keyof typeof CoreErrorCodes];
773
+ declare function createCoreError(code: CoreErrorCodes): CoreError;
774
+ //#endregion
775
+ //#region temp/packages/core-base/src/number.d.ts
776
+ /**
777
+ * # number
778
+ *
779
+ * ## usages
780
+ * // for example `context.numberFormats` below
781
+ * 'en-US': {
782
+ * 'currency': {
783
+ * style: 'currency', currency: 'USD', currencyDisplay: 'symbol'
784
+ * }
785
+ * },
786
+ * 'ja-JP: { ... }
787
+ *
788
+ * // value only
789
+ * number(context, value)
790
+ *
791
+ * // key argument
792
+ * number(context, value, 'currency')
793
+ *
794
+ * // key & locale argument
795
+ * number(context, value, 'currency', 'ja-JP')
796
+ *
797
+ * // object sytle argument
798
+ * number(context, value, { key: 'currency', locale: 'ja-JP' })
799
+ *
800
+ * // suppress localize miss warning option, override context.missingWarn
801
+ * number(context, value, { key: 'currency', locale: 'ja-JP', missingWarn: false })
802
+ *
803
+ * // suppress localize fallback warning option, override context.fallbackWarn
804
+ * number(context, value, { key: 'currency', locale: 'ja-JP', fallbackWarn: false })
805
+ *
806
+ * // if you specify `part` options, you can get an array of objects containing the formatted number in parts
807
+ * number(context, value, { key: 'currenty', part: true })
808
+ *
809
+ * // orverride context.numberFormats[locale] options with functino options
810
+ * number(cnotext, value, 'currency', { year: '2-digit' })
811
+ * number(cnotext, value, 'currency', 'ja-JP', { year: '2-digit' })
812
+ * number(context, value, { key: 'currenty', locale: 'ja-JP', part: true, year: '2-digit'})
813
+ */
814
+ /**
815
+ * Number Options
816
+ *
817
+ * @remarks
818
+ * Options for Number formatting API
819
+ *
820
+ * @VueI18nGeneral
821
+ */
822
+ interface NumberOptions<Key = string, Locales = Locale> extends Intl.NumberFormatOptions, LocaleOptions<Locales> {
823
+ /**
824
+ * @remarks
825
+ * The target format key
826
+ */
827
+ key?: Key;
828
+ /**
829
+ * @remarks
830
+ * Whether suppress warnings outputted when localization fails
831
+ */
832
+ missingWarn?: boolean;
833
+ /**
834
+ * @remarks
835
+ * Whether do resolve on format keys when your language lacks a formatting for a key
836
+ */
837
+ fallbackWarn?: boolean;
838
+ /**
839
+ * @remarks
840
+ * Whether to use [Intel.NumberFormat#formatToParts](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/formatToParts)
841
+ */
842
+ part?: boolean;
843
+ }
844
+ /**
845
+ * `number` function overloads
846
+ */
847
+ declare function number<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number): string | number | Intl.NumberFormatPart[];
848
+ declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["numberFormats"]> = PickupFormatKeys<Context["numberFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context["locale"]>): string | number | Intl.NumberFormatPart[];
849
+ declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["numberFormats"]> = PickupFormatKeys<Context["numberFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context["locale"]>, locale: Context["locale"]): string | number | Intl.NumberFormatPart[];
850
+ declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["numberFormats"]> = PickupFormatKeys<Context["numberFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context["locale"]>, override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[];
851
+ declare function number<Context extends CoreContext<Message, {}, {}, {}>, Value extends number = number, Key extends string = string, ResourceKeys extends PickupFormatKeys<Context["numberFormats"]> = PickupFormatKeys<Context["numberFormats"]>, Message = string>(context: Context, value: Value, keyOrOptions: Key | ResourceKeys | NumberOptions<Key | ResourceKeys, Context["locale"]>, locale: Context["locale"], override: Intl.NumberFormatOptions): string | number | Intl.NumberFormatPart[];
852
+ //#endregion
853
+ //#region temp/packages/core-base/src/translate.d.ts
854
+ declare const isMessageFunction: <T>(val: unknown) => val is MessageFunction<T>;
855
+ /**
856
+ * # translate
857
+ *
858
+ * ## usages:
859
+ * // for example, locale messages key
860
+ * { 'foo.bar': 'hi {0} !' or 'hi {name} !' }
861
+ *
862
+ * // no argument, context & path only
863
+ * translate(context, 'foo.bar')
864
+ *
865
+ * // list argument
866
+ * translate(context, 'foo.bar', ['kazupon'])
867
+ *
868
+ * // named argument
869
+ * translate(context, 'foo.bar', { name: 'kazupon' })
870
+ *
871
+ * // plural choice number
872
+ * translate(context, 'foo.bar', 2)
873
+ *
874
+ * // plural choice number with name argument
875
+ * translate(context, 'foo.bar', { name: 'kazupon' }, 2)
876
+ *
877
+ * // default message argument
878
+ * translate(context, 'foo.bar', 'this is default message')
879
+ *
880
+ * // default message with named argument
881
+ * translate(context, 'foo.bar', { name: 'kazupon' }, 'Hello {name} !')
882
+ *
883
+ * // use key as default message
884
+ * translate(context, 'hi {0} !', ['kazupon'], { default: true })
885
+ *
886
+ * // locale option, override context.locale
887
+ * translate(context, 'foo.bar', { name: 'kazupon' }, { locale: 'ja' })
888
+ *
889
+ * // suppress localize miss warning option, override context.missingWarn
890
+ * translate(context, 'foo.bar', { name: 'kazupon' }, { missingWarn: false })
891
+ *
892
+ * // suppress localize fallback warning option, override context.fallbackWarn
893
+ * translate(context, 'foo.bar', { name: 'kazupon' }, { fallbackWarn: false })
894
+ *
895
+ * // escape parameter option, override context.escapeParameter
896
+ * translate(context, 'foo.bar', { name: 'kazupon' }, { escapeParameter: true })
897
+ */
898
+ /**
899
+ * Translate Options
900
+ *
901
+ * @remarks
902
+ * Options for Translation API
903
+ *
904
+ * @VueI18nGeneral
905
+ */
906
+ interface TranslateOptions<Locales = Locale> extends LocaleOptions<Locales> {
907
+ /**
908
+ * @remarks
909
+ * List interpolation
910
+ */
911
+ list?: unknown[];
912
+ /**
913
+ * @remarks
914
+ * Named interpolation
915
+ */
916
+ named?: NamedValue;
917
+ /**
918
+ * @remarks
919
+ * Plulralzation choice number
920
+ */
921
+ plural?: number;
922
+ /**
923
+ * @remarks
924
+ * Default message when is occurred translation missing
925
+ */
926
+ default?: string | boolean;
927
+ /**
928
+ * @remarks
929
+ * Whether suppress warnings outputted when localization fails
930
+ */
931
+ missingWarn?: boolean;
932
+ /**
933
+ * @remarks
934
+ * Whether do template interpolation on translation keys when your language lacks a translation for a key
935
+ */
936
+ fallbackWarn?: boolean;
937
+ /**
938
+ * @remarks
939
+ * Whether to escape parameters for list or named interpolation values.
940
+ * When enabled, this option:
941
+ * - Escapes HTML special characters (`<`, `>`, `"`, `'`, `&`, `/`, `=`) in interpolation parameters
942
+ * - Sanitizes the final translated HTML to prevent XSS attacks by:
943
+ * - Escaping dangerous characters in HTML attribute values
944
+ * - Neutralizing event handler attributes (onclick, onerror, etc.)
945
+ * - Disabling javascript: URLs in href, src, action, formaction, and style attributes
946
+ *
947
+ * @defaultValue false
948
+ * @see [HTML Message - Using the escapeParameter option](https://vue-i18n.intlify.dev/guide/essentials/syntax.html#using-the-escapeparameter-option)
949
+ */
950
+ escapeParameter?: boolean;
951
+ /**
952
+ * @remarks
953
+ * Whether the message has been resolved
954
+ */
955
+ resolvedMessage?: boolean;
956
+ }
957
+ /**
958
+ * TODO:
959
+ * this type should be used (refactored) at `translate` type definition
960
+ * (Unfortunately, using this type will result in key completion failure due to type mismatch...)
961
+ */
962
+ /**
963
+ * `translate` function overloads
964
+ */
965
+ declare function translate<Context extends CoreContext<Message>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageFunctionReturn<Message> | number;
966
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>): MessageFunctionReturn<Message> | number;
967
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageFunctionReturn<Message> | number;
968
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number, options: TranslateOptions<Context["locale"]>): MessageFunctionReturn<Message> | number;
969
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string): MessageFunctionReturn<Message> | number;
970
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string, options: TranslateOptions<Context["locale"]>): MessageFunctionReturn<Message> | number;
971
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[]): MessageFunctionReturn<Message> | number;
972
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], plural: number): MessageFunctionReturn<Message> | number;
973
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], defaultMsg: string): MessageFunctionReturn<Message> | number;
974
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], options: TranslateOptions<Context["locale"]>): MessageFunctionReturn<Message> | number;
975
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue): MessageFunctionReturn<Message> | number;
976
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, plural: number): MessageFunctionReturn<Message> | number;
977
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, defaultMsg: string): MessageFunctionReturn<Message> | number;
978
+ declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, DefinedLocaleMessage extends RemovedIndexResources<DefineCoreLocaleMessage> = RemovedIndexResources<DefineCoreLocaleMessage>, CoreMessages = (IsEmptyObject<DefinedLocaleMessage> extends false ? PickupPaths<{ [K in keyof DefinedLocaleMessage]: DefinedLocaleMessage[K] }> : never), ContextMessages = (IsEmptyObject<Context["messages"]> extends false ? PickupKeys<Context["messages"]> : never), ResourceKeys extends CoreMessages | ContextMessages = (IsNever<CoreMessages> extends false ? IsNever<ContextMessages> extends false ? CoreMessages | ContextMessages : CoreMessages : IsNever<ContextMessages> extends false ? ContextMessages : never), Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, options: TranslateOptions<Context["locale"]>): MessageFunctionReturn<Message> | number;
979
+ //#endregion
980
+ //#region temp/packages/core-base/src/warnings.d.ts
981
+ declare const CoreWarnCodes: {
982
+ readonly NOT_FOUND_KEY: 1;
983
+ readonly FALLBACK_TO_TRANSLATE: 2;
984
+ readonly CANNOT_FORMAT_NUMBER: 3;
985
+ readonly FALLBACK_TO_NUMBER_FORMAT: 4;
986
+ readonly CANNOT_FORMAT_DATE: 5;
987
+ readonly FALLBACK_TO_DATE_FORMAT: 6;
988
+ readonly EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER: 7;
989
+ readonly INVALID_NUMBER_ARGUMENT: 8;
990
+ readonly INVALID_DATE_ARGUMENT: 9;
991
+ };
992
+ declare const CORE_WARN_CODES_EXTEND_POINT: number;
993
+ type CoreWarnCodes = (typeof CoreWarnCodes)[keyof typeof CoreWarnCodes];
994
+ declare function getWarnMessage(code: CoreWarnCodes, ...args: unknown[]): string;
995
+ //#endregion
996
+ export { AST_NODE_PROPS_KEYS, CORE_ERROR_CODES_EXTEND_POINT, CORE_WARN_CODES_EXTEND_POINT, type CompileError, type CompileErrorCodes, CoreCommonContext, CoreContext, CoreDateTimeContext, type CoreError, type CoreErrorCodes, CoreInternalContext, CoreInternalOptions, CoreMissingHandler, CoreMissingType, CoreNumberContext, CoreOptions, CoreTranslationContext, CoreWarnCodes, CurrencyDisplay, CurrencyNumberFormatOptions, DEFAULT_LOCALE, DEFAULT_MESSAGE_DATA_TYPE, DateTimeDigital, DateTimeFormat, DateTimeFormatOptions, DateTimeFormats, DateTimeHumanReadable, DateTimeOptions, DefaultCoreLocaleMessageSchema, DefineCoreLocaleMessage, EmptyObject, ExtractToStringKey, FallbackLocale, FallbackLocales, First, FormatMatcher, FormattedNumberPart, FormattedNumberPartType, GeneratedLocale, GeneratedTypeConfig, IsEmptyObject, IsNever, IsObject, IsPart, IsRecord, IsTuple, IsUnion, JsonPaths, LastInUnion, LinkedModifiers, LinkedModify, LinkedOptions, Locale, LocaleDetector, LocaleFallbacker, LocaleMatcher, LocaleMessage, LocaleMessageDictionary, LocaleMessageType, LocaleMessageValue, LocaleMessages, LocaleOptions, LocaleParams, LocaleRecord, MISSING_RESOLVE_VALUE, MessageCompiler, MessageCompilerContext, MessageContext, MessageContextOptions, MessageFunction, MessageFunctionCallable, MessageFunctionInternal, MessageFunctionReturn, MessageFunctions, MessageInterpolate, MessageNormalize, MessageProcessor, MessageResolveFunction, MessageResolver, MessageType, MetaInfo, NOT_RESOLVED, NamedValue, NumberFormat, NumberFormatOptions, NumberFormatToPartsResult, NumberFormats, NumberOptions, Path, PathValue, PickupFallbackLocales, PickupFormatKeys, PickupFormatPathKeys, PickupKeys, PickupLocales, PickupPaths, PluralizationProps, PluralizationRule, PluralizationRules, PostTranslationHandler, RemoveIndexSignature, RemovedIndexResources, ResourceFormatPath, type ResourceNode, ResourcePath, ResourceValue, SchemaParams, SpecificDateTimeFormatOptions, SpecificNumberFormatOptions, StringConvertable, TranslateOptions, TranslationsPaths, UnionToIntersection, UnionToTuple, _ResourcePath, __ResourcePath, clearCompileCache, compile, createCompileError, createCoreContext, createCoreError, createMessageContext, datetime, fallbackWithLocaleChain, fallbackWithSimple, getFallbackContext, getLocaleMessage, getWarnMessage, isMessageAST, isMessageFunction, number, parse, registerLocaleFallbacker, registerMessageCompiler, registerMessageResolver, resolveValue, resolveWithKeyValue, setFallbackContext, setLocaleMessage, translate };