With Typescript you need to add an extra compilation step. With that one can just as well not to embed JavaScript but write in the original language.
Teal has an advantage that the typed language can be translated into Lua at runtime so during development it allows for quick prototyping and adding types when the amount of types becomes substantial. But its type system is less powerful than that of TypeScript.