title: @types/react installed React State setting function requires the derived class specified in the useState and no longer accepts base class
body: <p>I have a provider that internally calls</p>
  <pre><code>const [typeInstance, setTypeInstance] = useState&lt;TypeSingleton&gt;();
  ...
  useEffect(() =&gt; {
      const somePromise = async () =&gt; {
           setTypeInstance(await PromiseFunction()); // Type of Promise&lt;IType&gt;
      };
      somePromise();
  });
  </code></pre>
  <p>The definition of TypeSingleton and TypeUtility is as follows:</p>
  <pre><code>class TypeSingleton extends TypeUtility implements ITypeSingleton
  class TypeUtility implements ITypeUtility, IType
  </code></pre>
  <p>After installing @types/react@17.0.41, the input to setTypeInstance starts to fail build and intellisense with the following:</p>
  <p>Argument of type 'IType' is not assignable to parameter of type 'SetStateAction'.
  Type 'IType' is missing the following properties from type 'TypeSingleton': Property1. etc. and however many more.</p>
  <p>Prior to that however, the build completes without errors which is is expected.</p>
  <p>I am unable to modify the return type of PromiseFunction, are there ways around this beyond modifying the type of useState to IType?</p>