title: Typescript nullable keys in object array type declaration
body: <p>I'm using Typescript to write React Components.
  Currently I'm defining the types of props as Typescript <code>type</code>.
  Here's an example:</p>
  <pre><code>type Props = {
    id: number //required
    name: string | null //optional
  }
  
  type ParentProps = Array&lt;Props&gt;
  
  let props:ParentProps = [
    {
        id:5,
        name:&quot;new&quot;
    },
    {
        id:7,
    }
  ]
  
  //Gives error: Property 'name' is missing in type '{ id: number; }' but required in type 'Props' 
  </code></pre>
  <p>In this case I would like for the <code>type</code> <code>ParentProps</code>  to be just an array of the <code>type</code> <code>Props</code>. In practice, the nullable name key works well for individual objects of type <code>Prop</code>. When declaring an object of type <code>ParentProps</code> this it gives shown in the snippet above.</p>
  <p>For consistency with simpler components I would rather keep using <code>type</code> to define component props, rather than interface. Would anyone have any advice on how to get declare a type to define an array of types objects that allow for certain null keys.</p>
  <p>Thank you.</p>