This glossary provides high-level definitions for codebase-specific terms, jargon, and abbreviations used across the TypeScript compiler, language service, and build infrastructure. It serves as a central map for developers to navigate the system's internal terminology.
The TypeScript repository is organized into several distinct layers, ranging from the core compiler logic to the server infrastructure that powers editor experiences.
The following diagram illustrates how natural language concepts map to specific implementation entities within the TypeScript codebase.
Natural Language to Code Entity Space
Sources: src/compiler/types.ts1-20 src/compiler/checker.ts1-150 src/server/session.ts1-100 Herebyfile.mjs1-50
The core compiler transforms source text into a Program and validates it using a multi-phase pipeline. Key entities include:
TypeChecker src/compiler/types.ts3730-3850For details, see Compiler and Type System Terms.
Sources: src/compiler/types.ts40-714 src/compiler/types.ts3650-3850 src/compiler/checker.ts1-100
The Language Service provides high-level "editor" features (IntelliSense), while tsserver wraps this service in a JSON-RPC interface for IDEs.
For details, see Language Service and tsserver Terms.
Sources: src/services/services.ts212-300 src/server/editorServices.ts1-200 tests/baselines/reference/api/typescript.d.ts49-126
The infrastructure supporting the development lifecycle relies on specific tools and artifacts.
lib/ directory, used to bootstrap the build of the current source package.json1-50For details, see Build, Test, and Release Terms.
Sources: Herebyfile.mjs1-50 package.json1-100 package-lock.json1-62
The following diagram demonstrates how a user request flows through the different systems defined in this glossary.
Request Lifecycle Diagram
Sources: src/server/session.ts1-100 src/server/editorServices.ts145-200 src/services/services.ts1-100 src/compiler/program.ts1-100