tsconfig.json•1.47 kB
{
"compilerOptions": {
// Target modern JavaScript
"target": "ES2022",
// Use modern Node.js module system
"module": "NodeNext",
"moduleResolution": "NodeNext",
// Enable all strict type checking
"strict": true,
"noUncheckedIndexedAccess": true,
// Module interop for CommonJS compatibility
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
// Output configuration
"outDir": "./dist",
"rootDir": "./src",
"declaration": true,
"declarationMap": true,
"sourceMap": true,
// Import helpers to reduce bundle size
"importHelpers": true,
// Skip type checking of declaration files
"skipLibCheck": true,
// Ensure consistent file naming
"forceConsistentCasingInFileNames": true,
// Enable experimental decorators if needed
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
// Node.js specific
"lib": ["ES2022"],
"types": ["node"],
// Error on unused locals and parameters
"noUnusedLocals": true,
"noUnusedParameters": true,
// Ensure void returns are handled
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
// Modern resolution features
"resolveJsonModule": true,
"allowJs": false
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist", "**/*.test.ts", "**/*.spec.ts"],
"ts-node": {
"esm": true,
"experimentalSpecifierResolution": "node"
}
}