If you've worked in a larger TypeScript codebase or monorepo, you are likely familiar with project references. They are indeed fairly powerful. When you reference a project in your tsconfig.json, new things happen: Importing modules from a referenced project will instead load its output declaration file (.d.ts) If the referenced project produces an outFile, the output file .d.ts file’s declaration