title: How to fix "Index signature is missing in type" error?
body: <p>How can I fix the following type error?</p>
  
  <blockquote>
    <p>Argument of type 'Query' is not assignable to parameter of type 'Input'. Index signature is missing in type 'Query'.(2345)</p>
  </blockquote>
  
  <p>I am using the <code>Input</code> type as a generic type (catch-all) for query strings. When I feed an input of type <code>Query</code>, the error is thrown but the underlying JavaScript code runs just fine.</p>
  
  <p><a href="https://www.typescriptlang.org/play?#code/JYOwLgpgTgZghgYwgAgIoFdoE9kG8BQyRyANgPZQQC2AXMgEQAM9yAPgwIz2HHAAOAZ3S1kAsFFABzfAF98+BGRBjkAR0xQsdDNmQBePDyLlKIpvQA0R5PyFmAEhBLlkAdwokAJtzn5QkWEQUAEkQPnQwQ2JkAG0AawgtUXEpAF06MQkQaV9FZUjIFQMAClBwsDpQ8oBKfQA+KOJKMHQoEBswiJj6E2p6VNl5QrBi9WxqoA" rel="noreferrer">TypeScript Playground</a></p>
  
  <pre class="lang-js prettyprint-override"><code>interface Query {
      lorem: "0" | "1"
      ipsum: string
  }
  
  const query: Query = {
      lorem: "0",
      ipsum: "Hello world"
  }
  
  interface Input {
      [key: string]: string
  }
  
  const test = (input: Input) =&gt; {
      return input["lorem"]
  }
  
  test(query)
  </code></pre>