{
  "env": {
    "browser": true,
    "node": true,
    "jest": true,
    "amd": true,
    "commonjs": true,
    "es6": true
  },
  "globals": {
    "Promise": false
  },
  "extends": "eslint:recommended",
  "rules": {
    "no-unused-vars": ["warn"],
    "no-constant-condition": ["error", { "checkLoops": false }],
    "indent": ["warn", 2, { "SwitchCase": 1, "ignoredNodes": ["TemplateLiteral"] }],
    "eqeqeq": ["error", "always", { "null": "ignore" }],
    "quotes": ["warn", "single", { "allowTemplateLiterals": true }],
    "semi": ["warn", "always"],
    "operator-linebreak": ["warn", "before"]
  }
}

{
  "env": {
    "browser": true,
    "node": true,
    "jest": true,
    "amd": true,
    "commonjs": true,
    "es6": true
  },
  "globals": {
    "Promise": false
  },
  "extends": "eslint:recommended",
  "rules": {
    "no-unused-vars": ["warn"],
    "no-constant-condition": ["error", { "checkLoops": false }],
    "indent": ["warn", 2, { "SwitchCase": 1, "ignoredNodes": ["TemplateLiteral"] }],
    "eqeqeq": ["error", "always", { "null": "ignore" }],
    "quotes": ["warn", "single", { "allowTemplateLiterals": true }],
    "semi": ["warn", "always"],
    "operator-linebreak": ["warn", "before"],
    "no-use-before-define": ["error", { "functions": false }]
  }
}

Add rule for variables used before defined
Add rule for variables used before defined
