Starting from the 1.20 release, PEP 484 type annotations have been included for parts of the NumPy library; annotating the remaining functions being a work in progress. With the release of 1.22 this process has been completed for the main NumPy namespace, which is now fully annotated.
Besides the main namespace, a limited number of sub-packages contain annotations as well. This includes, among others, numpy.testing, numpy.linalg and numpy.random (available since 1.21).