title: Flow type return type for async string
body: <p>I'm defining the return type of an async method as a <strong>Promise &lt; string ></strong> using <strong>flow-type</strong></p>
  
  <p>If I add a try catch loop it doesn't work.</p>
  
  <p><em>Please click on the examples to see the code running on flow.org/try</em></p>
  
  <p><strong>Example 1 Doesn't work </strong> - <a href="https://flow.org/try/#0PQKgBAAgZgNg9gdzCYAoVBDAzgTwHYDGYUAroQC4CWcexccAFAJQBcYACgE5wC2lWAUwA8Wcp0p4A5gD4wAb1RgwYnAqVLOA8iU60MCDJXJgA5FHonFYAL5gCGcgQAWYBgKZy7NLHBgCAdAKc3JxuTDao1qhAA" rel="nofollow noreferrer">Code</a></p>
  
  <pre><code>async function foo(): Promise&lt;string&gt; {
    try {
      return await 'foo'
    } catch (e){ console.error(e) }
  }
  </code></pre>
  
  <p><strong>Example 2  Works </strong> - <a href="https://flow.org/try/#0PQKgBAAgZgNg9gdzCYAoVBDAzgTwHYDGYUAroQC4CWcexccAFAJQBcYACgE5wC2lWAUwA8Wcp0p4A5gD4wAb1RgwnAeRKdaGBBkrkwAcij19qAL6ogA" rel="nofollow noreferrer">Code</a></p>
  
  <pre><code>async function foo(): Promise&lt;string&gt; {
    return await 'foo'
  }
  </code></pre>