|
1 | 1 | { |
2 | 2 | "compilerOptions": { |
| 3 | + // Module/Target |
3 | 4 | "target": "ESNext", |
4 | 5 | "module": "ESNext", |
5 | 6 | "moduleResolution": "bundler", |
| 7 | + "moduleDetection": "force", |
6 | 8 | "outDir": "./dist", |
7 | 9 |
|
| 10 | + // Core Strictness |
8 | 11 | "strict": true, |
9 | 12 | "noImplicitAny": true, |
10 | 13 | "strictNullChecks": true, |
|
14 | 17 | "noImplicitThis": true, |
15 | 18 | "useUnknownInCatchVariables": true, |
16 | 19 |
|
17 | | - "allowUnusedLabels": false, |
18 | | - "allowUnreachableCode": false, |
19 | | - "exactOptionalPropertyTypes": true, |
20 | | - "noFallthroughCasesInSwitch": true, |
21 | | - "noImplicitOverride": true, |
| 20 | + // Unused Code Elimination |
| 21 | + "noUnusedLocals": true, |
| 22 | + "noUnusedParameters": true, |
22 | 23 | "noImplicitReturns": true, |
| 24 | + "importsNotUsedAsValues": "remove", |
| 25 | + "preserveValueImports": false, |
| 26 | + |
| 27 | + // Safety/Validation |
| 28 | + "noErrorTruncation": true, |
| 29 | + "exactOptionalPropertyTypes": true, |
23 | 30 | "noPropertyAccessFromIndexSignature": true, |
24 | 31 | "noUncheckedIndexedAccess": true, |
25 | 32 | "noUncheckedSideEffectImports": true, |
| 33 | + |
| 34 | + // Code Quality |
| 35 | + "allowUnusedLabels": false, |
| 36 | + "allowUnreachableCode": false, |
| 37 | + "noFallthroughCasesInSwitch": true, |
| 38 | + "noImplicitOverride": true, |
26 | 39 | "useDefineForClassFields": true, |
27 | | - "noUnusedLocals": true, |
28 | | - "noUnusedParameters": true, |
29 | 40 |
|
| 41 | + // Build/Output |
30 | 42 | "isolatedModules": true, |
31 | 43 | "verbatimModuleSyntax": true, |
32 | 44 | "forceConsistentCasingInFileNames": true, |
33 | 45 | "esModuleInterop": true, |
34 | | - "skipLibCheck": true |
| 46 | + "skipLibCheck": true, |
| 47 | + "checkJs": false, |
| 48 | + "noEmit": true |
35 | 49 | }, |
36 | 50 | "include": [ |
37 | 51 | "./src/**/*.ts", |
|
0 commit comments