Skip to content
You are currently reading docs for v1.x. Go to the latest docs if you are using newer version.

noNamespaceImport

Diagnostic Category: lint/style/noNamespaceImport

Since: v1.6.0 Sources:

Disallow the use of namespace imports.

Namespace imports might impact the efficiency of tree shaking, a process that removes unused code from bundles. The effectiveness of tree shaking largely depends on the bundler (e.g., Webpack, Rollup) and its configuration. Modern bundlers are generally capable of handling namespace imports effectively, but using named imports is recommended for optimal tree shaking and minimizing bundle size.

import * as foo from "foo";
code-block.js:1:8 lint/style/noNamespaceImport ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Avoid namespace imports, it can prevent efficient tree shaking and increase bundle size.

> 1 │ import * as foo from “foo”;
^^^^^^^^^^^^^^^^^^^
2 │

Use named imports instead.

import { foo } from "foo"
import type { bar } from "bar"
import type * as baz from "baz"
biome.json
{
"linter": {
"rules": {
"style": {
"noNamespaceImport": "error"
}
}
}
}