@intlify/core-base 9.3.0-beta.9 → 9.3.0

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,3 +1,4 @@
1
+ import type { BaseError } from '@intlify/shared';
1
2
  import { CompileError } from '@intlify/message-compiler';
2
3
  import { CompileErrorCodes } from '@intlify/message-compiler';
3
4
  import type { CompileOptions } from '@intlify/message-compiler';
@@ -5,6 +6,7 @@ import { createCompileError } from '@intlify/message-compiler';
5
6
  import type { IntlifyDevToolsEmitter } from '@intlify/devtools-if';
6
7
  import type { IntlifyDevToolsHookPayloads } from '@intlify/devtools-if';
7
8
  import { IntlifyDevToolsHooks } from '@intlify/devtools-if';
9
+ import { ResourceNode } from '@intlify/message-compiler';
8
10
  import type { VueDevToolsEmitter } from '@intlify/vue-devtools';
9
11
 
10
12
  declare type __ResourceFormatPath<T, Key extends keyof T> = Key extends string ? T[Key] extends Record<string, any> ? `${Key}` : never : never;
@@ -16,10 +18,12 @@ export declare function clearCompileCache(): void;
16
18
  /* Excluded from this release type: clearDateTimeFormat */
17
19
 
18
20
  /* Excluded from this release type: clearNumberFormat */
21
+
22
+ export declare function compile<Message = string, MessageSource = string | ResourceNode>(message: MessageSource, context: MessageCompilerContext): MessageFunction<Message>;
19
23
  export { CompileError }
20
24
  export { CompileErrorCodes }
21
25
 
22
- export declare function compileToFunction<T = string>(source: string, options?: CompileOptions): MessageFunction<T>;
26
+ export declare function compileToFunction<Message = string, MessageSource = string | ResourceNode>(message: MessageSource, context: MessageCompilerContext): MessageFunction<Message>;
23
27
 
24
28
  export declare interface CoreCommonContext<Message = string, Locales = 'en-US'> {
25
29
  cid: number;
@@ -45,18 +49,18 @@ export declare interface CoreDateTimeContext<DateTimeFormats = {}> {
45
49
  };
46
50
  }
47
51
 
