title: How to prevent TypeScript from interrupting Webpack building on unresolved variables declared on Webpack's ProvidePlugin?
body: <p>Is there a way to prevent WebPack's building process from failing after typescript compiler start yelling on unresolved variables that actually are already configured on webpack's ProvidePlugin configuration? </p>
  
  <p><strong>webpack.config.js</strong></p>
  
  <pre><code>plugins: [
  ...
  new webpack.ProvidePlugin({
              $: "jquery",
              jQuery: "jquery",
              "window.jQuery": "jquery",
              "_": "underscore",
              "underscore": "underscore"
              //'process.env.NODE_ENV': '"development"'
          }),
  
  ]
  </code></pre>
  
  <p><strong>tsconfig.json</strong></p>
  
  <pre><code>{
    "compilerOptions": {
  
  
      "target": "es5",
      "module": "commonjs",
      "moduleResolution": "node",
      "sourceMap": true,
      "emitDecoratorMetadata": true,
      "experimentalDecorators": true,
      "removeComments": false,
      "noImplicitAny": false,
      "suppressImplicitAnyIndexErrors": true,
      "declaration": false
    },
    "exclude": [
      "node_modules",
      "typings/main",
      "typings/main.d.ts"
    ]
  }
  </code></pre>
  
  <p><a href="https://webpack.github.io/docs/list-of-plugins.html#provideplugin" rel="noreferrer">https://webpack.github.io/docs/list-of-plugins.html#provideplugin</a></p>
  
  <p>From my experience, the typescript is not aware of which variables will be injected into the module and as result the build is not completed.</p>
  
  <p><strong>This is the output of the build</strong></p>
  
  <pre><code>ERROR in ./src/file1.component.ts
  (77,9): error TS2304: Cannot find name '$'.
  
  ERROR in ./src/file2.component.ts
  (78,13): error TS2304: Cannot find name '$'.
  
  ERROR in ./src/file3.ts
  (155,15): error TS2304: Cannot find name 'jQuery'.
  
  ERROR in ./src/file4.ts
  (108,9): error TS2304: Cannot find name '$'.
  </code></pre>