-
Notifications
You must be signed in to change notification settings - Fork 68
/
Copy pathtsconfig.json
38 lines (34 loc) · 1.18 KB
/
tsconfig.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
"compilerOptions": {
// Output options
"outDir": "lib/esm",
"jsx": "react", // import React style
"declaration": true, // Generate .d.ts files
"noEmit": true, // Don't want to output while typechecking
// These two are just defaults, microbundle overrides for other builds
"target": "esnext", // Compile to es5
"module": "esnext", // Export esm syntax
// Support requires in tests
"moduleResolution": "node",
// Supporting types for tests
"types": ["node", "jest", "@testing-library/jest-dom"],
// TS strictness
"strict": true,
"allowUnusedLabels": false,
"allowUnreachableCode": false,
"exactOptionalPropertyTypes": true,
"noFallthroughCasesInSwitch": true,
"noImplicitOverride": true,
"noImplicitReturns": true,
"noPropertyAccessFromIndexSignature": true,
"noUncheckedIndexedAccess": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
// TSC config
"checkJs": true, // Typecheck JS files
"esModuleInterop": true, // Treat commonjs imports like esm
"skipLibCheck": true, // Don't typecheck all deps, only the ones we directly use
"forceConsistentCasingInFileNames": true // Force fs case sensitivity
},
"exclude": ["lib", "example"]
}