{
  "compilerOptions": {
    /* Basic Options */
    "target": "es2019", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */
    "module": "es2015", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
    "allowJs": true, /* Allow javascript files to be compiled. */
    "checkJs": false, /* Report errors in .js files. */
    "declaration": false, /* Temporary disabled - generates corresponding '.d.ts' file. */
    "declarationMap": false, /* Generates a sourcemap for each corresponding '.d.ts' file. */
    "inlineSourceMap": true, /* Generates corresponding '.map' file. */
    "outDir": "../../.ts-out/polygerrit-ui/app", /* Not used in bazel. Redirect output structure to the directory. */
    "rootDir": ".", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
    "removeComments": false, /* Emit comments to output*/

    /* Strict Type-Checking Options */
    "strict": true, /* Enable all strict type-checking options. */
    "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
    "strictNullChecks": true, /* Enable strict null checks. */
    "strictFunctionTypes": true, /* Enable strict checking of function types. */
    "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
    "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
    "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
    "isolatedModules": true, /* Require re-exports of types to use "export type {...}" syntax, for dev server compatibility (esbuild) */

    /* Additional Checks */
    "noUnusedLocals": true, /* Report errors on unused locals. */
    "noUnusedParameters": true, /* Report errors on unused parameters. */
    "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
    "noImplicitOverride": true,
    "noFallthroughCasesInSwitch": true,/* Report errors for fallthrough cases in switch statement. */

    "skipLibCheck": true, /* Do not check node_modules */

    /* Module Resolution Options */
    "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
    "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
    "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */

    /* Advanced Options */
    "forceConsistentCasingInFileNames": true, /* Disallow inconsistently-cased references to the same file. */
    "incremental": true,
    "experimentalDecorators": true,

    "allowUmdGlobalAccess": true,

    /* We cannot just use the defaults, because of "webworker". */
    "lib": [
      "dom",
      "dom.iterable",
      "es2021",
      "webworker"
    ],

    /* typeRoots for IDE (see tsconfig_bazel.json for Bazel) */
    "typeRoots": [
      "node_modules/@types",
      "../node_modules/@types"
    ],

    "plugins": [
      {
        "name": "ts-lit-plugin",
        "strict": true,
        "rules": {
          "no-unknown-tag-name": "error",
          "no-unclosed-tag": "error",
          "no-unknown-property": "error",
          "no-unintended-mixed-binding": "error",
          "no-invalid-boolean-binding": "error",
          "no-expressionless-property-binding": "error",
          "no-noncallable-event-binding": "error",
          "no-boolean-in-attribute-binding": "error",
          "no-complex-attribute-binding": "error",
          "no-nullable-attribute-binding": "error",
          "no-incompatible-type-binding": "error",
          "no-invalid-directive-binding": "error",
          "no-incompatible-property-type": "error",
          "no-unknown-property-converter": "error",
          "no-invalid-attribute-name": "error",
          "no-invalid-tag-name": "error"
        }
      }
    ]
  },
  // With the * pattern (without an extension), only supported files
  // are included. The supported files are .ts, .tsx, .d.ts.
  // If allowJs is set to true, .js and .jsx files are included as well.
  // Note: gerrit doesn't have .tsx and .jsx files
  "include": [
    // Items below must be in sync with the src_dirs list in the BUILD file
    // Also items must be in sync with tsconfig_bazel.json, tsconfig_bazel_test.json
    // (include and exclude arrays are overridden when extends)
    "api/**/*",
    "constants/**/*",
    "elements/**/*",
    "embed/**/*",
    "gr-diff/**/*",
    "mixins/**/*",
    "models/**/*",
    "scripts/**/*",
    "services/**/*",
    "styles/**/*",
    "types/**/*",
    "utils/**/*",
    "test/**/*",
    "workers/**/*"
  ]
}
