title: React proptype array with shape
body: <p>Is there a built-in way to use proptypes to ensure that an array of objects being passed to a component is actually an array of objects of a specific shape?</p>
  
  <p>Maybe something like this?</p>
  
  <pre class="lang-js prettyprint-override"><code>annotationRanges: PropTypes.array(PropTypes.shape({
      start: PropTypes.number.isRequired,
      end: PropTypes.number.isRequired,
  })),
  </code></pre>
  
  <p>Am I missing something super obvious here? Seems like this would be highly sought after.</p>