title: How annotate a function that takes another function as parameter?
body: <p>I'm experimenting with type annotations in Python. Most cases are pretty clear, except for those functions that take another function as parameter.</p>
  <p>Consider the following example:</p>
  <pre><code>from __future__ import annotations
  
  def func_a(p:int) -&gt; int:
      return p*5
      
  def func_b(func) -&gt; int: # How annotate this?
      return func(3)
      
  if __name__ == &quot;__main__&quot;:
      print(func_b(func_a))
  </code></pre>
  <p>The output simply prints <code>15</code>.</p>
  <p>How should I annotate the <code>func</code> parameter in <code>func_b( )</code>?</p>