I just was surprised that some code was not optimized accordingly and I realized it is because I used something like typeof((Vector, Int, 1)) which unfortunately forgets the type information and returns Tuple{UnionAll, DataType, Int}.
Is there a function which preserves all the type info and returns Tuple{Type{Vector}, Type{Int}, Int} instead?