title: Interface or type with object as key in typescript
body: <p>I have an object with a series of values:</p>
  <pre><code>const my_enum = {
      value1: 'x-value-1',
      value2: 'x-value-2'
  
  }
  </code></pre>
  <p>I want to use 'x-value-1' and 'x-value-2' as the keys of a interface or a type, something like</p>
  <pre><code>interface my_interface {
      'x-value-1': string;
      'x-value-2': string;
  }
  </code></pre>
  <p>However, I don't want to use my enum to determine the keys, so I can use them on the rest of the code, and if I ever want to change my keys I don't need to worry about my strings all over the place. Is there a way to do something like the following?</p>
  <pre><code>interface my_interface {
      `${value1}`: string;
      `${value2}`: string;
  }
  </code></pre>