import-js/eslint-plugin-import

False positive: "Multiple default exports" with merged declarations in Typescript

Open

#1,549 opened on Nov 30, 2019

View on GitHub
 (0 comments) (5 reactions) (0 assignees)JavaScript (4,946 stars) (1,540 forks)batch import
bughelp wantedtypescript

Description

In Typescript, a class and an interface with the same name are merged into one type. If I want to export that type as default, I have to export default both the class and the interface.

This is incorrectly flagged with Multiple default exports.

Code:

export default interface Foo {
  a: number
}
export default class Foo {}

Actual:

1:1  error  Multiple default exports  import/export
4:1  error  Multiple default exports  import/export

Expected: No linting error.

Versions:

  • Typescript 3.7.2
  • eslint-plugin-import 2.18.2

Contributor guide