{
  "root": true,
  "parser": "@typescript-eslint/parser",
  "plugins": [
    "@typescript-eslint"
  ],
  "extends": [
    "eslint:recommended",
    "plugin:@typescript-eslint/eslint-recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:security/recommended"
  ],
  "parserOptions": {
    "ecmaVersion": 2017,
    "sourceType": "module",
    "ecmaFeatures": {
      "spread": true,
      "experimentalObjectRestSpread": true
    }
  },
  "globals": {
    "window": true,
    "document": true,
    "angular": true
  },
  "rules": {
    "constructor-super": 2,
    "no-class-assign": 2,
    "no-cond-assign": 2,
    "no-console": 1,
    "no-const-assign": 2,
    "no-constant-condition": 2,
    "no-control-regex": 2,
    "no-debugger": 2,
    "no-delete-var": 2,
    "no-dupe-args": 2,
    "no-dupe-class-members": 2,
    "no-dupe-keys": 2,
    "no-duplicate-case": 2,
    "no-empty-character-class": 2,
    "no-empty-pattern": 2,
    "no-empty": 2,
    "no-ex-assign": 2,
    "no-extra-boolean-cast": 2,
    "no-extra-semi": 2,
    "no-fallthrough": 2,
    "no-func-assign": 2,
    "no-global-assign": 2,
    "no-inner-declarations": 2,
    "no-invalid-regexp": 2,
    "no-irregular-whitespace": 2,
    "no-mixed-spaces-and-tabs": 2,
    "no-new-symbol": 2,
    "no-obj-calls": 2,
    "no-octal": 2,
    "no-redeclare": 2,
    "no-regex-spaces": 2,
    "no-self-assign": 2,
    "no-sparse-arrays": 2,
    "no-this-before-super": 2,
    "no-undef": 2,
    "no-unexpected-multiline": 2,
    "no-unreachable": 2,
    "no-unsafe-finally": 2,
    "no-unsafe-negation": 2,
    "no-unused-labels": 2,
    "no-unused-vars": 1,
    "no-useless-escape": 1,
    "require-yield": 2,
    "use-isnan": 2,
    "valid-typeof": 2,
    "no-var": 2,
    "no-eval": 2,
    "quotes": [
      2,
      "double",
      {
        "allowTemplateLiterals": true
      }
    ],
    "capitalized-comments": 0,
    "no-use-before-define": 2,
    "no-else-return": 2,
    "no-invalid-this": 2,
    "object-shorthand": 2,
    "quote-props": 0,
    "no-array-constructor": 2,
    "no-new-func": 2,
    "no-new-object": 2,
    "prefer-destructuring": 1,
    "prefer-template": 2,
    "no-param-reassign": 2,
    "prefer-spread": 2,
    "arrow-spacing": 2,
    "keyword-spacing": 2,
    "space-infix-ops": 2,
    "space-before-blocks": 2,
    "object-curly-spacing": 0,
    "semi": 2,
    "no-underscore-dangle": 2,
    "prefer-arrow-callback": 2,
    "prefer-const": 2
  },
  "env": {
    "node": true,
    "jest": true,
    "es6": true
  }
}
