Skip to content

linter: import/export misses duplicate explicit exports in TypeScript #22377

@pjtf93

Description

@pjtf93

What version of Oxlint are you using?

1.64.0

What command did you run?

oxlint --import-plugin -D import/export case.ts

What does your .oxlintrc.json (or oxlint.config.ts) config file look like?

No config file. Reproduced with CLI flags only.

What happened?

Given this case.ts:

  export const foo = function () {};
  function bar() {}
  export { bar as foo };

Oxlint reports no diagnostics:

  Found 0 warnings and 0 errors.

Expected: Oxlint should report the duplicate exported name, matching eslint-plugin-import's documented import/export behavior:

Multiple exports of name 'foo'

This is the duplicate-export shape shown in the upstream docs:
https://github.com/import-js/eslint-plugin-import/blob/v2.32.0/docs/rules/export.md

For comparison, eslint-plugin-import@2.32.0 reports:

  1:14  warning  Multiple exports of name 'foo'  import/export
  3:17  warning  Multiple exports of name 'foo'  import/export

A smaller equivalent repro also misses:

  export const value = 1;
  export { value };

eslint-plugin-import@2.32.0 reports duplicate exports for value, while Oxlint reports no diagnostics.

Disclosure: AI assistance was used to help triage and reduce this repro. The investigation and proposed fix were reviewed locally by me. Tool used: Codex with GPT-5.5.

Metadata

Metadata

Assignees

Labels

Type

Priority

None yet

Effort

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions