{
  "compilerOptions": {
    "declaration": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "module": "commonjs",
    "moduleResolution": "node",
    "noEmitOnError": true,
    "noFallthroughCasesInSwitch": true,
    "noImplicitAny": false,
    "noImplicitThis": false,
    "noUnusedParameters": false,  // The linter is used for these.
    "noUnusedLocals": false,  // The linter is used for these.
    "rootDir": ".",
    "skipDefaultLibCheck": true,
    "skipLibCheck": true,
    "inlineSourceMap": true,
    "sourceRoot": ".",
    // Inline sources are necessary for our tests to show the proper sources, since we are using
    // Istanbul (not Constantinople) as well, and applying both source maps to get the original
    // source in devtools.
    "inlineSources": true,
    "strictNullChecks": true,
    "target": "es2016",
    "lib": [
      "es2017"
    ],
    "baseUrl": "",
    "typeRoots": [
      "./node_modules/@types"
    ],
    "types": [
      "node"
    ],
  },
  "bazelOptions": {
    "suppressTsconfigOverrideWarnings": true
  },
  "exclude": [
    "bazel-*/**/*",
    "dist/**/*",
    "node_modules/**/*",
    "packages/_/devkit/**/*files/**/*",
    "packages/schematics/*/*/*files/**/*",
    "tmp/**/*",
    "scripts/patches/**/*",
    "tests/**/*"
  ]
}
