diff --git a/src/services/completions.ts b/src/services/completions.ts index f5aba7f99e8..ef1bd5ebd3c 100644 --- a/src/services/completions.ts +++ b/src/services/completions.ts @@ -81,7 +81,7 @@ namespace ts.Completions { return { isGlobalCompletion: false, isMemberCompletion: true, isNewIdentifierLocation: completion.hasIndexSignature, entries }; } case StringLiteralCompletionKind.Types: { - const entries = completion.types.map(type => ({ name: type.value, kindModifiers: ScriptElementKindModifier.none, kind: ScriptElementKind.typeElement, sortText: "0" })); + const entries = completion.types.map(type => ({ name: type.value, kindModifiers: ScriptElementKindModifier.none, kind: ScriptElementKind.string, sortText: "0" })); return { isGlobalCompletion: false, isMemberCompletion: false, isNewIdentifierLocation: completion.isNewIdentifier, entries }; } default: diff --git a/src/services/types.ts b/src/services/types.ts index 69e33ce6732..cd4a497f694 100644 --- a/src/services/types.ts +++ b/src/services/types.ts @@ -995,6 +995,9 @@ namespace ts { * */ jsxAttribute = "JSX attribute", + + /** String literal */ + string = "string", } export const enum ScriptElementKindModifier { diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 16277d93b0c..b8cb75677cb 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -5021,7 +5021,9 @@ declare namespace ts { /** * */ - jsxAttribute = "JSX attribute" + jsxAttribute = "JSX attribute", + /** String literal */ + string = "string" } enum ScriptElementKindModifier { none = "", diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index 211c2fbbdf4..ff0b1f65134 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -5021,7 +5021,9 @@ declare namespace ts { /** * */ - jsxAttribute = "JSX attribute" + jsxAttribute = "JSX attribute", + /** String literal */ + string = "string" } enum ScriptElementKindModifier { none = "", diff --git a/tests/cases/fourslash/completionForStringLiteral_details.ts b/tests/cases/fourslash/completionForStringLiteral_details.ts index 46832bc9025..059770023c9 100644 --- a/tests/cases/fourslash/completionForStringLiteral_details.ts +++ b/tests/cases/fourslash/completionForStringLiteral_details.ts @@ -21,7 +21,7 @@ goTo.marker("path"); verify.completionListContains("other", "other", "", "script"); goTo.marker("type"); -verify.completionListContains("a", "a", "", "type"); +verify.completionListContains("a", "a", "", "string"); goTo.marker("prop"); verify.completionListContains("x", "(property) I.x: number", "Prop doc ", "property");