Skip to content

Node Target Mapping

Jake Bailey edited this page Mar 12, 2023 · 14 revisions

Recommended Node TSConfig settings

You can let TypeScript compile as little as possible by knowing what the baseline support for ECMAScript features are available in your node version

You can also use https://github.com/tsconfig/bases/ to find tsconfig.jsons to extend, simplifying your own JSON files to just the options for your project.

To update this file, you can use node.green to map to the different options in microsoft/typescript@src/lib

Node 18

{
  "compilerOptions": {
    "lib": ["ES2022"],
    "module": "commonjs",
    "target": "ES2022"
  }
}

Node 16

{
  "compilerOptions": {
    "lib": ["ES2021"],
    "module": "commonjs",
    "target": "ES2021"
  }
}

Node 14

{
  "compilerOptions": {
    "lib": ["ES2020"],
    "module": "commonjs",
    "target": "ES2020"
  }
}

Node 12

{
  "compilerOptions": {
    "lib": ["ES2019"],
    "module": "commonjs",
    "target": "ES2019"
  }
}

Node 10

{
  "compilerOptions": {
    "lib": ["es2018"],
    "module": "commonjs",
    "target": "es2018"
  }
}

Note: Follow issue #20411 for more information on changes to the es2018 target/lib.

Node 8

{
  "compilerOptions": {
    "lib": ["es2017"],
    "module": "commonjs",
    "target": "es2017"
  }
}
Clone this wiki locally