diff --git a/src/services/classifier.ts b/src/services/classifier.ts index 764f22ab92faf..ed8445b8f3987 100644 --- a/src/services/classifier.ts +++ b/src/services/classifier.ts @@ -1075,6 +1075,10 @@ namespace ts { } return; } + + if (isConstTypeReference(token.parent)) { + return ClassificationType.keyword; + } } return ClassificationType.identifier; } diff --git a/tests/cases/fourslash/semanticClassificationConstAssertion.ts b/tests/cases/fourslash/semanticClassificationConstAssertion.ts new file mode 100644 index 0000000000000..102cd1034eb0d --- /dev/null +++ b/tests/cases/fourslash/semanticClassificationConstAssertion.ts @@ -0,0 +1,20 @@ +/// + +////1 as const; + +const c1 = classification("original"); +verify.syntacticClassificationsAre( + c1.numericLiteral("1"), + c1.keyword("as"), + c1.keyword("const"), + c1.punctuation(";") +); + + +const c2 = classification("2020"); +verify.syntacticClassificationsAre( + c2.semanticToken("number", "1"), + c2.semanticToken("keyword", "as"), + c2.semanticToken("keyword", "const"), + c2.semanticToken("punctuation", ";") +);