The equals sign is used for supplying a default value to the argument if the caller chooses not to supply a value. This is not related to type hints. The type hint syntax is as your second example has it, with the hint coming after a colon.
def function(arg1: ArgTypeHint = defaultValue) -> ReturnTypeHint:
pass
In your first example, rather than provide a type hint to the caller (which the program execution ignores) you are assigning the Type as the default value. This means that if the function was called without a value for each argument, the argument would have the Type as its value.
For example:
def type_test(arg1: str, arg2 = str) -> None:
print(arg1)
print(arg2)
>>> type_test("first", "second")
first
second
>>> type_test("Just first") # Default value is used for arg2
Just first
<class 'str'>