It's not much different from using some 3rd party linter for another language, like Psalm for PHP or whatever people use for Python. The only difference is Psalm checks special comment syntax (which TypeScript can also do with JSDoc) and Python has basic type annotation syntax in its spec.
Once you realize that TypeScript is a very advanced linter rather than a language, it's much less ridiculous sounding. I used TypeScript on some medium sized JS backends without using TS syntax using the `checkJs` flag and heavy use of JSDoc comments. It offered almost the same checking capabilities, just with a more annoying syntax.
Why is it a bad thing? Most programmers used to have to write assembly language until high level languages became usable. Would it be such a bad thing if Javascript became a low level implementation detail? (I used to write z/OS Assembly and now use Java and Go. My last web development experience was in 2010)
I do think it would be bad if that happened, and there's been talk about it with a proposal to separate JS "syntax" and a JS "core", almost treating JS like assembly. We have WebAssembly for that purpose. I just think using extra type checking tools is ideal when you're working on large scale projects using a dynamically typed scripting language. The real tragedy is writing large scale projects in a scripting language, but that's just the world we live in when browsers are dominant.
Isn't the idea that a typed third-party transpiler for Javascript is needed, a self-evidently bad one?