tsconfig.json•1.58 kB
{
"compilerOptions": {
"target": "ES2022",
"module": "NodeNext", // Recommended for Node.js ES Modules
"moduleResolution": "NodeNext", // Align with module setting
"outDir": "./dist",
"rootDir": "./src",
// Strictest settings (some might be implied by strict: true)
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"strictBindCallApply": true,
"strictPropertyInitialization": true, // Might require constructor initialization or definite assignment assertion (!)
"noImplicitThis": true,
"useUnknownInCatchVariables": true,
"alwaysStrict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"exactOptionalPropertyTypes": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"noUncheckedIndexedAccess": true, // Can be noisy, but safer
"noImplicitOverride": true,
"noPropertyAccessFromIndexSignature": true, // Good for preventing errors with index signatures
"allowJs": false,
"resolveJsonModule": true,
"moduleDetection": "force",
"isolatedModules": true,
// Other settings
"esModuleInterop": true,
"skipLibCheck": true, // Keep skipping lib check for faster builds
"forceConsistentCasingInFileNames": true,
"types": ["node", "vitest/globals"]
},
"include": ["src/**/*"], // Only include source files for the main build
"declaration": true,
"sourceMap": true,
"removeComments": false,
"exclude": ["node_modules", "dist", "**/*.test.ts", "**/*.spec.ts", "**/*.bench.ts"]
}