import-js/eslint-plugin-import

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

Open

#1,549 opened on Nov 30, 2019

 (0 comments) (5 reactions) (0 assignees)JavaScript (1,549 forks)batch import
bughelp wantedtypescript

Repository metrics

Stars
 (5,940 stars)
PR merge metrics
 (Avg merge 138d 22h) (3 merged PRs in 30d)

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