1. Будут. Пишется jsdoc для объекта (например для возвращаемого из функции или "обычного") и всё. Конечно косяки подсветки бывают если этот объект гонять долго через разные функции, но этого часто хватает. Сложности определения я думаю нет, смотрится описание типа и потом отслеживается. Необязательные свойства можно задать и так далее.
2. Это может быть не только документацией, о чём я и говорю. Например для google closure compiler его используют как подсказку для компилятора. Или как я многие используют. С актуальностью то же самое, что и в typescript я полагаю - если не будете корректировать типы, то тоже устареет. Просто по-разному пишется. При импорте никуда смотреть не надо, редактор подсвечивает, выдаёт подсказки типов, свойств, аргументов и прочее. Но я согласен, что TS будет читабельнее гораздо. Я когда-то на ActionScript3 писал, и там были типы, хотя это почти тот же JS, и было очень удобно.
2. Это может быть не только документацией, о чём я и говорю. Например для google closure compiler его используют как подсказку для компилятора. Или как я многие используют. С актуальностью то же самое, что и в typescript я полагаю - если не будете корректировать типы, то тоже устареет. Просто по-разному пишется. При импорте никуда смотреть не надо, редактор подсвечивает, выдаёт подсказки типов, свойств, аргументов и прочее. Но я согласен, что TS будет читабельнее гораздо. Я когда-то на ActionScript3 писал, и там были типы, хотя это почти тот же JS, и было очень удобно.