Remix.run Logo
apatheticonion a day ago

You 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 a day ago | parent [-]

Would `import type { x as y } from `./foo.x` not work?