JS files can use JSDoc, which typescript handles (when you edit a JS file in VS Code, you're already secretly using typescript).
If you're using a third party dependency that has type definitions tsserver / VSCode will pick it up regardless of whether you're writing js or ts.
I don't believe many understand how much tsserver is doing behind the scenes in Vscode for JS code bases.. Of course any IDE can do that, because they can use tsserver via the language server protocol haha.
Yeah I use it with CoC in nvim and find it works as well as VSCode.