Before You File a Bug Report Please Confirm You Have Done The Following...
Playground Link
https://typescript-eslint.io/play/#ts=5.2.2&fileType=.tsx&code=JYWwDg9gTgLgBAIgGYQgg3AKFJWcYCeYApnAN5wBiqcAvnElBCIimljtPBYSXAEIBDKHQZMWyVBmzgu5AYIBeoxs1ZT0QA&eslintrc=N4KABGBEBOCuA2BTAzpAXGUEKQAIBcBPABxQGNoBLY-AWhXkoDt8B6Jge1uhXyrPyIAJrUoBbYh2j5UGANqRE0aFMgAaTOGw5iAQ3wALWWDlbtELOe2QmusYnRQAZhw7qzVqLvjwOAdwAVEkQASQkpGUc%2BWEQPbQBfOLAAXQ941IhE%2BKA&tsconfig=N4KABGBEDGD2C2AHAlgGwKYCcDyiAuysAdgM6QBcYoEEkJemy0eAcgK6qoDCAFutAGsylBm3TgwAXxCSgA&tokens=false
Repro Code
ESLint Config
module.exports = {
parser: "@typescript-eslint/parser",
rules: {
"@typescript-eslint/no-restricted-imports": ["error", {
"paths": [
{
"name": "foo",
"allowTypeImports": true
}
]
}]
},
};
tsconfig
Expected Result
The purpose of type-only imports is to ensure that an import has no runtime behavior, so I would expect that the allowTypeImports option disallows side effect imports such as import 'foo'.
Actual Result
Side effect imports are allowed.
Additional Info
This issue was apparently introduced in typescript-eslint/eslint-plugin 6.3.0, as a result of #7379.
Before You File a Bug Report Please Confirm You Have Done The Following...
Playground Link
https://typescript-eslint.io/play/#ts=5.2.2&fileType=.tsx&code=JYWwDg9gTgLgBAIgGYQgg3AKFJWcYCeYApnAN5wBiqcAvnElBCIimljtPBYSXAEIBDKHQZMWyVBmzgu5AYIBeoxs1ZT0QA&eslintrc=N4KABGBEBOCuA2BTAzpAXGUEKQAIBcBPABxQGNoBLY-AWhXkoDt8B6Jge1uhXyrPyIAJrUoBbYh2j5UGANqRE0aFMgAaTOGw5iAQ3wALWWDlbtELOe2QmusYnRQAZhw7qzVqLvjwOAdwAVEkQASQkpGUc%2BWEQPbQBfOLAAXQ941IhE%2BKA&tsconfig=N4KABGBEDGD2C2AHAlgGwKYCcDyiAuysAdgM6QBcYoEEkJemy0eAcgK6qoDCAFutAGsylBm3TgwAXxCSgA&tokens=false
Repro Code
ESLint Config
tsconfig
{ "compilerOptions": { // ... } }Expected Result
The purpose of type-only imports is to ensure that an import has no runtime behavior, so I would expect that the allowTypeImports option disallows side effect imports such as
import 'foo'.Actual Result
Side effect imports are allowed.
Additional Info
This issue was apparently introduced in typescript-eslint/eslint-plugin 6.3.0, as a result of #7379.