TS1484/TS1205: type must be imported using a type-only import TypeScript Origin: On your device OSI layer 7 · Application Last updated 5 Nov 2026

TypeScript: error TS1484: 'User' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

With verbatimModuleSyntax or isolatedModules, types must be imported/re-exported with import type / export type.

Exact message you may see error TS1484: 'User' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.error TS1205: Re-exporting a type when 'isolatedModules' is set requires using 'export type'.TS1484 TS1205 type-only importTS1371: This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'.
Seen on: TypeScript

Meaning

Use import type { User } from "./types" or inline import { type User }. Re-exports: export type { User }. This lets transpilers drop type-only imports safely. Switch the option off only if you can't update many files; ESLint consistent-type-imports automates the fix.

Common causes

  • Importing types with a normal import under verbatimModuleSyntax
  • Re-exporting types without export type (TS1205)
  • Interface exported via barrels
  • Migration to Vite/SWC
  • importsNotUsedAsValues replaced

⚡ Quick fix

  1. import type { User } from "./types" / import { type User }
  2. export type { User } from "./types"
  3. Use ESLint @typescript-eslint/consistent-type-imports --fix

Detailed fix by platform

TypeScript

  1. import { type User, createUser } from "./users";

How to diagnose

  1. Kind — Type import?
  2. Re-export — export type?
  3. Lint — Autofix?

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

Where this error sits

Origin: On your device. Errors that are often confused with or caused by this one (click to open):

Cannot find module './App.vue' or its corresponding type declarations — TypeScript: error TS2307: Cannot find module './App.vue' or its corresponding type declarations. (Vue)Cannot find module '.…Element type is invalid — Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: undefined (React)Element type is inval…Module not found: Can't resolve 'x' (Next.js build) — Next.js: Module not found: Can't resolve '@/components/Button' / 'lodash' in '/app/src' (Next.js)Module not found: Can…not a constructor — TypeError: x is not a constructor (JavaScript)not a constructorRouter.use middleware — TypeError: Router.use() requires a middleware function but got a Object (Node.js)Router.use middlewareTDZ — ReferenceError: Cannot access 'x' before initialization (JavaScript)TDZTS1005: ';' expected / ',' expected (syntax error) — TypeScript: error TS1005: ';' expected. (TypeScript)TS1005: ';' expected …TS1128: Declaration or statement expected — TypeScript: error TS1128: Declaration or statement expected. (TypeScript)TS1128: Declaration o…TS1484/TS…

Explore the map of this error Full error map →

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.

💬 What worked for others

No tips yet — did something else fix this for you?

Share what worked for you

Tips are checked by an editor before they appear. Links are removed.