import/named
Verifies that all named imports are part of the set of named exports in the referenced module.
For export, verifies that all named exports exist in the referenced module.
Note: for packages, the plugin will find exported names from jsnext:main (deprecated) or module, if present in package.json. Redux's npm module includes this key, and thereby is lintable, for example.
A module path that is ignored or not unambiguously an ES module will not be reported when imported. Note that type imports and exports, as used by Flow, are always ignored.
Rule Details
Given:
The following is considered valid:
...and the following are reported:
Settings
import/ignore can be provided as a setting to ignore certain modules (node_modules, CoffeeScript, CSS if using Webpack, etc.).
Given:
and
then the following is not reported:
When Not To Use It
If you are using CommonJS and/or modifying the exported namespace of any module at runtime, you will likely see false positives with this rule.
Further Reading
import/ignoresettingjsnext:maindeprecationpkg.module(Rollup)