title: Errors after updating tsconfig.json and package.json
body: <p>For some context, I just began running through the Ahead-of-time compilation cookbook found here, though I don't believe my errors are directly related to it: <a href="https://angular.io/guide/aot-compiler" rel="nofollow noreferrer">https://angular.io/guide/aot-compiler</a></p>
  <p>I am using Visual Studio 2015 and updated my Angular 2 project to the newly released 2.4 and everything built just fine. I then, however, changed my tsconfig.json file to add <code>&quot;lib&quot;: [ &quot;es2015&quot;, &quot;dom&quot; ]</code> to my compilerOptions. The file now looks like this:</p>
  <pre><code>{
    &quot;compilerOptions&quot;: {
      &quot;target&quot;: &quot;es5&quot;,
      &quot;module&quot;: &quot;commonjs&quot;,
      &quot;moduleResolution&quot;: &quot;node&quot;,
      &quot;sourceMap&quot;: true,
      &quot;emitDecoratorMetadata&quot;: true,
      &quot;experimentalDecorators&quot;: true,
      &quot;lib&quot;: [ &quot;es2015&quot;, &quot;dom&quot; ],
      &quot;removeComments&quot;: false,
      &quot;noImplicitAny&quot;: true,
      &quot;outDir&quot;: &quot;dist&quot;,
      &quot;suppressImplicitAnyIndexErrors&quot;: true
    },
    &quot;compileOnSave&quot;: true
  }
  </code></pre>
  <p>After this change, I re-built and got the following build error:</p>
  <blockquote>
  <p>Build: duplicate identifier 'PropertyKey'.</p>
  </blockquote>
  <p>I did some research and decided to remove <code>&quot;@types/core-js&quot;: &quot;^0.9.34&quot;</code> from my package.json file, which seems to have resolved that error, but I now have several instances of the following new errors:</p>
  <blockquote>
  <p>Build: Cannot find name 'Set'</p>
  <p>Build: Cannot find name 'Promise'</p>
  <p>Build: Cannot find name 'Map'</p>
  </blockquote>
  <p>Here is my full package.json file:</p>
  <pre><code>{
    &quot;name&quot;: &quot;angular2-quickstart&quot;,
    &quot;version&quot;: &quot;1.0.0&quot;,
    &quot;scripts&quot;: {
      &quot;start&quot;: &quot;tsc &amp;&amp; concurrently \&quot;tsc -w\&quot; \&quot;lite-server\&quot; &quot;,
      &quot;docker-build&quot;: &quot;docker build -t ng2-quickstart .&quot;,
      &quot;docker&quot;: &quot;npm run docker-build &amp;&amp; docker run -it --rm -p 3000:3000 -p 3001:3001 ng2-quickstart&quot;,
      &quot;pree2e&quot;: &quot;npm run webdriver:update&quot;,
      &quot;e2e&quot;: &quot;tsc &amp;&amp; concurrently \&quot;http-server -s\&quot; \&quot;protractor protractor.config.js\&quot; --kill-others --success first&quot;,
      &quot;lint&quot;: &quot;tslint ./app/**/*.ts -t verbose&quot;,
      &quot;lite&quot;: &quot;lite-server&quot;,
      &quot;postinstall&quot;: &quot;typings install&quot;,
      &quot;test&quot;: &quot;tsc &amp;&amp; concurrently \&quot;tsc -w\&quot; \&quot;karma start karma.conf.js\&quot;&quot;,
      &quot;test-once&quot;: &quot;tsc &amp;&amp; karma start karma.conf.js --single-run&quot;,
      &quot;tsc&quot;: &quot;tsc&quot;,
      &quot;tsc:w&quot;: &quot;tsc -w&quot;,
      &quot;typings&quot;: &quot;typings&quot;,
      &quot;webdriver:update&quot;: &quot;webdriver-manager update&quot;
    },
    &quot;license&quot;: &quot;MIT&quot;,
    &quot;dependencies&quot;: {
      &quot;@angular/common&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/compiler&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/compiler-cli&quot;: &quot;^2.4.1&quot;,
      &quot;@angular/core&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/forms&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/http&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/platform-browser&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/platform-browser-dynamic&quot;: &quot;~2.4.0&quot;,
      &quot;@angular/platform-server&quot;: &quot;^2.4.1&quot;,
      &quot;@angular/router&quot;: &quot;~3.4.0&quot;,
      &quot;@angular/upgrade&quot;: &quot;~2.4.0&quot;,
      &quot;angular-in-memory-web-api&quot;: &quot;~0.1.16&quot;,
      &quot;bootstrap&quot;: &quot;^3.3.7&quot;,
      &quot;core-js&quot;: &quot;^2.4.1&quot;,
      &quot;reflect-metadata&quot;: &quot;^0.1.8&quot;,
      &quot;rxjs&quot;: &quot;5.0.1&quot;,
      &quot;systemjs&quot;: &quot;0.19.39&quot;,
      &quot;zone.js&quot;: &quot;^0.7.4&quot;
    },
    &quot;devDependencies&quot;: {
      &quot;@types/node&quot;: &quot;^6.0.45&quot;,
      &quot;concurrently&quot;: &quot;^3.0.0&quot;,
      &quot;lite-server&quot;: &quot;^2.2.2&quot;,
      &quot;typescript&quot;: &quot;^2.0.3&quot;
    },
    &quot;repository&quot;: {}
  }
  </code></pre>
  <p>To keep updated on new releases, I've pretty much been copying the dependencies portion of the example package.json file here: <a href="https://angular.io/guide/quickstart" rel="nofollow noreferrer">https://angular.io/guide/quickstart</a></p>
  <p>That link is for the JavaScript version because that is the only one I can find, but I'm actually using TypeScript 2.1.4. Because of that, I probably have some parts of this file that are out of date. I'm just not sure how to determine specifically which parts.</p>