3 ms·
typedefs are indeed automatically exported but that doesn't mean collisions can happen. You would still have to explicitly import a type Regardless, I hardly c
by culi 11mo ago
typedefs are indeed automatically exported but that doesn't mean collisions can happen. You would still have to explicitly import a type
Regardless, I hardly consider that a "missing basic capability"
I don't know what you mean about types for classes being "poor". Types for classes work exactly the same way
- apatheticonion 11mo agoYou cannot replicate `import type { x } from './foo'` without also re-exporting that import - which causes collisions. The alternative is to do an inline `const foo = /** @type {import('./foo').x} */ ({})` however this gets messy, repetitive and it's difficult to use algebraic types (e.g. `Event & { detail: string }`)
- rangedbarbarian 11mo agoWould `import type { x as y } from `./foo.x` not work?