diff --git a/packages/docusaurus-module-type-aliases/src/index.d.ts b/packages/docusaurus-module-type-aliases/src/index.d.ts index 72228dd6f0..ed9a3e4a5f 100644 --- a/packages/docusaurus-module-type-aliases/src/index.d.ts +++ b/packages/docusaurus-module-type-aliases/src/index.d.ts @@ -207,13 +207,18 @@ declare module '@docusaurus/Translate' { // TS type to ensure that at least one of id or message is always provided // (Generic permits to handled message provided as React children) - type IdOrMessage = - | ({[key in MessageKey]: string} & {id?: string}) - | ({[key in MessageKey]?: string} & {id: string}); + type IdOrMessage< + MessageKey extends 'children' | 'message', + Str extends string, + > = + | ({[key in MessageKey]: Str} & {id?: string}) + | ({[key in MessageKey]?: Str} & {id: string}); - export type TranslateParam = IdOrMessage<'message'> & { + export type TranslateParam = IdOrMessage< + 'message', + Str + > & { description?: string; - values?: InterpolateValues; }; export function translate( @@ -221,7 +226,10 @@ declare module '@docusaurus/Translate' { values?: InterpolateValues, ): string; - export type TranslateProps = IdOrMessage<'children'> & { + export type TranslateProps = IdOrMessage< + 'children', + Str + > & { description?: string; values?: InterpolateValues; };