How to correctly typecheck nn.Module.__call__

Hi! I am having trouble type checking my modules. Here is an example:

import torch
import torch.nn as nn

class Model(nn.Module):
    def forward(self) -> int:

model = Model()


running mypy shows the following note: Revealed type is 'def () ->' note: Revealed type is 'def (*Any, **Any) -> Any'

The first line is great, the second not so much.
Now if I use the model as a callable: out = model(), reveal_type(out) gets me Any, which is problematic.

Could somebody show me how to properly typecheck my code?
Thanks in advance!