aboutsummaryrefslogtreecommitdiff
path: root/tsconfig.base.json
blob: 9c7e8de2a9e3c7dcfd4560eeb1a079655663e689 (plain)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
	"compilerOptions": {
		// #region Projects
		"incremental": true,
		"composite": true,
		// #endregion

		// #region Language and Environment
		"target": "ESNext",
		"lib": ["ESNext"],
		"experimentalDecorators": true,
		"emitDecoratorMetadata": true,
		"useDefineForClassFields": true,
		// #endregion

		// #region Modules
		"module": "ESNext",
		"moduleResolution": "NodeNext",
		"paths": {
			"#lib": ["./lib/index.ts"],
			"#lib/*": ["./lib/*"],
			"#src/*": ["./src/*"],
			"#args": ["./lib/arguments/index.ts"],
			"#commands": ["./src/commands/index.ts"],
			"#tags": ["./lib/common/tags.ts"],
			"#config": ["./config/index.ts"]
		},
		"resolveJsonModule": true,
		"types": ["node"],
		// #endregion

		// #region JavaScript Support
		"allowJs": false,
		"checkJs": false,
		// #endregion

		// #region Emit
		"sourceMap": true,
		"removeComments": true,
		"importsNotUsedAsValues": "remove",
		"newLine": "lf",
		"noEmitOnError": true,
		"preserveConstEnums": true,
		"preserveValueImports": true,
		// #endregion

		// #region Interop Constraints
		"allowSyntheticDefaultImports": true,
		"esModuleInterop": true,
		"forceConsistentCasingInFileNames": true,
		// #endregion

		// #region Type Checking
		"strict": true,
		"useUnknownInCatchVariables": true,
		"noFallthroughCasesInSwitch": true,
		"noImplicitOverride": true,
		"allowUnusedLabels": true,
		"allowUnreachableCode": true,
		// #endregion

		// #region Completeness
		"skipLibCheck": true
		// #endregion
	}
}