title: How to pass rest of props to react component while also having required props defined in an interface
body: <p>So is this the same issue, or am I just missing something?</p>
  
  <pre><code>import * as React from 'react';
  
  interface Props {
      value: string;
  }
  
  const MyComponent = (props: Props) =&gt; {
      const { value, ...rest } = props;
  
      return (
          &lt;input {...rest} type="text" value={value} /&gt;
      );
  }
  
  interface ParentState {
      searchText: string;
  }
  
  class ParentComponent extends React.Component&lt;{}, ParentState&gt; {
      state: ParentState = {
          searchText: ''
      };
  
      onSearchTextChanged = (e: React.FormEvent&lt;HTMLInputElement&gt;) =&gt; {
          this.setState({
              searchText: e.currentTarget.value
          });
      }
  
      render() {
          const { searchText } = this.state;
  
          return (
              &lt;div&gt;
                  &lt;h2&gt;Some Text&lt;/h2&gt;
                  &lt;MyComponent value={searchText} onChange={this.onSearchTextChanged} className="search-input" placeholder="Enter text"/&gt; 
  // Errors here
              &lt;/div&gt;
          )
      }
  }
  
  export default ParentComponent
  </code></pre>
  
  <p>When I have my props for MyComponent defined in an interface, I get the following error:</p>
  
  <p>error TS2339: Property 'onChange' does not exist on type 'IntrinsicAttributes &amp; Props'.</p>
  
  <p>However if I change the props type to any, it compiles just fine.</p>
  
  <pre><code>const MyComponent = (props: any) =&gt; {
  </code></pre>
  
  <p>Is it possible to define the props in an interface so that there are specific props that are required, but also allow additional props to be passed in so I don't have to explicitly add them into the interface?</p>
  
  <p>I'm using TypeScript 2.3.4 and React 15.5.4.</p>