title: Object with the same keys as another object in typescript?
body: <p>I have a method <code>produce</code> with the following signature:</p>
  <pre><code>interface ProduceConditions {
      [key: string]: Function|Promise&lt;any&gt;;
  }
  
  produce(conditions: ProduceConditions, input: any): Promise&lt;object&gt;|object;
  </code></pre>
  <p>The thing is that the returned (resolved) object has the same keys as the <code>conditions</code> object.</p>