title: Incompatible type in mypy seen using **kwargs
body: <p>I have the following code:</p>
  <pre class="lang-py prettyprint-override"><code>def _describe_assoc(
      dxgw_id: str,
      vpgw_id: str = &quot;&quot;
  ) -&gt; DescribeDirectConnectGatewayAssociationsResultTypeDef:
  
      kwargs = {&quot;directConnectGatewayId&quot;: dxgw_id}
      if vpgw_id:
          kwargs[&quot;virtualGatewayId&quot;] = vpgw_id
  
      client: DirectConnectClient = boto3.client(&quot;directconnect&quot;)
      return client.describe_direct_connect_gateway_associations(**kwargs)
  </code></pre>
  <p>When I run mypy I get:</p>
  <pre class="lang-none prettyprint-override"><code>error: Argument 1 to &quot;describe_direct_connect_gateway_associations&quot; of &quot;DirectConnectClient&quot; has
  incompatible type &quot;**Dict[str, str]&quot;; expected &quot;Optional[int]&quot;
  </code></pre>
  <p>I've seen a whole bunch of questions about issues like this here, but in all cases, the answer was to change the function definition. Here, I don't have control of the function definition.</p>
  <p>How can I type all of this properly to satisfy mypy?</p>