title: Define a list of optional keys for Typescript Record
body: <p>I want to type an object which can only have keys 'a', 'b' or 'c'.</p>
  
  <p>So I can do it as follows:</p>
  
  <pre><code>Interface IList {
      a?: string;
      b?: string;
      c?: string;
  }
  </code></pre>
  
  <p>They are all optional! 
  Now I was wondering if this can be written with <code>Record</code> in just one line</p>
  
  <pre><code>type List = Record&lt;'a' | 'b' | 'c', string&gt;;
  </code></pre>
  
  <p>The only issue is that all keys need to be defined. So I ended up with</p>
  
  <pre><code>type List = Partial&lt;Record&lt;'a' | 'b' | 'c', string&gt;&gt;;
  </code></pre>
  
  <p>This works,  but I can imagine there is a better way to do this without Partial. Is there an other way to make the keys optional inside Record ?</p>