tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"target": "es2016",
"lib": ["es2021", "dom"],
"newLine": "LF",
"module": "esnext",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"strict": true,
"allowUnreachableCode": false,
"allowUnusedLabels": false,
"noEmitOnError": true,
"noImplicitOverride": true,
"noImplicitReturns": true,
"noUnusedLocals": true,
"noFallthroughCasesInSwitch": true,
"noUnusedParameters": true,
// FIXME: enable the two flags below
"noUncheckedIndexedAccess": false,
"exactOptionalPropertyTypes": false,
"forceConsistentCasingInFileNames": true,
"suppressImplicitAnyIndexErrors": true,
"allowSyntheticDefaultImports": true,
"skipLibCheck": true,
"skipDefaultLibCheck": true,
"importHelpers": true,
"downlevelIteration": true,
"esModuleInterop": true,
"resolveJsonModule": true,
"typeRoots": ["node_modules/@types", "typings"],
"types": ["cypress", "node", "chrome-remote-interface"]
},
"ts-node": {
"compilerOptions": {
"module": "commonjs"
}
},
"exclude": ["node_modules", "dist", "example", "**/.*/"]
}