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 (1,540 forks)batch import
bughelp wantedtypescript

Repository metrics

Stars
 (4,946 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