title: @types/jest index.d.ts file returning error
body: <p>I just npm installed @types/jest to my stenciljs starter app and now, when I go to start my project the newly installed node package is returning several errors. Here are the errors it's returning when I go to <code>npm start</code> my project:</p>
  
  <pre><code>[ ERROR ]  TypeScript: node_modules/@types/jest/index.d.ts:39:30
             A rest parameter must be of an array type.
  
       L39:  type ArgsType&lt;T&gt; = T extends (...args: infer A) =&gt; any ? A : never;
  
  [ ERROR ]  TypeScript: node_modules/@types/jest/index.d.ts:218:112
             A tuple type element list cannot be empty.
  
      L217:   */
      L218:  ction spyOn&lt;T extends {}, M extends keyof T&gt;(object: T, method: M, accessType: 'get'): SpyInstance&lt;T[M], []&gt;;
      L219:  function spyOn&lt;T extends {}, M extends keyof T&gt;(object: T, method: M, accessType: 'set'): SpyInstance&lt;void, [T[M]]&gt;;
  
  [ ERROR ]  TypeScript: node_modules/@types/jest/index.d.ts:220:144
             Type 'ArgsType&lt;T[M]&gt;' does not satisfy the constraint 'any[]'. Type
             '{}' is not assignable to type 'any[]'. Property 'length' is missing
             in type '{}'.
  
      L219:  function spyOn&lt;T extends {}, M extends keyof T&gt;(object: T, method: M, accessType: 'set'): SpyInstance&lt;void, [T[M]]&gt;;
      L220:   T, method: M): T[M] extends (...args: any[]) =&gt; any ? SpyInstance&lt;ReturnType&lt;T[M]&gt;, ArgsType&lt;T[M]&gt;&gt; : never;
      L221:  /**
  
  [ ERROR ]  TypeScript: node_modules/@types/jest/index.d.ts:807:50
             Type 'ArgsType&lt;T[P]&gt;' does not satisfy the constraint 'any[]'. Type
             '{}' is not assignable to type 'any[]'.
  
      L806:  type Mocked&lt;T&gt; = {
      L807:      [P in keyof T]: T[P] &amp; MockInstance&lt;T[P], ArgsType&lt;T[P]&gt;&gt;;
      L808:  } &amp; T;
  </code></pre>
  
  <p>This is my package.json:</p>
  
  <pre><code>...
    "dependencies": {
      "@stencil/core": "~0.15.2",
      "@stencil/router": "~0.3.1",
      "imask": "^4.1.5",
      "jwt-decode": "^2.2.0",
      "material-design-icons": "^3.0.1"
    },
    "license": "MIT",
    "devDependencies": {
      "@types/jest": "^23.3.14",
      "@types/puppeteer": "1.12.1",
      "jest": "23.6.0",
      "jest-cli": "23.6.0",
      "puppeteer": "1.8.0",
      "workbox-build": "3.4.1"
    }
  ...
  </code></pre>
  
  <p>Here is my tsconfig.json:</p>
  
  <pre><code>{
    "compilerOptions": {
      "allowSyntheticDefaultImports": true,
      "allowUnreachableCode": false,
      "declaration": false,
      "experimentalDecorators": true,
      "lib": [
        "dom",
        "es2015"
      ],
      "moduleResolution": "node",
      "module": "esnext",
      "target": "es2017",
      "noUnusedLocals": true,
      "noUnusedParameters": true,
      "jsx": "react",
      "jsxFactory": "h"
    },
    "include": [
      "src"
    ],
    "exclude": [
      "node_modules"
    ]
  }
  </code></pre>
  
  <p>I have tried replicating the error with a fresh stencil starter app and it's not the app. Also, tried deleting my <code>package-lock.json</code> and reinstalling the packages to get rid of any potential conflicts.</p>