From 928a5c27f3b1391153c5a1b670dec67cd243ac4c Mon Sep 17 00:00:00 2001 From: R Midhun Suresh Date: Wed, 1 Dec 2021 22:50:59 +0530 Subject: [PATCH] Add rationale Co-authored-by: Bruno Windels --- doc/TS-MIGRATION.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/TS-MIGRATION.md b/doc/TS-MIGRATION.md index f3773747..82e88a89 100644 --- a/doc/TS-MIGRATION.md +++ b/doc/TS-MIGRATION.md @@ -10,4 +10,4 @@ Also see [this playground](https://www.typescriptlang.org/play?#code/C4TwDgpgBAC ## Use `Record` to describe a type that accepts any Javascript object. -Prefer this over index signature, `any` or `object`. +Record allows us to avoid passing in primitive types and prevents type errors when accessing properties. As this is a temporary type while converting javascript, it seems best to not add any additional requirements. If any errors occur, they must have already been present, and we should fix it by adding proper types. So prefer `Record` over `[key: string]: any`, `any` or `object`.