title: Reactjs and typescript error TS2322: Type is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes
body: <p>I have run into a TS2322 error while passing the method searchForBooks as props to SearchBooks component from the JumboBooks component:</p>
  
  <p>JumboBooks.tsx (Parent)</p>
  
  <pre><code>import { RouteComponentProps } from 'react-router';
  ...
  export class JumboBooks extends React.Component&lt;RouteComponentProps&lt;{}&gt;, {}&gt; {
  ...
  searchForBooks(searchFilters: SearchParameters){...}    
  ...
  
   public render() {
          return (
              &lt;div&gt;
  &lt;SearchBooks searchForBooks={this.searchForBooks} /&gt;
  ...
  }
  </code></pre>
  
  <p>SearchBooks.tsx</p>
  
  <pre><code>import { RouteComponentProps } from 'react-router';
  ...
  interface IBookSearchProps {
      searchForBooks:(filters: SearchParameters)=&gt; void; 
  }
  
  export class SearchBooks extends React.Component&lt;IBookSearchProps &amp; RouteComponentProps&lt;{}&gt;, {}&gt; {
  isearchForBooks() {
      var filters: SearchParameters = {
          // fill up parameters based on ref values
      };
  
      this.props.searchForBooks(filters);
    }
    ...
  }
  
  export interface SearchParameters
  {
      ...
  }
  </code></pre>
  
  <p>Error:</p>
  
  <blockquote>
    <p>Error:
        TS2322: Type '{ searchForBooks: (searchFilters: SearchParameters) => void; }' is not assignable to type 'IntrinsicAttributes &amp; IntrinsicClassAttributes &amp; Readonly&lt;{ children?: ReactNode; }>...'.
              Type '{ searchForBooks: (searchFilters: SearchParameters) => void; }' is not assignable to type 'Readonly>'.
                Property 'match' is missing in type '{ searchForBooks: (searchFilters: SearchParameters) => void; }'.</p>
  </blockquote>