{
  "env": {
    "es6": true,
    "node": true,
    "mocha": true
  },
  "extends": "eslint:recommended",
  "rules": {
    "array-callback-return": "warn",
    "brace-style": ["error", "1tbs"],
    "complexity": ["warn", 20],
    "eqeqeq": "error",
    "guard-for-in": "error",
    "indent": ["error", 2],
    "linebreak-style": ["error", "unix"],
    "no-array-constructor": "error",
    "no-console": "warn",
    "no-lonely-if": "warn",
    "no-loop-func": "warn",
    "no-mixed-spaces-and-tabs": ["error"],
    "no-nested-ternary": "error",
    "no-spaced-func": "error",
    "no-trailing-spaces": "error",
    "semi": ["error", "always"],
    "space-before-blocks": "error",
    "space-before-function-paren": ["error", "never"],
    "keyword-spacing": ["error"],
    "curly": ["error", "all"],
    "no-unused-vars": ["error", { "argsIgnorePattern": "next" }],
    "no-const-assign": "error",
    "no-use-before-define": ["error", "nofunc"],
    "block-scoped-var": "error",
    "prefer-const": "error",
    "prefer-template": "warn",
    "template-curly-spacing": ["error", "never"],
    "no-confusing-arrow": ["error", {"allowParens": true}],
    "arrow-parens": ["error", "as-needed"],
    "arrow-body-style": ["error", "as-needed"],
    "generator-star-spacing": ["error", "after"],
    "require-yield": "error"
  }
}
