https://github.com/NVlabs/PyCuVSLAM/blob/3ac37364f00421e3c580dfeb489a8be85f3875a1/cuvslam/x86/cuvslam/__init__.py#L3
The __init__ imports from pycuvslam.so but the stubfile is named cuvslam.pyi, therefore the linter ignores the .pyi stub. Renaming this to pycuvslam.pyi fixes this for me, allowing the python linter to infer the types correctly.
Alternatively, renaming pycuvslam.so to cuvslam.so and using from cuvslam import * in the __init__.py also works. not sure which is preferable