Qual é o estado atual da verificação de tipo estático do JavaScript?

Sei que o Google Closure Compiler faz verificação de tipo - mas existem alternativas, de preferência que não sejam tão fortemente acopladas a uma biblioteca e otimizador?

Se não, existe alguma maneira de ter o Google Closure Compilers faz análise estática?

(Por análise estática aqui, quero dizer coisas como definir tipos para argumentos e assim por diante, posso executar algo para me dar avisos se eu digitar um erro de digitação ou passar o tipo errado