diff --git a/src/compiler/core.ts b/src/compiler/core.ts index 66cabb7655c..0bef14e9dda 100644 --- a/src/compiler/core.ts +++ b/src/compiler/core.ts @@ -2677,7 +2677,7 @@ namespace ts { const extensions = [ ...needJsExtensions ? allSupportedExtensions : supportedTypeScriptExtensions, - ...extraFileExtensions.filter(x => x.scriptKind === ScriptKind.Deferred || needJsExtensions && isJavaScriptLike(x.scriptKind)).map(x => x.extension) + ...mapDefined(extraFileExtensions, x => x.scriptKind === ScriptKind.Deferred || needJsExtensions && isJavaScriptLike(x.scriptKind) ? x.extension : undefined) ]; return deduplicate(extensions, equateStringsCaseSensitive, compareStringsCaseSensitive); diff --git a/src/compiler/types.ts b/src/compiler/types.ts index 27965451a14..5eea26f1c69 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -4066,6 +4066,8 @@ namespace ts { Prototype, } + export type JsFileExtensionInfo = FileExtensionInfo; + export interface FileExtensionInfo { extension: string; isMixedContent: boolean; diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 3f999ef66a6..9d63950cc66 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -2266,6 +2266,7 @@ declare namespace ts { AlwaysStrict = 64, PriorityImpliesCombination = 28 } + type JsFileExtensionInfo = FileExtensionInfo; interface FileExtensionInfo { extension: string; isMixedContent: boolean; diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index f868b26b9f0..8f6e3a70291 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -2266,6 +2266,7 @@ declare namespace ts { AlwaysStrict = 64, PriorityImpliesCombination = 28 } + type JsFileExtensionInfo = FileExtensionInfo; interface FileExtensionInfo { extension: string; isMixedContent: boolean;