title: How to resolve Flow type error from Jest mocking
body: <p>I am using Jest to mock certain functions from a module and to test in the following manner:</p>
  
  <pre class="lang-js prettyprint-override"><code>jest.mock("module", () =&gt; ({
    funcOne: jest.fn(),
    funcTwo: jest.fn(),
    ...
  }));
  
  import {funcOne, funcTwo, ...} from "module";
  
  test("something when funcOne returns 'foo'", () =&gt; {
    funcOne.mockImplementation(() =&gt; 'foo');  // &lt;- Flow error
    expect(...)
  });
  
  test("that same thing when funcOne returns 'bar'", () =&gt; {
    funcOne.mockImplementation(() =&gt; 'bar');  // &lt;- Flow error
    expect(...)
  });
  </code></pre>
  
  <p>How can I stop Flow from reporting a <strong><code>property 'mockImplementation' not found in statics of function</code></strong> error <strong>without error suppression</strong> (e.g. <code>$FlowFixMe</code>)?</p>
  
  <p>I understand that the issue comes from the fact that the functions defined in the module are not Jest-mocked functions and, as far as Flow is concerned, do not contain methods like <code>mockImplementation</code>, <code>mockReset</code>, etc.</p>