title: TypeScript not type checking array constructed with Array() and populated with fill
body: <p>TypeScript version 2.4.2, compiled with <code>--target ES6</code></p>
  
  <p>The line of code:</p>
  
  <pre><code>var coins: { coin: number}[] = [1,1,1]
  </code></pre>
  
  <p>causes TypeScript to throw </p>
  
  <blockquote>
    <p>error TS2322: Type 'number[]' is not assignable to type '{ coin: number; }[]'</p>
  </blockquote>
  
  <p>However, the line:</p>
  
  <pre><code>var coins: { coin: number}[] = Array(3).fill(1)
  </code></pre>
  
  <p>compiles successfully, without errors.</p>
  
  <p>Is this a TypeScript bug, or is it intended behavior (not type checking an array declared in this manner)?. If so, why?</p>