48
- export declare interface CoreError extends CompileError {
49
- code: CoreErrorCodes;
52
+ export declare interface CoreError extends BaseError {
50
53
  }
51
54
 
52
55
  export declare const CoreErrorCodes: {
53
- readonly INVALID_ARGUMENT: 15;
56
+ readonly INVALID_ARGUMENT: 17;
54
57
  readonly INVALID_DATE_ARGUMENT: number;
55
58
  readonly INVALID_ISO_DATE_ARGUMENT: number;
59
+ readonly NOT_SUPPORT_NON_STRING_MESSAGE: number;
56
60
  readonly __EXTEND_POINT__: number;
57
61
  };
58
62
 
59
- export declare type CoreErrorCodes = typeof CoreErrorCodes[keyof typeof CoreErrorCodes];
63
+ export declare type CoreErrorCodes = (typeof CoreErrorCodes)[keyof typeof CoreErrorCodes];
60
64
 
61
65
  export declare interface CoreInternalContext {
62
66
  __datetimeFormatters: Map<string, Intl.DateTimeFormat>;
@@ -131,7 +135,7 @@ export declare interface CoreOptions<Message = string, Schema extends {
131
135
  processor?: MessageProcessor<Message>;
132
136
  warnHtmlMessage?: boolean;
133
137
  escapeParameter?: boolean;
134
- messageCompiler?: MessageCompiler<Message>;
138
+ messageCompiler?: MessageCompiler<Message, string | ResourceNode>;
135
139
  messageResolver?: MessageResolver;
136
140
  localeFallbacker?: LocaleFallbacker;
137
141
  fallbackContext?: CoreContext<Message, MessagesLocales, DateTimeFormatsLocales, NumberFormatsLocales>;
@@ -148,7 +152,7 @@ export declare interface CoreTranslationContext<Messages = {}, Message = string>
148
152
  processor: MessageProcessor<Message> | null;
149
153
  warnHtmlMessage: boolean;
150
154
  escapeParameter: boolean;
151
- messageCompiler: MessageCompiler<Message> | null;
155
+ messageCompiler: MessageCompiler<Message, string | ResourceNode> | null;
152
156
  messageResolver: MessageResolver;
153
157
  }
154
158
 
@@ -159,15 +163,16 @@ export declare const CoreWarnCodes: {
159
163
  readonly FALLBACK_TO_NUMBER_FORMAT: 4;
160
164
  readonly CANNOT_FORMAT_DATE: 5;
161
165
  readonly FALLBACK_TO_DATE_FORMAT: 6;
162
- readonly __EXTEND_POINT__: 7;
166
+ readonly EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER: 7;
167
+ readonly __EXTEND_POINT__: 8;
163
168
  };
164
169
 
165
- export declare type CoreWarnCodes = typeof CoreWarnCodes[keyof typeof CoreWarnCodes];
170
+ export declare type CoreWarnCodes = (typeof CoreWarnCodes)[keyof typeof CoreWarnCodes];
166
171
  export { createCompileError }
167
172
 
168
- export declare function createCoreContext<Message = string, Options extends CoreOptions<Message> = CoreOptions<Message>, Messages = Options['messages'] extends object ? Options['messages'] : {}, DateTimeFormats = Options['datetimeFormats'] extends object ? Options['datetimeFormats'] : {}, NumberFormats = Options['numberFormats'] extends object ? Options['numberFormats'] : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>;
173
+ 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'] : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>;
169
174
 
170
- 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 = Options['messages'] extends object ? Options['messages'] : {}, DateTimeFormats = Options['datetimeFormats'] extends object ? Options['datetimeFormats'] : {}, NumberFormats = Options['numberFormats'] extends object ? Options['numberFormats'] : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>;
175
+ 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']> : {}>(options: Options): CoreContext<Message, Messages, DateTimeFormats, NumberFormats>;
171
176
 
172
177
  export declare function createCoreError(code: CoreErrorCodes): CoreError;
173
178
 
@@ -189,15 +194,15 @@ export declare interface CurrencyNumberFormatOptions extends Intl.NumberFormatOp
189
194
  /**
190
195
  * `datetime` function overloads
191
196
  */
192
- export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, Message = string>(context: Context, value: number | string | Date): string | number | Intl.DateTimeFormatPart[];
197
+ export declare function datetime<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number | string | Date): string | number | Intl.DateTimeFormatPart[];
193
198
 
194
- export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, 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[];
199
+ 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[];
195
200
 
196
- export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, 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[];
201
+ 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[];
197
202
 
198
- export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, 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[];
203
+ 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[];
199
204
 
200
- export declare function datetime<Context extends CoreContext<Message, {}, Context['datetimeFormats'], {}>, 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[];
205
+ 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[];
201
206
 
202
207
  /* Excluded from this release type: DATETIME_FORMAT_OPTIONS_KEYS */
203
208
 
@@ -369,6 +374,8 @@ export declare function initI18nDevTools(i18n: unknown, version: string, meta?:
369
374
 
370
375
  export declare type IsEmptyObject<T> = [keyof T] extends [never] ? true : false;
371
376
 
377
+ export declare const isMessageAST: (val: unknown) => val is ResourceNode;
378
+
372
379
  export declare const isMessageFunction: <T>(val: unknown) => val is MessageFunction<T>;
373
380
 
374
381
  export declare type IsNever<T> = [T] extends [never] ? true : false;
@@ -389,7 +396,13 @@ export declare type LinkedModifiers<T = string> = {
389
396
  export declare type LinkedModify<T = string> = (value: T, type: string) => MessageType<T>;
390
397
 
391
398
  export declare interface LinkedOptions {
399
+ /**
400
+ * The message type of linked message
401
+ */
392
402
  type?: string;
403
+ /**
404
+ * The modifier of linked message
405
+ */
393
406
  modifier?: string;
394
407
  }
395
408
 
@@ -417,7 +430,7 @@ export declare type LocaleMessageDictionary<T, Message = string> = {
417
430
  export declare type LocaleMessages<Schema, Locales = Locale, Message = string> = LocaleRecord<UnionToTuple<Locales>, Schema>;
418
431
 
419
432
  /** @VueI18nGeneral */
420
- 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, any> ? LocaleMessageDictionary<T, Message> : T extends Array<T> ? {
433
+ 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> ? {
421
434
  [K in keyof T]: T[K];
422
435
  } : T;
423
436
 
@@ -452,19 +465,160 @@ export declare type LocaleRecord<T extends any[], R> = {
452
465
  [K in T[number]]: R;
453
466
  };
454
467
 
455
- export declare type MessageCompiler<Message = string> = (source: string, options?: CompileOptions) => MessageFunction<Message>;
468
+ /**
469
+ * The message compiler
470
+ *
471
+ * @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.
472
+ * @param context - A message context {@link MessageCompilerContext}
473
+ *
474
+ * @returns A {@link MessageFunction}
475
+ *
476
+ * @VueI18nGeneral
477
+ */
478
+ export declare type MessageCompiler<Message = string, MessageSource = string | ResourceNode> = (message: MessageSource, context: MessageCompilerContext) => MessageFunction<Message>;
456
479
 
480
+ /**
481
+ * The context that will pass the message compiler.
482
+ *
483
+ * @VueI18nGeneral
484
+ */
485
+ export declare type MessageCompilerContext = Pick<CompileOptions, 'onError' | 'onCacheKey'> & {
486
+ /**
487
+ * Whether to allow the use locale messages of HTML formatting.
488
+ */
489
+ warnHtmlMessage?: boolean;
490
+ /**
491
+ * The resolved locale message key
492
+ */
493
+ key: string;
494
+ /**
495
+ * The locale
496
+ */
497
+ locale: Locale;
498
+ };
499
+
500
+ /**
501
+ * The message context.
502
+ *
503
+ * @VueI18nGeneral
504
+ */
457
505
  export declare interface MessageContext<T = string> {
506
+ /**
507
+ * Resolve message value from list.
508
+ *
509
+ * @param index - An index of message values.
510
+ *
511
+ * @returns A resolved message value.
512
+ *
513
+ * @example
514
+ * ```js
515
+ * const messages = {
516
+ * en: {
517
+ * greeting: ({ list }) => `hello, ${list(0)}!`
518
+ * }
519
+ * }
520
+ * ```
521
+ */
458
522
  list(index: number): unknown;
523
+ /**
524
+ * Resolve message value from named.
525
+ *
526
+ * @param key - A key of message value.
527
+ *
528
+ * @returns A resolved message value.
529
+ *
530
+ * @example
531
+ * ```js
532
+ * const messages = {
533
+ * en: {
534
+ * greeting: ({ named }) => `hello, ${named('name')}!`
535
+ * }
536
+ * }
537
+ * ```
538
+ */
459
539
  named(key: string): unknown;
540
+ /**
541
+ * Resolve message with plural index.
542
+ *
543
+ * @remarks
544
+ * That's resolved with plural index with translation function.
545
+ *
546
+ * @param messages - the messages, that is resolved with plural index with translation function.
547
+ *
548
+ * @returns A resolved message.
549
+ *
550
+ * @example
551
+ * ```js
552
+ * const messages = {
553
+ * en: {
554
+ * car: ({ plural }) => plural(['car', 'cars']),
555
+ * apple: ({ plural, named }) =>
556
+ * plural([
557
+ * 'no apples',
558
+ * 'one apple',
559
+ * `${named('count')} apples`
560
+ * ])
561
+ * }
562
+ * }
563
+ * ```
564
+ */
460
565
  plural(messages: T[]): T;
566
+ /**
567
+ * Resolve linked message.
568
+ *
569
+ * @param key - A message key
570
+ * @param modifier - A modifier
571
+ *
572
+ * @returns A resolve message.
573
+ */
461
574
  linked(key: Path, modifier?: string): MessageType<T>;
575
+ /**
576
+ * Overloaded `linked`
577
+ *
578
+ * @param key - A message key
579
+ * @param modifier - A modifier
580
+ * @param type - A message type
581
+ *
582
+ * @returns A resolve message.
583
+ */
462
584
  linked(key: Path, modifier?: string, type?: string): MessageType<T>;
585
+ /**
586
+ * Overloaded `linked`
587
+ *
588
+ * @param key - A message key
589
+ * @param optoins - An {@link LinkedOptions | linked options}
590
+ *
591
+ * @returns A resolve message.
592
+ */
463
593
  linked(key: Path, optoins?: LinkedOptions): MessageType<T>;
464
- message(key: Path): MessageFunction<T>;
594
+ /* Excluded from this release type: message */
595
+ /**
596
+ * The message type to be handled by the message function.
597
+ *
598
+ * @remarks
599
+ * Usually `text`, you need to return **string** in message function.
600
+ */
465
601
  type: string;
466
- interpolate: MessageInterpolate<T>;
467
- normalize: MessageNormalize<T>;
602
+ /* Excluded from this release type: interpolate */
603
+ /* Excluded from this release type: normalize */
604
+ /**
605
+ * The message values.
606
+ *
607
+ * @remarks
608
+ * The message values are the argument values passed from translation fucntion, such as `$t`, `t`, or `translate`.
609
+ *
610
+ * @example
611
+ * vue-i18n `$t` (or `t`) case:
612
+ * ```html
613
+ * <p>{{ $t('greeting', { name: 'DIO' }) }}</p> <!-- `{ name: 'DIO' }` is message vlaues -->
614
+ * ```
615
+ *
616
+ * `@intlify/core` (`@intlify/core-base`) `translate` case:
617
+ * ```js
618
+ * translate(context, 'foo.bar', ['dio']) // `['dio']` is message values
619
+ * ```
620
+ */
621
+ values: Record<string, unknown>;
468
622
  }
469
623
 
470
624
  export declare interface MessageContextOptions<T = string, N = {}> {
@@ -479,22 +633,29 @@ export declare interface MessageContextOptions<T = string, N = {}> {
479
633
  processor?: MessageProcessor<T>;
480
634
  }
481
635
 
636
+ /**
637
+ * The Message Function.
638
+ *
639
+ * @param ctx - A {@link MessageContext}
640
+ *
641
+ * @return A resolved format message, that is string type basically.
642
+ *
643
+ * @VueI18nGeneral
644
+ */
482
645
  export declare type MessageFunction<T = string> = MessageFunctionCallable | MessageFunctionInternal<T>;
483
646
 
484
- export declare type MessageFunctionCallable = <T = string>(ctx: MessageContext<T>) => MessageType<T>;
647
+ export declare type MessageFunctionCallable = <T = string>(ctx: MessageContext<T>) => MessageFunctionReturn<T>;
485
648
 
486
- export declare type MessageFunctionInternal<T = string> = {
487
- (ctx: MessageContext<T>): MessageType<T>;
488
- key?: string;
489
- locale?: string;
490
- source?: string;
491
- };
649
+ /* Excluded from this release type: MessageFunctionInternal */
650
+
651
+ /** @VueI18nGeneral */
652
+ export declare type MessageFunctionReturn<T = string> = T extends string ? MessageType<T> : MessageType<T>[];
492
653
 
493
654
  export declare type MessageFunctions<T = string> = Record<string, MessageFunction<T>>;
494
655
 
495
656
  export declare type MessageInterpolate<T = string> = (val: unknown) => MessageType<T>;
496
657
 
497
- export declare type MessageNormalize<T = string> = (values: MessageType<string | T>[]) => MessageType<T | T[]>;
658
+ export declare type MessageNormalize<T = string> = (values: MessageType<T>[]) => MessageFunctionReturn<T>;
498
659
 
499
660
  export declare interface MessageProcessor<T = string> {
500
661
  type?: string;
@@ -523,15 +684,15 @@ export declare const NOT_REOSLVED = -1;
523
684
  /**
524
685
  * `number` function overloads
525
686
  */
526
- export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, Message = string>(context: Context, value: number): string | number | Intl.NumberFormatPart[];
687
+ export declare function number<Context extends CoreContext<Message, {}, {}, {}>, Message = string>(context: Context, value: number): string | number | Intl.NumberFormatPart[];
527
688
 
528
- export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, 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[];
689
+ 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[];
529
690
 
530
- export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, 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[];
691
+ 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[];
531
692
 
532
- export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, 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[];
693
+ 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[];
533
694
 
534
- export declare function number<Context extends CoreContext<Message, {}, {}, Context['numberFormats']>, 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[];
695
+ 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[];
535
696
 
536
697
  /* Excluded from this release type: NUMBER_FORMAT_OPTIONS_KEYS */
537
698
 
@@ -665,7 +826,7 @@ export declare type PluralizationRules = {
665
826
  };
666
827
 
667
828
  /** @VueI18nGeneral */
668
- export declare type PostTranslationHandler<Message = string> = (translated: MessageType<Message>, key: string) => MessageType<Message>;
829
+ export declare type PostTranslationHandler<Message = string> = (translated: MessageFunctionReturn<Message>, key: string) => MessageFunctionReturn<Message>;
669
830
 
670
831
  /**
671
832
  * Register the locale fallbacker
@@ -676,7 +837,7 @@ export declare type PostTranslationHandler<Message = string> = (translated: Mess
676
837
  */
677
838
  export declare function registerLocaleFallbacker(fallbacker: LocaleFallbacker): void;
678
839
 
679
- export declare function registerMessageCompiler<Message>(compiler: MessageCompiler<Message>): void;
840
+ export declare function registerMessageCompiler<Message>(compiler: MessageCompiler<Message, string | ResourceNode>): void;
680
841
 
681
842
  /**
682
843
  * Register the message resolver
@@ -724,6 +885,7 @@ export declare function resolveWithKeyValue(obj: unknown, path: Path): PathValue
724
885
  export declare type ResourceFormatPath<T> = _ResourceFormatPath<T> extends string | keyof T ? _ResourceFormatPath<T> : keyof T;
725
886
 
726
887
  declare type _ResourceFormatPath<T> = __ResourceFormatPath<T, keyof T> | keyof T;
888
+ export { ResourceNode }
727
889
 
728
890
  export declare type ResourcePath<T> = _ResourcePath<T> extends string | keyof T ? _ResourcePath<T> : keyof T;
729
891
 
@@ -782,31 +944,31 @@ declare type StringConvertable<T> = ExtractToStringKey<T> extends never ? unknow
782
944
  /**
783
945
  * `translate` function overloads
784
946
  */
785
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>): MessageType<Message> | number;
947
+ export declare function translate<Context extends CoreContext<Message>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>): MessageFunctionReturn<Message> | number;
786
948
 
787
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageType<Message> | number;
949
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number): MessageFunctionReturn<Message> | number;
788
950
 
789
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number, options: TranslateOptions<Context['locale']>): MessageType<Message> | number;
951
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, plural: number, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
790
952
 
791
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string): MessageType<Message> | number;
953
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string): MessageFunctionReturn<Message> | number;
792
954
 
793
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string, options: TranslateOptions<Context['locale']>): MessageType<Message> | number;
955
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, defaultMsg: string, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
794
956
 
