title: Add typings to firebase collection query
body: <p>I have a function like:</p>
  
  <pre><code>async queryAll(): Promise&lt;Product[]&gt; {
    const response = await this.firestore.collection('products').get();
    return response.docs.map(a =&gt; a.data());
  }
  </code></pre>
  
  <p>And getting error:</p>
  
  <blockquote>
    <p>Type 'DocumentData[]' is not assignable to type 'Product[]'.   Type
    'DocumentData' is missing the following properties from type
    'Product': id, name</p>
  </blockquote>
  
  <p>How can I add proper return typings for this method?</p>
  
  <p>What can I see in <code>firebase/index.ts.d</code>, <code>get</code> function types looks like (I am using npm firebase package):</p>
  
  <p><code>get(options?: GetOptions): Promise&lt;QuerySnapshot&lt;T&gt;&gt;;</code></p>
  
  <p>But not sure how to apply this to my code.</p>