title: React.memo with typescript in react
body: <p>I am using React.memo() in a .tsx file(React typescript)</p>
  
  <p>Now I have declared an interface for Props as:</p>
  
  <pre><code>interface Props {
    type?: string;
  }
  </code></pre>
  
  <p>My component looks like:</p>
  
  <pre><code>const Component: React.SFC&lt;Props&gt; = props =&gt; {
    /// return something;
  };
  
  export default memo(Component);
  </code></pre>
  
  <p>Now since type is an optional prop I intend to use it only sometimes.</p>
  
  <p>If I use my component as <code>&lt;Component type="something" /&gt;</code> everything is okay.
  But if I use it as <code>&lt;Component /&gt;</code> I get the error --></p>
  
  <blockquote>
    <p>Type '{ children: string; }' has no properties in common with type
    'IntrinsicAttributes &amp; Props'.</p>
  </blockquote>
  
  <p>This seems to be a very absurd error as I have tried this on Code sandbox and everything works fine. Any ideas about what the error could be?</p>
  
  <p><strong>UPDATE</strong></p>
  
  <p>If I explicitly add a prop in interface like</p>
  
  <pre><code>interface Props {
    type?: string;
    children?: ReactNode;
  }
  </code></pre>
  
  <p>then in that case everything works fine. This is supposed to be implicit but acc to the error its taking as </p>
  
  <blockquote>
    <p>'{ children: string; }'</p>
  </blockquote>
  
  <p>Any ideas???</p>