{ "env": { "node": true, "mocha": true, "es2021": true }, "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended" ], "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": 12, "sourceType": "script" }, "plugins": [ "@typescript-eslint" ], "rules": { "indent": [ "error", 4, { "SwitchCase": 1 } ], "quotes": [ "error", "double" ], "semi": [ "error", "always" ], "curly": [ "error", "all" ], "eqeqeq": [ "error", "always" ], "default-case-last": [ "error" ], "grouped-accessor-pairs": [ "error", "getBeforeSet" ], "max-classes-per-file": [ "error", 1 ], "no-new-wrappers": [ "error" ], "no-return-await": [ "error" ], "brace-style": [ "error" ], "require-await": [ "error" ], "yoda": [ "error" ], "comma-dangle": [ "error", "never" ], "comma-spacing": [ "error", { "before": false, "after": true } ], "comma-style": [ "error", "last" ], "computed-property-spacing": [ "error", "never" ], "function-call-argument-newline": [ "error", "consistent" ], "function-paren-newline": [ "error", "consistent" ], "implicit-arrow-linebreak": [ "error", "beside" ], "new-cap": [ "error" ], "new-parens": [ "error", "always" ], "newline-per-chained-call": [ "error" ], "no-multiple-empty-lines": [ "error", { "max": 1, "maxEOF": 1, "maxBOF": 0 } ], "no-whitespace-before-property": [ "error" ], "object-curly-spacing": [ "error", "always" ], "operator-assignment": [ "error", "always" ], "prefer-exponentiation-operator": [ "error" ], "quote-props": [ "error", "as-needed" ], "semi-spacing": [ "error", { "before": false, "after": true } ], "semi-style": [ "error", "last" ], "space-before-blocks": [ "error", "always" ], "space-before-function-paren": [ "error", { "anonymous": "always", "named": "never", "asyncArrow": "always" } ], "space-infix-ops": [ "error" ], "switch-colon-spacing": [ "error" ], "arrow-body-style": [ "error", "as-needed", { "requireReturnForObjectLiteral": false } ], "arrow-parens": [ "error", "always" ], "arrow-spacing": [ "error" ], "no-this-before-super": [ "error" ], "no-useless-constructor": [ "error" ], "no-var": [ "error" ], "prefer-promise-reject-errors": [ "error" ], "object-shorthand": [ "error" ], "prefer-arrow-callback": [ "error" ], "prefer-const": [ "error", { "destructuring": "all" } ], "prefer-template": [ "error" ], "rest-spread-spacing": [ "error", "never" ], "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/ban-ts-comment": "off" } }