Let's say I have a function that accepts a callable

```py
def foo(bar):
    print(bar(1, 2))

```

What is the best way to declare that `bar(..)` accepts two ints and returns a str?
Is there a more well-defined way than just documentation?