What is the type of `L`, and what does it reveal about how the compiler models the `length` of a tuple that contains a rest element of unknown arity?
type Padded<T extends unknown[]> = [head: string, ...rest: T, tail: string];
type L = Padded<[boolean, boolean]>["length"];