augmentationRoot
uses node:path
Where writeShim puts a type package for each augmentation (named by its path, importing its module), for checks
to list in types: every check in the codebase sees each one, as TypeScript's whole program would.
import type { Layout } from "#codebase/tcmts/loader"; import path from "node:path"; export const augmentationRoot = (lay: Pick<Layout, "shimDir">): string => path.join(lay.shimDir, ".augmentations")