{ "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended" ], "plugins": [ "@typescript-eslint" ], "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": 2018, "sourceType": "module" }, "env": { "browser": true, "node": true }, "ignorePatterns": [ "*.esm.js" ], "rules": { "semi": [ "error", "always", { "omitLastInOneLineBlock": true } ], "space-in-parens": [ "error", "always" ], "array-bracket-spacing": [ "error", "always" ], "object-curly-spacing": [ "error", "always" ], "computed-property-spacing": [ "error", "always" ], "camelcase": "error", "comma-dangle": [ "error", { "arrays": "always-multiline", "objects": "always-multiline", "imports": "always-multiline", "exports": "always-multiline", "functions": "never" } ], "comma-spacing": [ "error", { "before": false, "after": true } ], "eqeqeq": "error", "indent": [ "error", 2, { "SwitchCase": 1, "VariableDeclarator": "first" } ], "no-console": [ "error", { "allow": [ "error" ] } ], "no-empty-function": [ "error", { "allow": [ "methods" ] } ], "@typescript-eslint/no-empty-function": [ "error", { "allow": [ "methods" ] } ], "@typescript-eslint/no-unused-vars": "error", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-empty-interface": "off", "@typescript-eslint/no-var-requires": "off", "@typescript-eslint/explicit-module-boundary-types": [ "error", { "allowArgumentsExplicitlyTypedAsAny": true } ], "@typescript-eslint/ban-types": [ "error", { "types": { "object": false } } ] } }