Advantages of teaching basic javascript through typescript At my school the students learn some very basic javascript, and a while ago it was decided to expand on that (by teaching nodejs).

by "basic", I mean that we only teach html manipulation through JS.

We have two options for going about it:


Just teach javascript (es6 modules included)
introduce TypeScript and all that comes with it.


This decision is important because of the students familiarity with java. TypeScript offers more similarity to Java (what with it having, em, types, and all), but it is more complicated to teach than just sticking to javascript.

This decision is influenced greatly by the fact that the students are familiar with Java, which means it has to be a big factor in the choice we make. 

Naturally, no method is "better" than another, but some methods would teach the students valuable skills.

So, which skills (and how significant are those skills) would the students learn, should we teach with typescript, instead of just javascript?
You mention that you are already using ES6, which suggests that package management and complication are not really barrier, though I would expect that many reading this problem are not setup to ensure node and npm are installed and/or may have access to git/ssh protocols for fetching dependencies or projects. So, the first thing I'd point out is that for some readers, compiling TypeScript could be a barrier that reduces is teaching value.

The second and more relevant point is that JavaScript is dynamically typed language. There is value in tools like Flow and TypeScript, especially in production systems, but there is also a great amount of value learning how to program in a dynamic type system. If you're already teaching Java, there are few better choices to teach strategies, advantages and disadvantages to dynamically typed systems. Some students will prefer that type of programming over strictly typed languages.