From 01a7a3e146992adb5c0223943638be5576e271bc Mon Sep 17 00:00:00 2001 From: Oleksandr T Date: Tue, 21 Mar 2023 22:51:08 +0200 Subject: [PATCH] fix(53289): TypeScript cannot auto-complete keyword typeof (#53325) --- src/harness/fourslashInterfaceImpl.ts | 1 + src/services/utilities.ts | 1 + tests/cases/fourslash/typeOfKeywordCompletion.ts | 8 ++++++++ 3 files changed, 10 insertions(+) create mode 100644 tests/cases/fourslash/typeOfKeywordCompletion.ts diff --git a/src/harness/fourslashInterfaceImpl.ts b/src/harness/fourslashInterfaceImpl.ts index 4cf5c58d542..8a9fed916c7 100644 --- a/src/harness/fourslashInterfaceImpl.ts +++ b/src/harness/fourslashInterfaceImpl.ts @@ -1100,6 +1100,7 @@ export namespace Completion { "string", "symbol", "true", + "typeof", "undefined", "unique", "unknown", diff --git a/src/services/utilities.ts b/src/services/utilities.ts index d118f336b66..f602a10b8da 100644 --- a/src/services/utilities.ts +++ b/src/services/utilities.ts @@ -2318,6 +2318,7 @@ export const typeKeywords: readonly SyntaxKind[] = [ SyntaxKind.ReadonlyKeyword, SyntaxKind.StringKeyword, SyntaxKind.SymbolKeyword, + SyntaxKind.TypeOfKeyword, SyntaxKind.TrueKeyword, SyntaxKind.VoidKeyword, SyntaxKind.UndefinedKeyword, diff --git a/tests/cases/fourslash/typeOfKeywordCompletion.ts b/tests/cases/fourslash/typeOfKeywordCompletion.ts new file mode 100644 index 00000000000..ad1b59eb3c6 --- /dev/null +++ b/tests/cases/fourslash/typeOfKeywordCompletion.ts @@ -0,0 +1,8 @@ +/// + +////export type A = typ/**/ + +verify.completions({ + marker: "", + includes: [{ name: "typeof", sortText: completion.SortText.GlobalsOrKeywords }] +});