DEV Community

loading...

Discussion on: TypeScript's Secret Parallel Universe

Collapse
girvo profile image
Josh Girvin

That was about my experience too. The biggest thing that threw me for a loop and made me realise that there was this "mixing" of concerns going on? import-ing types as if they're actual code... but they're not code! Flow has import type { ... which is much cleaner, but Typescript is so damned useful that it's silly to not use it.

Thread Thread
loilo profile image
Florian Reuschel Author

I don't even dislike the concept of mixing things up. It's pretty neat to be able to import a class which can be used as a constructor as well as a type.

But it obviously is less transparent and really carries the risk of newbies getting burned.

Thread Thread
orta profile image
Orta

Nice! TypeScript 3.8 (in beta ATM) has import type and it would give a compiler error if you used a type-ish import (like a class) from import type in a value position

Thread Thread
loilo profile image
Florian Reuschel Author

Interesting, didn't know that. 👍

For anyone wanting to read more: TypeScript 3.8 beta announcement