tsc <command>

CLI tool for TypeScript compiler

Arguments

NameDescription
command

Options

NameDescription
--allShow all compiler options
--generateTraceGenerates an event trace and a list of types
--helpGives local information for help on the CLI
--initInitializes a TypeScript project and creates a tsconfig.json file
--listFilesOnlyPrint names of files that are part of the compilation and then stop processing
--localeSet the language of the messaging from TypeScript. This does not affect emit
--project <command>Compile the project given the path to its configuration file, or to a folder with a tsconfig.json
--showConfigPrint the final configuration instead of building
--versionPrint the compiler's version
--buildBuild one or more projects and their dependencies, if out of date
--cleanDelete the outputs of all projects
--dryShow what would be built (or deleted, if specified with '--clean')
--forceBuild all projects, including those that appear to be up to date
--verboseEnable verbose logging
--excludeDirectories <command...>Remove a list of directories from the watch process
--excludeFiles <command...>Remove a list of files from the watch mode's processing
--fallbackPolling <command>Specify what approach the watcher should use if the system runs out of native file watchers
--synchronousWatchDirectorySynchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively
--watchWatch input files
--watchDirectory <command>Specify how directories are watched on systems that lack recursive file-watching functionality
--watchFile <command>Specify how the TypeScript watch mode works
--allowJsAllow JavaScript files to be a part of your program. Use the checkJS option to get errors from these files
--allowSyntheticDefaultImportsAllow 'import x from y' when a module doesn't have a default export
--allowUmdGlobalAccessAllow accessing UMD globals from modules
--allowUnreachableCodeDisable error reporting for unreachable code
--allowUnusedLabelsDisable error reporting for unused label
--alwaysStrictEnsure 'use strict' is always emitted
--assumeChangesOnlyAffectDirectDependenciesHave recompiles in projects that use incremental and watch mode assume that changes within a file will only affect files directly depending on it
--baseUrl <command>Specify the base directory to resolve non-relative module names
--checkJsEnable error reporting in type-checked JavaScript files
--compositeEnable constraints that allow a TypeScript project to be used with project references
--declarationGenerate .d.ts files from TypeScript and JavaScript files in your project
--declarationDir <command>Specify the output directory for generated declaration files
--declarationMapCreate sourcemaps for d.ts files
--diagnosticsOutput compiler performance information after building
--disableReferencedProjectLoadReduce the number of projects loaded automatically by TypeScript
--disableSizeLimitRemove the 20mb cap on total source code size for JavaScript files in the TypeScript language server
--disableSolutionSearchingOpt a project out of multi-project reference checking when editing
--disableSourceOfProjectReferenceRedirectDisable preferring source files instead of declaration files when referencing composite projects
--downlevelIterationEmit more compliant, but verbose and less performant JavaScript for iteration
--emitBOMEmit a UTF-8 Byte Order Mark (BOM) in the beginning of output files
--emitDeclarationOnlyOnly output d.ts files and not JavaScript files
--emitDecoratorMetadataEmit design-type metadata for decorated declarations in source files
--esModuleInteropEmit additional JavaScript to ease support for importing CommonJS modules. This enables allowSyntheticDefaultImports for type compatibility
--exactOptionalPropertyTypesDifferentiate between undefined and not present when type checking
--experimentalDecoratorsEnable experimental support for TC39 stage 2 draft decorators
--explainFilesPrint files read during the compilation including why it was included
--extendedDiagnosticsOutput more detailed compiler performance information after building
--forceConsistentCasingInFileNamesEnsure that casing is correct in imports
--generateCpuProfileEmit a v8 CPU profile of the compiler run for debugging
--importHelpersAllow importing helper functions from tslib once per project, instead of including them per-file
--importsNotUsedAsValues <command>Specify emit/checking behavior for imports that are only used for types
--incrementalSave .tsbuildinfo files to allow for incremental compilation of projects
--inlineSourceMapInclude sourcemap files inside the emitted JavaScript
--inlineSourcesInclude source code in the sourcemaps inside the emitted JavaScript
--isolatedModulesEnsure that each file can be safely transpiled without relying on other imports
--jsx <command>Specify what JSX code is generated
--jsxFactory <command>Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'
--jsxFragmentFactory <command>Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'
--jsxImportSource <command>Specify module specifier used to import the JSX factory functions when using jsx: react-jsx*
--keyofStringsOnlyMake keyof only return strings instead of string, numbers or symbols. Legacy option
--lib <command...>Specify a set of bundled library declaration files that describe the target runtime environment
--listEmittedFilesPrint the names of emitted files after a compilation
--listFilesPrint all of the files read during the compilation
--mapRoot <command>Specify the location where debugger should locate map files instead of generated locations
--maxNodeModuleJsDepth <command>Specify the maximum folder depth used for checking JavaScript files from node_modules. Only applicable with allowJs
--module <command>Specify what module code is generated
--moduleResolution <command>Specify how TypeScript looks up a file from a given module specifier
--newLine <command>Set the newline character for emitting files
--noEmitDisable emitting file from a compilation
--noEmitHelpersDisable generating custom helper functions like __extends in compiled output
--noEmitOnErrorDisable emitting files if any type checking errors are reported
--noErrorTruncationDisable truncating types in error messages
--noFallthroughCasesInSwitchEnable error reporting for fallthrough cases in switch statements
--noImplicitAnyEnable error reporting for expressions and declarations with an implied any type
--noImplicitOverrideEnsure overriding members in derived classes are marked with an override modifier
--noImplicitReturnsEnable error reporting for codepaths that do not explicitly return in a function
--noImplicitThisEnable error reporting when this is given the type any
--noImplicitUseStrictDisable adding 'use strict' directives in emitted JavaScript files
--noLibDisable including any library files, including the default lib.d.ts
--noPropertyAccessFromIndexSignatureEnforces using indexed accessors for keys declared using an indexed type
--noResolveDisallow imports, requires or <reference>s from expanding the number of files TypeScript should add to a project
--noStrictGenericChecksDisable strict checking of generic signatures in function types
--noUncheckedIndexedAccessAdd undefined to a type when accessed using an index
--noUnusedLocalsEnable error reporting when a local variables aren't read
--noUnusedParametersRaise an error when a function parameter isn't read
--outDir <command>Specify an output folder for all emitted files
--outFile <command>Specify a file that bundles all outputs into one JavaScript file. If declaration is true, also designates a file that bundles all .d.ts output
--paths <command>Specify a set of entries that re-map imports to additional lookup locations
--plugins <command...>Specify a list of language service plugins to include
--preserveConstEnumsDisable erasing const enum declarations in generated code
--preserveSymlinksDisable resolving symlinks to their realpath. This correlates to the same flag in node
--preserveWatchOutputDisable wiping the console in watch mode
--prettyEnable color and formatting in output to make compiler errors easier to read
--reactNamespace <command>Specify the object invoked for createElement. This only applies when targeting react JSX emit
--removeCommentsDisable emitting comments
--resolveJsonModuleEnable importing .json files
--rootDir <command>Specify the root folder within your source files
--rootDirs <command...>Allow multiple folders to be treated as one when resolving modules
--skipDefaultLibCheckSkip type checking .d.ts files that are included with TypeScript
--skipLibCheckSkip type checking all .d.ts files
--sourceMapCreate source map files for emitted JavaScript files
--sourceRoot <command>Specify the root path for debuggers to find the reference source code
--strictEnable all strict type checking options
--strictBindCallApplyCheck that the arguments for bind, call, and apply methods match the original function
--strictFunctionTypesWhen assigning functions, check to ensure parameters and the return values are subtype-compatible
--strictNullChecksWhen type checking, take into account null and undefined
--strictPropertyInitializationCheck for class properties that are declared but not set in the constructor
--stripInternalDisable emitting declarations that have @internal in their JSDoc comments
--suppressExcessPropertyErrorsDisable reporting of excess property errors during the creation of object literals
--suppressImplicitAnyIndexErrorsSuppress noImplicitAny errors when indexing objects that lack index signatures
--target <command>Set the JavaScript language version for emitted JavaScript and include compatible library declarations
--traceResolutionLog paths used during the moduleResolution process
--tsBuildInfoFile <command>Specify the folder for .tsbuildinfo incremental compilation files
--typeRoots <command...>Specify multiple folders that act like ./node_modules/@types
--types <command...>Specify type package names to be included without being referenced in a source file
--useDefineForClassFieldsEmit ECMAScript-standard-compliant class fields
--useUnknownInCatchVariablesDefault catch clause variables as unknown instead of any