title: Typescript Errors while converting a React project
body: <p>This is specific to a React app I am converting from standard ES2015 to Typescript. In my .tsx files (converted from regular .js files) I am getting a couple of typescript errors I do not know how to solve.</p>
  
  <p>The first is: <code>error TS2339: Property 'propTypes' does not exist on type 'typeof App'.</code></p>
  
  <p>This applies to:</p>
  
  <pre><code>App.propTypes = {
    actions: PropTypes.object.isRequired,
    fuelSavingsAppState: PropTypes.object.isRequired
  };
  </code></pre>
  
  <p>I tried creating an interface above that code that defined App like:</p>
  
  <pre><code>interface App {
      propTypes?: any;
  }
  </code></pre>
  
  <p>But this had no effect. Clearly I am new to Typescript so what am I missing?</p>
  
  <p>The other error is: </p>
  
  <pre><code>error TS2605: JSX element type 'Element' is not a constructor function for JSX elements.
    Property 'render' is missing in type 'Element'
  </code></pre>
  
  <p>and this applies to:</p>
  
  <pre><code>{settings.necessaryDataIsProvidedToCalculateSavings ? &lt;FuelSavingsResults savings={settings.savings} /&gt; : null}
  </code></pre>
  
  <p>The error specifically refers to the bit about <code>&lt;FuelSavingsResults</code> </p>
  
  <p>At a complete loss as to where to even start with that. Any suggestions are most welcome.</p>
  
  <hr>
  
  <p>in case it helps, the definition for FuelSavingsResults starts like:</p>
  
  <pre><code>let FuelSavingsResults = (props) =&gt; {
      let savingsExist = NumberFormatter.scrubFormatting(props.savings.monthly) &gt; 0;
      let savingsClass = savingsExist ? 'savings' : 'loss';
      let resultLabel = savingsExist ? 'Savings' : 'Loss';
  </code></pre>
  
  <p>and then has a regular React render method that follows, but I don't think that will matter.</p>