{ "parser":"@typescript-eslint/parser", "plugins": ["@typescript-eslint"], "parserOptions": { "ecmaVersion": 7, "sourceType": "module" }, // "extends": ["plugin:@typescript-eslint/recommended"], "rules": { "semi": ["error", "always"], "quotes": ["error", "double"], "eqeqeq":"warn", "indent": ["error", 4], "no-unused-vars": "off", "@typescript-eslint/no-unused-vars": "off", "@typescript-eslint/ban-types":[ "error", { "types": { // add a custom message to help explain why not to use it "Foo": "Don't use Foo because it is unsafe", // add a custom message, AND tell the plugin how to fix it "OldAPI": { "message": "Use NewAPI instead", "fixWith": "NewAPI" }, // un-ban a type that's banned by default "{}": false }, "extendDefaults": false } ], "@typescript-eslint/no-explicit-any":"off", "@typescript-eslint/no-this-alias": [ "error", { "allowDestructuring": false, // Disallow `const { props, state } = this`; true by default "allowedNames": ["self"] // Allow `const self = this`; `[]` by default } ] }, "overrides": [ { "files":["*.ts"], "parser": "@typescript-eslint/parser", "plugins": ["@typescript-eslint"], "extends": ["plugin:@typescript-eslint/recommended"] } ] }