> When inferring from a type with multiple call signatures (such as the type of an overloaded function), inferences are made from the last signature (which, presumably, is the most permissive catch-all case)

I mean, it's likely quite true and reasonable in practice, but why not infer the actual signature from the existing ones? #TypeScript has a freaking Turing-complete type system and supposedly as state-of-the-art type inference engine, so why not do something as simple as function overload type merging?