generated from chrisgrieser/pseudometa-obsidian-plugin-template
-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
tsconfig.json
37 lines (32 loc) · 1.32 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
// DOCS https://www.typescriptlang.org/tsconfig
//──────────────────────────────────────────────────────────────────────────────
{
"compilerOptions": {
"baseUrl": ".",
"moduleResolution": "node",
"module": "ESNext",
"target": "ES2022",
"lib": ["DOM", "ES5", "ES6", "ES7", "es2023"],
// SOURCE strictest tsconfig 2.0.0 https://github.com/tsconfig/bases/blob/main/bases/strictest.json
"strict": true,
"allowUnusedLabels": false,
"allowUnreachableCode": false,
"exactOptionalPropertyTypes": true,
"noFallthroughCasesInSwitch": true,
"noImplicitOverride": true,
"noImplicitReturns": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
// disabled
"noUncheckedIndexedAccess": false, // *too* strict since it complains about every [0]
"noPropertyAccessFromIndexSignature": false, // not useful https://stackoverflow.com/a/70748402/22114136
// helpers
"isolatedModules": true,
"esModuleInterop": false, // setting to true causes issues with Obsidian's imported `moment`
"importHelpers": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true
},
"include": ["src/**/*.ts"],
"$schema": "https://json.schemastore.org/tsconfig"
}