TS1291
TypeScriptERRORNotableSyntaxHIGH confidence

'X' resolves to a type and must be marked type-only in this file before re-ex...

Production Risk

Build will fail; resolve before shipping.

What this means

A syntax error (TS1291): 'X' resolves to a type and must be marked type-only in this file before re-exporting when 'X' is enabled. Consider using 'import type' where 'X' is imported.. This diagnostic is emitted by the TypeScript compiler when 'X' resolves to a type and must be marked type-only in this file before re-exporting when 'X' is enabled. Consider using 'import type' where 'X' is imported..

Why it happens
  1. 1Incorrect TypeScript syntax or type usage
  2. 2Type mismatch between declared and actual value
How to reproduce

TypeScript compiler reports TS1291 during type checking.

trigger — this will error
trigger — this will error
// Triggers TS1291
// 'X' resolves to a type and must be marked type-only in this file before re-exporting when 'X' is enabled. Consider using 'import type' where 'X' is imported.

expected output

error TS1291: 'X' resolves to a type and must be marked type-only in this file before re-exporting when 'X' is enabled. Consider using 'import type' where 'X' is imported.

Fix

Address the TypeScript diagnostic

WHEN When this error is reported by the compiler

Address the TypeScript diagnostic
// Run the TypeScript compiler for details:
npx tsc --noEmit
// Use the TypeScript playground to test your code:
// https://www.typescriptlang.org/play

Why this works

Review the full error message and location; the TypeScript handbook provides guidance on each error category.

Sources
Official documentation ↗

TypeScript Compiler Diagnostics

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All TypeScript errors