The solution in the other thread may be efficient, but is probably an implementation detail that cannot be relied upon.
As it is said in the accepted answer:
So you can use NTuple{N, T} to match any Tuple{...}. The only matter is that you want the function to take tuple types instead of tuples. The solution below is correct and do not rely in any implementation details, while it may be ugly and inefficient.
julia> tuple_type_length(x) = (n = -1; while !(x <: NTuple{n+=1, Any}); end; return n)
tuple_type_length (generic function with 1 method)
julia> tuple_type_length(Tuple{Int, Char})
2
julia> tuple_type_length(Tuple{Int, Char, String})
3