title: TypeScript 2.8.3 Type must have a Symbol.iterator method that returns an iterator
body: <p>I am running into an error that says</p>
  <pre><code>Type must have a '[Symbol.iterator]()' method that returns an iterator.
  </code></pre>
  <p>It hopes on the demarcated line:</p>
  <pre><code>class Test {
      private async do() {
          const done = [...(await this.test())]; // Here's the error
      }
  
      private async *test(): AsyncIterableIterator&lt;string&gt; {
          return;
      }
  }
  </code></pre>
  <p>I have found a few issues in the TypeScript GitHub repository, but none seem to have helped. They all suggest adding new entries to <code>lib</code>. I am using <code>es6</code> target and have added <code>esnext</code>, <code>dom</code> and <code>es2018</code>. This has had zero effect on the error.</p>
  <p>Do I miss more <code>lib</code> entries (which I doubt as the ones I am using are the catchall ones with everything in) or is the code I am using invalid?</p>