diff --git a/packages/core/parcel-bundler/src/assets/TypeScriptAsset.js b/packages/core/parcel-bundler/src/assets/TypeScriptAsset.js index e12325a438c..715a8ea94c2 100644 --- a/packages/core/parcel-bundler/src/assets/TypeScriptAsset.js +++ b/packages/core/parcel-bundler/src/assets/TypeScriptAsset.js @@ -12,7 +12,9 @@ class TypeScriptAsset extends Asset { let typescript = await localRequire('typescript', this.name); let transpilerOptions = { compilerOptions: { - module: typescript.ModuleKind.CommonJS, + module: this.options.scopeHoist + ? typescript.ModuleKind.ESNext + : typescript.ModuleKind.CommonJS, jsx: typescript.JsxEmit.Preserve, // it brings the generated output from TypeScript closer to that generated by Babel