1. Use `noEmit` if you don't want to use the transpiler -- You can also use babel.
2. Use a modern target, my transpiled code is 1:1.
3. You can use JSDoc type annotations, I use this for some projects.
4. TS works well in functional code bases. If you prefer JavaScript's dynamics, expect pain.
5. You can also use Flow.
6. Your sample size is 3