8000 [no-unused-vars] False positive for a class in declared namespace · Issue #937 · typescript-eslint/typescript-eslint · GitHub
[go: up one dir, main page]

Skip to content
[no-unused-vars] False positive for a class in declared namespace #937
Closed
@mrlika

Description

@mrlika

Repro

{
  "rules": {
    "@typescript-eslint/no-unused-vars": ["error"]
  }
}
declare namespace shaka {
    class Player {
        public constructor();
        public destroy(): Promise<void>;
    }
}
export class C {
    public player: shaka.Player;

    public constructor() {
        this.player = new shaka.Player();
    }
}

Expected Result

No errors

Actual Result

error 'Player' is defined but never used @typescript-eslint/no-unused-vars

Additional Info

Very similar code but without namespace has no issues:

declare class Player {
    public constructor();
    public destroy(): Promise<void>;
}

export class C {
    public player: Player;

    public constructor() {
        this.player = new Player();
    }
}

Versions

package version
@typescript-eslint/eslint-plugin 2.0.0
@typescript-eslint/parser 2.0.0
TypeScript 3.5.3
ESLint 6.2.0
node 11.14.0
npm 6.7.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinghas prthere is a PR raised to close thispackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginscope analyserIssues that are caused by bugs/incomplete cases in the scope analyser

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0