title: Using flow in react redux project
body: <p>I'm getting some annoying issues while trying to apply type to connect function. I'm not sure, the flow is implemented correctly. I applied the same implementation to 2 separate JS files, one is okay, but the other one keeps raising errors like this</p>
  <pre><code>1. all branches are incompatible: Either  null [1] is incompatible with  function type [2]. Or  null [1] is incompatible with  function type [3].Flow(InferError)
  
  2. a call signature declaring the expected parameter / return type is missing in  `ReduxDispatchProps` [1] but exists in  function type [2] in the return value.Flow(InferError)
  </code></pre>
  <p>btw, Here is my implementation.</p>
  <pre><code>interface ReactProps {
    user?: User;
    asset?: Asset;
    autoUpdate?: boolean;
    std_time?: number;
    handleOpenModalUpdateStandardTime?: (standardTime: StandardTime) =&gt; void;
  }
  
  interface ReduxStateProps {}
  
  interface ReduxDispatchProps {
    updateEntityStandardTime: UpdateEntityStandardTimeHandler;
  }
  
  interface IProps extends ReduxStateProps, ReactProps, ReduxDispatchProps {}
  
  class ComponentA extends Component&lt;IProps,{}&gt; {}
  
  const mapDispatchToProps = (dispatch): ReduxDispatchProps =&gt; {
    return {
      updateEntityStandardTime: (payload: StandardTime, callback: ?Callback) =&gt;
        dispatch(updateEntityStandardTimeRequest(payload, callback)),
    };
  };
  
  export default connect&lt;IProps, ReactProps, _, _, _, _&gt;(
    null,
    mapDispatchToProps
  )(ComponentA);
  
  </code></pre>
  <p>Looking forward to help from you guys!</p>