This document provides an overview of using type annotations in Python to enable static type checking. It demonstrates how to annotate basic types like integers, strings, and lists. It also shows how to define type aliases, use optionals, create generic functions, use union types, and annotate callables. The goal is to add type safety to Python code and catch errors earlier using the static type checker Mypy.