tsconfig.json•1.94 kB
{
"$schema": "https://json.schemastore.org/tsconfig",
"compilerOptions": {
// ECMAScript Target & Module Settings
"target": "ESNext",
"lib": ["ESNext"],
"module": "ESNext",
"moduleResolution": "bundler",
// Path Mappings
"paths": {
"#*": ["./src/*"]
},
"resolveJsonModule": true,
// JavaScript Support
"allowJs": true,
"checkJs": true,
// Strict Type Checking
"strict": true,
"strictBindCallApply": true,
"strictFunctionTypes": true,
"strictNullChecks": true,
"strictPropertyInitialization": true,
"noFallthroughCasesInSwitch": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"noUncheckedIndexedAccess": true,
// Additional Type Checking
"noUnusedLocals": true,
"noUnusedParameters": false,
"useUnknownInCatchVariables": true,
"allowUnreachableCode": false,
"allowUnusedLabels": false,
"noImplicitOverride": true,
// Output Settings
"outDir": "./dist",
"rootDir": "./src",
"removeComments": true,
"downlevelIteration": true,
"newLine": "lf",
"sourceMap": true,
"declaration": true,
// Module Interop Settings
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
// Additional Features
"forceConsistentCasingInFileNames": true,
"isolatedModules": true,
"skipLibCheck": true
},
"include": [
"./src/**/*.ts",
"./src/**/*.tsx",
"./src/**/*.mts",
"./src/**/*.js",
"./src/**/*.mjs",
"./src/**/*.json",
"./src/**/*.d.ts",
"./src/types/index.d.ts",
"./src/**/*.test.ts"
],
"exclude": [
"node_modules",
"dist",
"coverage",
"**/*.spec.ts",
"src/tests/integration/e2e/**/*.js"
],
// TypeScript 5.0+ Features
"watchOptions": {
"watchFile": "useFsEvents",
"watchDirectory": "useFsEvents",
"fallbackPolling": "dynamicPriority"
}
}