{"componentChunkName":"component---src-templates-handbook-tsx","path":"/docs/handbook/compiler-options-in-msbuild.html","result":{"data":{"allSitePage":{"nodes":[{"path":"/dev-404-page/"},{"path":"/docs/handbook/advanced-types.html"},{"path":"/docs/handbook/basic-types.html"},{"path":"/docs/handbook/classes.html"},{"path":"/docs/handbook/compiler-options-in-msbuild.html"},{"path":"/docs/handbook/compiler-options.html"},{"path":"/docs/handbook/configuring-watch.html"},{"path":"/docs/handbook/declaration-merging.html"},{"path":"/docs/handbook/decorators.html"},{"path":"/docs/handbook/enums.html"},{"path":"/docs/handbook/functions.html"},{"path":"/docs/handbook/generics.html"},{"path":"/docs/handbook/integrating-with-build-tools.html"},{"path":"/docs/handbook/interfaces.html"},{"path":"/docs/handbook/iterators-and-generators.html"},{"path":"/docs/handbook/jsdoc-supported-types.html"},{"path":"/docs/handbook/jsx.html"},{"path":"/docs/handbook/literal-types.html"},{"path":"/docs/handbook/mixins.html"},{"path":"/docs/handbook/module-resolution.html"},{"path":"/docs/handbook/modules.html"},{"path":"/docs/handbook/namespaces-and-modules.html"},{"path":"/docs/handbook/namespaces.html"},{"path":"/docs/handbook/nightly-builds.html"},{"path":"/docs/handbook/project-references.html"},{"path":"/docs/handbook/symbols.html"},{"path":"/docs/handbook/"},{"path":"/docs/handbook/triple-slash-directives.html"},{"path":"/docs/handbook/type-checking-javascript-files.html"},{"path":"/docs/handbook/type-compatibility.html"},{"path":"/docs/handbook/type-inference.html"},{"path":"/docs/handbook/unions-and-intersections.html"},{"path":"/docs/handbook/utility-types.html"},{"path":"/docs/handbook/variable-declarations.html"},{"path":"/docs/handbook/writing-declaration-files.html"},{"path":"/docs/handbook/declaration-files/by-example.html"},{"path":"/docs/handbook/declaration-files/consumption.html"},{"path":"/docs/handbook/declaration-files/deep-dive.html"},{"path":"/docs/handbook/declaration-files/do-s-and-don-ts.html"},{"path":"/docs/handbook/declaration-files/introduction.html"},{"path":"/docs/handbook/declaration-files/library-structures.html"},{"path":"/docs/handbook/declaration-files/publishing.html"},{"path":"/docs/handbook/declaration-files/templates.html"},{"path":"/docs/handbook/release-notes/typescript-1-1.html"},{"path":"/docs/handbook/release-notes/typescript-1-3.html"},{"path":"/docs/handbook/release-notes/typescript-1-4.html"},{"path":"/docs/handbook/release-notes/typescript-1-5.html"},{"path":"/docs/handbook/release-notes/typescript-1-6.html"},{"path":"/docs/handbook/release-notes/typescript-1-7.html"},{"path":"/docs/handbook/release-notes/typescript-1-8.html"},{"path":"/docs/handbook/release-notes/typescript-2-0.html"},{"path":"/docs/handbook/release-notes/typescript-2-2.html"},{"path":"/docs/handbook/release-notes/typescript-2-1.html"},{"path":"/docs/handbook/release-notes/typescript-2-3.html"},{"path":"/docs/handbook/release-notes/typescript-2-4.html"},{"path":"/docs/handbook/release-notes/typescript-2-5.html"},{"path":"/docs/handbook/release-notes/typescript-2-6.html"},{"path":"/docs/handbook/release-notes/typescript-2-7.html"},{"path":"/docs/handbook/release-notes/typescript-2-8.html"},{"path":"/docs/handbook/release-notes/typescript-2-9.html"},{"path":"/docs/handbook/release-notes/typescript-3-0.html"},{"path":"/docs/handbook/release-notes/typescript-3-1.html"},{"path":"/docs/handbook/release-notes/typescript-3-2.html"},{"path":"/docs/handbook/release-notes/typescript-3-3.html"},{"path":"/docs/handbook/release-notes/typescript-3-4.html"},{"path":"/docs/handbook/release-notes/typescript-3-5.html"},{"path":"/docs/handbook/release-notes/typescript-3-6.html"},{"path":"/docs/handbook/release-notes/typescript-3-7.html"},{"path":"/docs/handbook/release-notes/typescript-3-8.html"},{"path":"/docs/handbook/asp-net-core.html"},{"path":"/docs/handbook/angular.html"},{"path":"/docs/handbook/dom-manipulation.html"},{"path":"/docs/handbook/gulp.html"},{"path":"/docs/handbook/migrating-from-javascript.html"},{"path":"/docs/handbook/react-&-webpack.html"},{"path":"/docs/handbook/react.html"},{"path":"/docs/handbook/typescript-in-5-minutes-func.html"},{"path":"/docs/handbook/typescript-in-5-minutes.html"},{"path":"/docs/handbook/typescript-in-5-minutes-oop.html"},{"path":"/docs/handbook/typescript-from-scratch.html"},{"path":"/docs/handbook/typescript-tooling-in-5-minutes.html"},{"path":"/docs/handbook/tsconfig-json.html"},{"path":"/docs/handbook/declaration-files/templates/global-modifying-module-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/global-plugin-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/global-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/module-class-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/module-function-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/module-plugin-d-ts.html"},{"path":"/docs/handbook/declaration-files/templates/module-d-ts.html"},{"path":"/docs/handbook/release-notes/overview.html"},{"path":"/tsconfig"},{"path":"/en/tsconfig"},{"path":"/ja/tsconfig"},{"path":"/vo/tsconfig"},{"path":"/play"},{"path":"/en/play"},{"path":"/es/play"},{"path":"/vo/play"},{"path":"/zh/play"},{"path":"/ja/play"},{"path":"/play/3-7/fixits/big-number-literals.ts"},{"path":"/play/3-7/fixits/const-to-let.ts"},{"path":"/play/3-7/fixits/infer-from-usage-changes.ts"},{"path":"/play/3-7/syntax-and-messaging/flattened-error-reporting.ts"},{"path":"/play/3-7/syntax-and-messaging/nullish-coalescing.ts"},{"path":"/play/3-7/syntax-and-messaging/optional-chaining.ts"},{"path":"/play/3-7/types-and-code-flow/assertion-functions.ts"},{"path":"/play/3-7/types-and-code-flow/recursive-type-references.ts"},{"path":"/play/3-7/types-and-code-flow/uncalled-function-checks.ts"},{"path":"/play/3-8/breaking-changes/checking-unions-with-index-signatures.ts"},{"path":"/play/3-8/jsdoc-improvements/accessibility-modifiers.js"},{"path":"/play/3-8/syntax-and-messaging/export-modules-from.ts"},{"path":"/play/3-8/syntax-and-messaging/private-class-fields.ts"},{"path":"/play/javascript/external-apis/typescript-with-deno.ts"},{"path":"/play/javascript/external-apis/typescript-with-node.js"},{"path":"/play/javascript/external-apis/typescript-with-web.js"},{"path":"/play/javascript/external-apis/typescript-with-webgl.js"},{"path":"/play/javascript/functions-with-javascript/function-chaining.ts"},{"path":"/play/javascript/functions-with-javascript/generic-functions.ts"},{"path":"/play/javascript/functions-with-javascript/typing-functions.ts"},{"path":"/play/javascript/helping-with-javascript/errors.ts"},{"path":"/play/javascript/helping-with-javascript/quick-fixes.ts"},{"path":"/play/javascript/javascript-essentials/code-flow.ts"},{"path":"/play/javascript/javascript-essentials/functions.ts"},{"path":"/play/javascript/javascript-essentials/hello-world.ts"},{"path":"/play/javascript/javascript-essentials/objects-and-arrays.ts"},{"path":"/play/javascript/modern-javascript/async-await.ts"},{"path":"/play/javascript/modern-javascript/immutability.ts"},{"path":"/play/javascript/modern-javascript/import-export.ts"},{"path":"/play/javascript/modern-javascript/jsdoc-support.js"},{"path":"/play/javascript/working-with-classes/classes-101.ts"},{"path":"/play/javascript/working-with-classes/generic-classes.ts"},{"path":"/play/javascript/working-with-classes/mixins.ts"},{"path":"/play/javascript/working-with-classes/this.ts"},{"path":"/play/playground/config/javascript-playgrounds.js"},{"path":"/play/playground/config/new-compiler-defaults.ts"},{"path":"/play/playground/language/automatic-type-acquisition.ts"},{"path":"/play/playground/language/fixits.ts"},{"path":"/play/playground/tooling/mobile-support.ts"},{"path":"/play/playground/tooling/sharable-urls.ts"},{"path":"/play/playground/tooling/typescript-versions.ts"},{"path":"/play/typescript/language/soundness.ts"},{"path":"/play/typescript/language/structural-typing.ts"},{"path":"/play/typescript/language/type-guards.ts"},{"path":"/play/typescript/language/type-widening-and-narrowing.ts"},{"path":"/play/typescript/language-extensions/enums.ts"},{"path":"/play/typescript/language-extensions/nominal-typing.ts"},{"path":"/play/typescript/language-extensions/types-vs-interfaces.ts"},{"path":"/play/typescript/meta-types/conditional-types.ts"},{"path":"/play/typescript/meta-types/discriminate-types.ts"},{"path":"/play/typescript/meta-types/indexed-types.ts"},{"path":"/play/typescript/meta-types/mapped-types.ts"},{"path":"/play/typescript/primitives/any.ts"},{"path":"/play/typescript/primitives/literals.ts"},{"path":"/play/typescript/primitives/union-and-intersection-types.ts"},{"path":"/play/typescript/primitives/unknown-and-never.ts"},{"path":"/play/typescript/type-primitives/built-in-utility-types.ts"},{"path":"/play/typescript/type-primitives/nullable-types.ts"},{"path":"/play/typescript/type-primitives/tuples.ts"},{"path":"/es/play/javascript/external-apis/typescript-with-deno.ts"},{"path":"/es/play/javascript/external-apis/typescript-with-node.js"},{"path":"/es/play/javascript/external-apis/typescript-with-web.js"},{"path":"/es/play/javascript/functions-with-javascript/function-chaining.ts"},{"path":"/es/play/javascript/functions-with-javascript/generic-functions.ts"},{"path":"/es/play/javascript/javascript-essentials/hello-world.ts"},{"path":"/es/play/javascript/javascript-essentials/objects-and-arrays.ts"},{"path":"/es/play/typescript/type-primitives/built-in-utility-types.ts"},{"path":"/es/play/typescript/type-primitives/nullable-types.ts"},{"path":"/es/play/typescript/type-primitives/tuples.ts"},{"path":"/ja/play/typescript/language-extensions/enums.ts"},{"path":"/ja/play/typescript/language-extensions/nominal-typing.ts"},{"path":"/ja/play/typescript/language-extensions/types-vs-interfaces.ts"},{"path":"/ja/play/typescript/primitives/any.ts"},{"path":"/ja/play/typescript/primitives/literals.ts"},{"path":"/ja/play/typescript/primitives/union-and-intersection-types.ts"},{"path":"/ja/play/typescript/type-primitives/built-in-utility-types.ts"},{"path":"/vo/play/javascript/javascript-essentials/code-flow.ts"},{"path":"/vo/play/javascript/javascript-essentials/functions.ts"},{"path":"/vo/play/javascript/javascript-essentials/hello-world.ts"},{"path":"/vo/play/javascript/javascript-essentials/objects-and-arrays.ts"},{"path":"/zh/play/javascript/external-apis/typescript-with-deno.ts"},{"path":"/zh/play/javascript/external-apis/typescript-with-node.js"},{"path":"/zh/play/javascript/external-apis/typescript-with-web.js"},{"path":"/zh/play/javascript/external-apis/typescript-with-webgl.js"},{"path":"/zh/play/javascript/functions-with-javascript/function-chaining.ts"},{"path":"/zh/play/javascript/functions-with-javascript/generic-functions.ts"},{"path":"/zh/play/javascript/functions-with-javascript/typing-functions.ts"},{"path":"/zh/play/javascript/helping-with-javascript/errors.ts"},{"path":"/zh/play/javascript/helping-with-javascript/quick-fixes.ts"},{"path":"/zh/play/javascript/javascript-essentials/code-flow.ts"},{"path":"/zh/play/javascript/javascript-essentials/functions.ts"},{"path":"/zh/play/javascript/javascript-essentials/hello-world.ts"},{"path":"/zh/play/javascript/modern-javascript/import-export.ts"},{"path":"/zh/play/javascript/modern-javascript/jsdoc-support.js"},{"path":"/zh/play/javascript/working-with-classes/classes-101.ts"},{"path":"/zh/play/javascript/working-with-classes/generic-classes.ts"},{"path":"/zh/play/javascript/working-with-classes/mixins.ts"},{"path":"/zh/play/javascript/working-with-classes/this.ts"},{"path":"/zh/play/playground/config/javascript-playgrounds.js"},{"path":"/zh/play/playground/config/new-compiler-defaults.ts"},{"path":"/zh/play/playground/language/automatic-type-acquisition.ts"},{"path":"/zh/play/playground/language/fixits.ts"},{"path":"/zh/play/playground/tooling/mobile-support.ts"},{"path":"/zh/play/playground/tooling/sharable-urls.ts"},{"path":"/zh/play/playground/tooling/typescript-versions.ts"},{"path":"/zh/play/typescript/language/soundness.ts"},{"path":"/zh/play/typescript/language/structural-typing.ts"},{"path":"/zh/play/typescript/language/type-guards.ts"},{"path":"/zh/play/typescript/language/type-widening-and-narrowing.ts"},{"path":"/zh/play/typescript/language-extensions/enums.ts"},{"path":"/zh/play/typescript/language-extensions/nominal-typing.ts"},{"path":"/zh/play/typescript/language-extensions/types-vs-interfaces.ts"},{"path":"/zh/play/typescript/meta-types/conditional-types.ts"},{"path":"/zh/play/typescript/meta-types/discriminate-types.ts"},{"path":"/zh/play/typescript/meta-types/indexed-types.ts"},{"path":"/zh/play/typescript/meta-types/mapped-types.ts"},{"path":"/zh/play/typescript/primitives/any.ts"},{"path":"/zh/play/typescript/primitives/literals.ts"},{"path":"/zh/play/typescript/primitives/union-and-intersection-types.ts"},{"path":"/zh/play/typescript/primitives/unknown-and-never.ts"},{"path":"/zh/play/typescript/type-primitives/built-in-utility-types.ts"},{"path":"/zh/play/typescript/type-primitives/nullable-types.ts"},{"path":"/zh/play/typescript/type-primitives/tuples.ts"},{"path":"/zh/play/javascript/modern-javascript/immutability.ts"},{"path":"/zh/play/javascript/modern-javascript/async-await.ts"},{"path":"/zh/play/javascript/javascript-essentials/objects-and-arrays.ts"},{"path":"/community"},{"path":"/es/community"},{"path":"/ja/community"},{"path":"/vo/community"},{"path":"/zh/community"},{"path":"/download"},{"path":"/es/download"},{"path":"/ja/download"},{"path":"/vo/download"},{"path":"/zh/download"},{"path":"/empty"},{"path":"/es/empty"},{"path":"/ja/empty"},{"path":"/vo/empty"},{"path":"/zh/empty"},{"path":"/"},{"path":"/es/"},{"path":"/ja/"},{"path":"/vo/"},{"path":"/zh/"},{"path":"/tools"},{"path":"/es/tools"},{"path":"/ja/tools"},{"path":"/vo/tools"},{"path":"/zh/tools"},{"path":"/why-create-typescript"},{"path":"/es/why-create-typescript"},{"path":"/ja/why-create-typescript"},{"path":"/vo/why-create-typescript"},{"path":"/zh/why-create-typescript"},{"path":"/docs/home"},{"path":"/es/docs/home"},{"path":"/ja/docs/home"},{"path":"/vo/docs/home"},{"path":"/zh/docs/home"},{"path":"/dev/playground-plugins/"},{"path":"/dev/sandbox/"},{"path":"/dev/twoslash/"},{"path":"/dev/typescript-vfs/"}]},"markdownRemark":{"id":"71b92cec-321f-576e-8fd9-bd92cca2f6a5","excerpt":"Overview Compiler options can be specified using MSBuild properties within an MSBuild project. Example Mappings Compiler Option MSBuild Property Name Allowed…","html":"<h2 id=\"overview\" style=\"position:relative;\"><a href=\"#overview\" aria-label=\"overview permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Overview</h2>\n<p>Compiler options can be specified using MSBuild properties within an MSBuild project.</p>\n<h2 id=\"example\" style=\"position:relative;\"><a href=\"#example\" aria-label=\"example permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Example</h2>\n<pre><code class=\"language-XML\">  &#x3C;PropertyGroup Condition=\"'$(Configuration)' == 'Debug'\">\n    &#x3C;TypeScriptRemoveComments>false&#x3C;/TypeScriptRemoveComments>\n    &#x3C;TypeScriptSourceMap>true&#x3C;/TypeScriptSourceMap>\n  &#x3C;/PropertyGroup>\n  &#x3C;PropertyGroup Condition=\"'$(Configuration)' == 'Release'\">\n    &#x3C;TypeScriptRemoveComments>true&#x3C;/TypeScriptRemoveComments>\n    &#x3C;TypeScriptSourceMap>false&#x3C;/TypeScriptSourceMap>\n  &#x3C;/PropertyGroup>\n  &#x3C;Import\n      Project=\"$(MSBuildExtensionsPath32)\\Microsoft\\VisualStudio\\v$(VisualStudioVersion)\\TypeScript\\Microsoft.TypeScript.targets\"\n      Condition=\"Exists('$(MSBuildExtensionsPath32)\\Microsoft\\VisualStudio\\v$(VisualStudioVersion)\\TypeScript\\Microsoft.TypeScript.targets')\" />\n</code></pre>\n<h2 id=\"mappings\" style=\"position:relative;\"><a href=\"#mappings\" aria-label=\"mappings permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Mappings</h2>\n<table>\n<thead>\n<tr>\n<th>Compiler Option</th>\n<th>MSBuild Property Name</th>\n<th>Allowed Values</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>--allowJs</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--allowSyntheticDefaultImports</code></td>\n<td>TypeScriptAllowSyntheticDefaultImports</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--allowUnreachableCode</code></td>\n<td>TypeScriptAllowUnreachableCode</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--allowUnusedLabels</code></td>\n<td>TypeScriptAllowUnusedLabels</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--alwaysStrict</code></td>\n<td>TypeScriptAlwaysStrict</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--baseUrl</code></td>\n<td>TypeScriptBaseUrl</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--charset</code></td>\n<td>TypeScriptCharset</td>\n<td></td>\n</tr>\n<tr>\n<td><code>--declaration</code></td>\n<td>TypeScriptGeneratesDeclarations</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--declarationDir</code></td>\n<td>TypeScriptDeclarationDir</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--diagnostics</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--disableSizeLimit</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--emitBOM</code></td>\n<td>TypeScriptEmitBOM</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--emitDecoratorMetadata</code></td>\n<td>TypeScriptEmitDecoratorMetadata</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--emitDeclarationOnly</code></td>\n<td>TypeScriptEmitDeclarationOnly</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--esModuleInterop</code></td>\n<td>TypeScriptESModuleInterop</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--experimentalAsyncFunctions</code></td>\n<td>TypeScriptExperimentalAsyncFunctions</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--experimentalDecorators</code></td>\n<td>TypeScriptExperimentalDecorators</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--forceConsistentCasingInFileNames</code></td>\n<td>TypeScriptForceConsistentCasingInFileNames</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--help</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--importHelpers</code></td>\n<td>TypeScriptImportHelpers</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--inlineSourceMap</code></td>\n<td>TypeScriptInlineSourceMap</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--inlineSources</code></td>\n<td>TypeScriptInlineSources</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--init</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--isolatedModules</code></td>\n<td>TypeScriptIsolatedModules</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--jsx</code></td>\n<td>TypeScriptJSXEmit</td>\n<td><code>react</code>, <code>react-native</code>, <code>preserve</code></td>\n</tr>\n<tr>\n<td><code>--jsxFactory</code></td>\n<td>TypeScriptJSXFactory</td>\n<td>qualified name</td>\n</tr>\n<tr>\n<td><code>--lib</code></td>\n<td>TypeScriptLib</td>\n<td>Comma-separated list of strings</td>\n</tr>\n<tr>\n<td><code>--listEmittedFiles</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--listFiles</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--locale</code></td>\n<td><em>automatic</em></td>\n<td>Automatically set to PreferredUILang value</td>\n</tr>\n<tr>\n<td><code>--mapRoot</code></td>\n<td>TypeScriptMapRoot</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--maxNodeModuleJsDepth</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--module</code></td>\n<td>TypeScriptModuleKind</td>\n<td><code>AMD</code>, <code>CommonJs</code>, <code>UMD</code>, <code>System</code> or <code>ES6</code></td>\n</tr>\n<tr>\n<td><code>--moduleResolution</code></td>\n<td>TypeScriptModuleResolution</td>\n<td><code>Classic</code> or <code>Node</code></td>\n</tr>\n<tr>\n<td><code>--newLine</code></td>\n<td>TypeScriptNewLine</td>\n<td><code>CRLF</code> or <code>LF</code></td>\n</tr>\n<tr>\n<td><code>--noEmit</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--noEmitHelpers</code></td>\n<td>TypeScriptNoEmitHelpers</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noEmitOnError</code></td>\n<td>TypeScriptNoEmitOnError</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noFallthroughCasesInSwitch</code></td>\n<td>TypeScriptNoFallthroughCasesInSwitch</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noImplicitAny</code></td>\n<td>TypeScriptNoImplicitAny</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noImplicitReturns</code></td>\n<td>TypeScriptNoImplicitReturns</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noImplicitThis</code></td>\n<td>TypeScriptNoImplicitThis</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noImplicitUseStrict</code></td>\n<td>TypeScriptNoImplicitUseStrict</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noStrictGenericChecks</code></td>\n<td>TypeScriptNoStrictGenericChecks</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noUnusedLocals</code></td>\n<td>TypeScriptNoUnusedLocals</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noUnusedParameters</code></td>\n<td>TypeScriptNoUnusedParameters</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noLib</code></td>\n<td>TypeScriptNoLib</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--noResolve</code></td>\n<td>TypeScriptNoResolve</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--out</code></td>\n<td>TypeScriptOutFile</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--outDir</code></td>\n<td>TypeScriptOutDir</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--outFile</code></td>\n<td>TypeScriptOutFile</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--paths</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--preserveConstEnums</code></td>\n<td>TypeScriptPreserveConstEnums</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--preserveSymlinks</code></td>\n<td>TypeScriptPreserveSymlinks</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--listEmittedFiles</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--pretty</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--reactNamespace</code></td>\n<td>TypeScriptReactNamespace</td>\n<td>string</td>\n</tr>\n<tr>\n<td><code>--removeComments</code></td>\n<td>TypeScriptRemoveComments</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--rootDir</code></td>\n<td>TypeScriptRootDir</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--rootDirs</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--skipLibCheck</code></td>\n<td>TypeScriptSkipLibCheck</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--skipDefaultLibCheck</code></td>\n<td>TypeScriptSkipDefaultLibCheck</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--sourceMap</code></td>\n<td>TypeScriptSourceMap</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--sourceRoot</code></td>\n<td>TypeScriptSourceRoot</td>\n<td>File path</td>\n</tr>\n<tr>\n<td><code>--strict</code></td>\n<td>TypeScriptStrict</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--strictFunctionTypes</code></td>\n<td>TypeScriptStrictFunctionTypes</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--strictNullChecks</code></td>\n<td>TypeScriptStrictNullChecks</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--strictPropertyInitialization</code></td>\n<td>TypeScriptStrictPropertyInitialization</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--stripInternal</code></td>\n<td>TypeScriptStripInternal</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--suppressExcessPropertyErrors</code></td>\n<td>TypeScriptSuppressExcessPropertyErrors</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--suppressImplicitAnyIndexErrors</code></td>\n<td>TypeScriptSuppressImplicitAnyIndexErrors</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--target</code></td>\n<td>TypeScriptTarget</td>\n<td><code>ES3</code>, <code>ES5</code>, or <code>ES6</code></td>\n</tr>\n<tr>\n<td><code>--traceResolution</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--types</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--typeRoots</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><code>--useDefineForClassFields</code></td>\n<td>TypeScriptUseDefineForClassFields</td>\n<td>boolean</td>\n</tr>\n<tr>\n<td><code>--watch</code></td>\n<td><em>Not supported in MSBuild</em></td>\n<td></td>\n</tr>\n<tr>\n<td><em>MSBuild only option</em></td>\n<td>TypeScriptAdditionalFlags</td>\n<td><em>Any compiler option</em></td>\n</tr>\n</tbody>\n</table>\n<h2 id=\"what-is-supported-in-my-version-of-visual-studio\" style=\"position:relative;\"><a href=\"#what-is-supported-in-my-version-of-visual-studio\" aria-label=\"what is supported in my version of visual studio permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>What is supported in my version of Visual Studio?</h2>\n<p>Look in your <code>C:\\Program Files (x86)\\MSBuild\\Microsoft\\VisualStudio\\v$(VisualStudioVersion)\\TypeScript\\Microsoft.TypeScript.targets</code> file.\nThe authoritative mappings between MSBuild XML tags and <code>tsc</code> compiler options live in there.</p>\n<h2 id=\"toolsversion\" style=\"position:relative;\"><a href=\"#toolsversion\" aria-label=\"toolsversion permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>ToolsVersion</h2>\n<p>The value of <code>&#x3C;TypeScriptToolsVersion>1.7&#x3C;/TypeScriptToolsVersion></code> property in the project file identifies the compiler version to use to build (1.7 in this example).\nThis allows a project to build against the same versions of the compiler on different machines.</p>\n<p>If <code>TypeScriptToolsVersion</code> is not specified, the latest compiler version installed on the machine will be used to build.</p>\n<p>Users using newer versions of TS, will see a prompt to upgrade their project on first load.</p>\n<h2 id=\"typescriptcompileblocked\" style=\"position:relative;\"><a href=\"#typescriptcompileblocked\" aria-label=\"typescriptcompileblocked permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>TypeScriptCompileBlocked</h2>\n<p>If you are using a different build tool to build your project (e.g. gulp, grunt , etc.) and VS for the development and debugging experience, set <code>&#x3C;TypeScriptCompileBlocked>true&#x3C;/TypeScriptCompileBlocked></code> in your project.\nThis should give you all the editing support, but not the build when you hit F5.</p>","headings":[{"value":"Overview","depth":2},{"value":"Example","depth":2},{"value":"Mappings","depth":2},{"value":"What is supported in my version of Visual Studio?","depth":2},{"value":"ToolsVersion","depth":2},{"value":"TypeScriptCompileBlocked","depth":2}],"frontmatter":{"permalink":"/docs/handbook/compiler-options-in-msbuild.html","title":"Compiler Options in MSBuild"}}},"pageContext":{"slug":"/docs/handbook/compiler-options-in-msbuild.html","isOldHandbook":true}}}