Presumably it wants to demonstrate best current practice, and provide a completion which works without syntax errors.
Python doesn't require type annotations, but they are encouraged as best current practice. If you don't want to use type annotations, it's easy to remove the -> None
.
Not including the type annotation in the autocompleted function definition would obviously also work, but leave more manual work and cognitive overhead for users who want to use type annotations.
Without the pass
, saving and attempting to run the code would produce a syntax error. You are obviously expected to replace it with useful code, just like you will often want to add additional parameters inside the parentheses, etc.
Ultimately, if you dislike autocompletion, you can customize it or turn it off.