title: Generate PropTypes from TypeScript
body: <p>I am using React with TypeScript. I am also using PropTypes.
  TypeScript is intended for compile time type checking while PropTypes validate passed props on run time (development mode).
  So I found myself writing types twice. Both TypeScript and PropTypes. For example, component ListingsList:</p>
  
  <pre><code>interface ListingsListProps {
      listings: Listing[];
      height: number;
      width: number;
      rowHeight: number;
      forwardedRef?: Ref&lt;List&gt;;
      className?: string;
  }
  
  const ListingsList: FunctionComponent&lt;ListingsListProps&gt; = props =&gt; {
  ...
  ...
  };
  
  ListingsList.propTypes = {
      listings: PropTypes.arrayOf(listingPropType.isRequired).isRequired,
      height: PropTypes.number.isRequired,
      width: PropTypes.number.isRequired,
      rowHeight: PropTypes.number.isRequired,
      forwardedRef: PropTypes.shape({ current: PropTypes.instanceOf(List).isRequired }),
      className: PropTypes.string,
  };
  </code></pre>
  
  <p>Each time I made a mistake (defining a property differently in PropTypes and in TypeScript), I get typescript error. Sometimes I don't really know how to define the PropType. For example, when passing History property from 'history'. I don't want to define History PropType myself because it has a complicated shape.
  I saw there are projects that generates TypeScript from PropTypes but I really don't like it because TypeScript is much stronger, I can define more detailed types.
  I am looking for a way to generate PropTypes from TypeScript, and I think this is a must feature for React developers.</p>