TheDocumentation Index
Fetch the complete documentation index at: https://docs.syntblaze.com/llms.txt
Use this file to discover all available pages before exploring further.
import ... = syntax in TypeScript is a module and namespace aliasing mechanism. It is utilized to bind a local identifier to an external CommonJS/AMD module via require(), or to create a shorthand reference for deeply nested internal namespaces, classes, or enums.
This syntax operates differently from ECMAScript 6 (ES6) standard imports (import ... from ...) and is specifically tied to TypeScript’s module resolution and type-checking phases.
External Module Import (require)
When interfacing with CommonJS or AMD modules, TypeScript uses import = require() to import modules that are exported using TypeScript’s specific export = syntax.
- Type Preservation: Unlike a standard JavaScript
const express = require("express"), theimport = require()syntax imports both the runtime value and the associated TypeScript type definitions. - Emission: When the TypeScript compiler (
tsc) targets CommonJS, this syntax transpiles directly into a standard Node.jsrequire()call:const express = require("express");.
Internal Namespace Aliasing
Theimport = syntax is also used to create local aliases for symbols defined within TypeScript namespace blocks.
- Dual Binding: The alias created by
import =binds to both the type and the value of the referenced entity. You can use the alias in type annotations (let x: DbConn) or as a runtime value (new DbConn()). - Type Erasure: TypeScript applies strict type erasure to namespace aliases. If the alias is used only in type positions (e.g., as an interface or type annotation), the compiler completely removes the
import =statement from the emitted JavaScript. - Value Emission: If the alias is used as a runtime value, the compiler emits a standard
varassignment in the resulting JavaScript to maintain the reference:
Master TypeScript with Deep Grasping Methodology!Learn More





