From f0b08f493d19765e575bf3fa1c656924e15a40b3 Mon Sep 17 00:00:00 2001 From: Joshua Chen Date: Wed, 26 Jan 2022 11:49:29 +0800 Subject: [PATCH] fix(module-type-aliases): fix type def for translate params (#6469) --- .../src/index.d.ts | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) 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; };