From bb5e21b4e727f62c772b714d8c2ee2ae7e77a9fa Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Sun, 13 Oct 2024 17:37:16 +0100 Subject: Improves typing of translate() --- src/i18n/translate.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/i18n/translate.ts b/src/i18n/translate.ts index 0366798..09e227c 100644 --- a/src/i18n/translate.ts +++ b/src/i18n/translate.ts @@ -14,10 +14,11 @@ type TranslationsDictionaryWith< }>; export default function (locale: Locale) { - return function ( - dict: TranslationsDictionaryWith, - params: { key: Key } & ParamsHash - ) { + return function < + Key extends string | number, + ParamsHash extends object, + Dict extends TranslationsDictionaryWith, + >(dict: Dict, params: { key: Key } & ParamsHash) { if (!(params.key in dict)) { throw new Error(` Could not find translation for key '${params.key}'. Available keys were: -- cgit v1.2.3