title: Flow errors on <React.Fragment> or <></>, but not <Fragment>
body: <p>I am using <code>react</code> <strong>v16.3.0</strong> and <code>flow-bin</code> <strong>v0.69.0</strong></p>
  
  <p>Using react <a href="https://reactjs.org/docs/fragments.html" rel="noreferrer">Fragments</a> with either <code>&lt;React.Fragment&gt;</code> or the shorthand <code>&lt;&gt;&lt;/&gt;</code> syntax like so</p>
  
  <pre><code>import React from 'react'
  
  const ComponentA = () =&gt; (
    &lt;React.Fragment&gt;
      &lt;div&gt;Component&lt;/div&gt;
      &lt;div&gt;A&lt;/div&gt;
    &lt;/React.Fragment&gt;
  )
  
  const ComponentB = () =&gt; (
    &lt;&gt;
      &lt;div&gt;Component&lt;/div&gt;
      &lt;div&gt;B&lt;/div&gt;
    &lt;/&gt;
  )
  </code></pre>
  
  <p>Flow complains with the following error (it's an indentical error for both, just showing output for <code>ComponentA</code> here)</p>
  
  <pre><code>Cannot get React.Fragment because property Fragment is missing in object type [1].
  
    24│ const ComponentA = () =&gt; (
    25│   &lt;React.Fragment&gt;
    26│     &lt;div&gt;Component&lt;/div&gt;
    27│     &lt;div&gt;A&lt;/div&gt;
    28│   &lt;/React.Fragment&gt;
  
   /private/tmp/flow/flowlib_2349df3a/react.js
   251│   declare export default {|
   252│     +DOM: typeof DOM,
   253│     +PropTypes: typeof PropTypes,
   254│     +version: typeof version,
   255│     +initializeTouchEvents: typeof initializeTouchEvents,
   256│     +checkPropTypes: typeof checkPropTypes,
   257│     +createClass: typeof createClass,
   258│     +createElement: typeof createElement,
   259│     +cloneElement: typeof cloneElement,
   260│     +createFactory: typeof createFactory,
   261│     +isValidElement: typeof isValidElement,
   262│     +Component: typeof Component,
   263│     +PureComponent: typeof PureComponent,
   264│     +Children: typeof Children,
   265│   |};
  </code></pre>
  
  <p>With an explicit import of <code>Fragment</code>, however, flow does not complain.</p>
  
  <pre><code>import { Fragment, default as React } from 'react'
  
  const ComponentC = () =&gt; (
    &lt;Fragment&gt;
      &lt;div&gt;Component&lt;/div&gt;
      &lt;div&gt;C&lt;/div&gt;
    &lt;/Fragment&gt;
  )
  </code></pre>
  
  <p>What is going on here? I would like to use the <code>&lt;&gt;&lt;/&gt;</code> Fragment shorthand syntax, and this issue is stopping me from doing that for now.</p>
  
  <p>When I dig into the <code>react.js</code> lib def referenced in the error it does appear that the error is factually correct - the export of <code>Fragment</code> <em>is</em> defined and Fragment <em>is not</em> defined as a property on the default export.</p>
  
  <p>But the flow docs <a href="https://reactjs.org/blog/2017/11/28/react-v16.2.0-fragment-support.html#flow" rel="noreferrer">state that flow has support for react Fragments</a>  from <strong>v0.59</strong> onwards.</p>
  
  <p>So is this actually a gap in support that still exists? Or am I doing something wrong? Perhaps I somehow have an outdated lib def or have things configured wrong? I can't find anything googling for the error message, which leads me to suspect it's an issue with my setup. Also I can't quite believe that this wouldn't work out the box.</p>