Skip to content

[Bug]: Typesript import aliases are treated like actual imports #3287

@charlag

Description

@charlag

Reproduction link or steps

https://stackblitz.com/edit/github-zdltp46a?file=src%2Fentry.ts

import 'electron';
import HandlerDetails = Electron.HandlerDetails;

What is expected?

there's no generated import for alias import (HandlerDetails)

What is actually happening?

var import_electron = __toESM(require_electron(), 1);
var HandlerDetails = Electron.HandlerDetails;

System Info

stackblitz

  System:
    OS: Linux 5.0 undefined
    CPU: (8) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 0 Bytes / 0 Bytes
    Shell: 1.0 - /bin/jsh
  Binaries:
    Node: 18.20.3 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 10.2.3 - /usr/local/bin/npm
    pnpm: 8.15.6 - /usr/local/bin/pnpm
  npmPackages:
    rolldown: latest => 1.0.0-beta.1

Any additional comments?

We cannot write import type HandlerDetails = Electron.HandlerDetails because we run into error TS1392: An import alias cannot use 'import type'.

We can write import type { HandlerDetails } from "electron" in this particular case but it requires code changes for something that's unambiguously a namespace alias.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions