Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork2.8k
Closed
Description
Before You File a Bug Report Please Confirm You Have Done The Following...
- I have tried restarting my IDE and the issue persists.
- I have updated to the latest version of the packages.
- I havesearched for related issues and found none that matched my issue.
- I haveread the FAQ and my problem is not listed.
Playground Link
Repro Code
interfaceTestInterface{foo:string;}export=TestInterface;
ESLint Config
module.exports={parser:"@typescript-eslint/parser",rules:{"no-unused-vars":"off","@typescript-eslint/no-unused-vars":"error"},};
tsconfig
{"compilerOptions": {"composite":true,"module":"commonjs","moduleResolution":"Node","resolveJsonModule":true,"esModuleInterop":true,"target":"es5","noEmitOnError":true,"noImplicitAny":false,"removeComments":false,"strictNullChecks":true,"sourceMap":false }}Expected Result
No errors given.
Actual Result
"'TestInterface' is defined but never used."
Additional Info
In the course of upgrading typescript-eslint from 3.9.1 --> 5.49.0 I started getting a ton of "no-used-var" failures from some of our older projects that still use the old "export = X", "import X = require(...)" syntaxes.
I'm guessing this happened with the scope analysis changes from 4.0? Regardless, I know it's a bit silly considering how out of date "export =" is, but I wasn't sure if they're supposed to be supported or not.