It might be due to the convenience of familiarity, but I disagree about TS. If you forbid any/unknown it doesn't feel at all like an awkward patch, and as far as I can tell the type system is much more powerful than Swift's.
I know you should have defined validators for every single external API, library and database, but at some level it feels silly to do all of this extra work.
In new projects, I've found that it's now very rare to come across a library that doesn't provide typings, or violates the interface.