795
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[]): MessageType<Message> | number;
957
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[]): MessageFunctionReturn<Message> | number;
796
958
 
797
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], plural: number): MessageType<Message> | number;
959
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], plural: number): MessageFunctionReturn<Message> | number;
798
960
 
799
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], defaultMsg: string): MessageType<Message> | number;
961
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], defaultMsg: string): MessageFunctionReturn<Message> | number;
800
962
 
801
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], options: TranslateOptions<Context['locale']>): MessageType<Message> | number;
963
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, list: unknown[], options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
802
964
 
803
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue): MessageType<Message> | number;
965
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue): MessageFunctionReturn<Message> | number;
804
966
 
805
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, plural: number): MessageType<Message> | number;
967
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, plural: number): MessageFunctionReturn<Message> | number;
806
968
 
807
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, defaultMsg: string): MessageType<Message> | number;
969
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, defaultMsg: string): MessageFunctionReturn<Message> | number;
808
970
 
809
- export declare function translate<Context extends CoreContext<Message, Context['messages'], {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, options: TranslateOptions<Context['locale']>): MessageType<Message> | number;
971
+ export declare function translate<Context extends CoreContext<Message, {}, {}, {}>, Key extends string = string, ResourceKeys extends PickupKeys<Context['messages']> = PickupKeys<Context['messages']>, Message = string>(context: Context, key: Key | ResourceKeys | number | MessageFunction<Message>, named: NamedValue, options: TranslateOptions<Context['locale']>): MessageFunctionReturn<Message> | number;
810
972
 
811
973
  export declare const translateDevTools: (payloads: IntlifyDevToolsHookPayloads[IntlifyDevToolsHooks]) => void | null;
812
974