diff --git a/packages/eslint-plugin/src/rules/no-import-type-side-effects.ts b/packages/eslint-plugin/src/rules/no-import-type-side-effects.ts index ce80a654afe5..941aa93e72ae 100644 --- a/packages/eslint-plugin/src/rules/no-import-type-side-effects.ts +++ b/packages/eslint-plugin/src/rules/no-import-type-side-effects.ts @@ -29,6 +29,10 @@ export default util.createRule({ 'ImportDeclaration[importKind!="type"]'( node: TSESTree.ImportDeclaration, ): void { + if (node.specifiers.length === 0) { + return; + } + const specifiers: TSESTree.ImportSpecifier[] = []; for (const specifier of node.specifiers) { if ( diff --git a/packages/eslint-plugin/tests/rules/no-import-type-side-effects.test.ts b/packages/eslint-plugin/tests/rules/no-import-type-side-effects.test.ts index 9dade06a9432..98d7923e4b45 100644 --- a/packages/eslint-plugin/tests/rules/no-import-type-side-effects.test.ts +++ b/packages/eslint-plugin/tests/rules/no-import-type-side-effects.test.ts @@ -18,6 +18,7 @@ ruleTester.run('no-import-type-side-effects', rule, { "import type T, { U } from 'mod';", "import T, { type U } from 'mod';", "import type * as T from 'mod';", + "import 'mod';", ], invalid: [ {