Shared TypeScript configurations for Ingram Technologies projects. Strict by default.
bun add -d @ingram-tech/typescript-config typescriptA Next.js app — tsconfig.json:
{
"extends": "@ingram-tech/typescript-config/nextjs.json",
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
"exclude": ["node_modules"]
}A library package — tsconfig.json:
{
"extends": "@ingram-tech/typescript-config/base.json",
"compilerOptions": { "outDir": "dist", "rootDir": "src" },
"include": ["src"]
}strict: trueandnoUncheckedIndexedAccess: true— array/object index access is typed as possibly-undefined, which catches a whole class of bugs.moduleResolution: "bundler",isolatedModules,esModuleInterop— the modern, bundler-friendly baseline.- The base config emits declarations + sourcemaps (for publishable packages);
the Next.js preset turns emit off (
noEmit) since Next handles compilation.