{ "parser": "@typescript-eslint/parser", "plugins": [ "@typescript-eslint" ], "extends": [ "airbnb", "plugin:@typescript-eslint/eslint-recommended", "plugin:@typescript-eslint/recommended", "prettier", "prettier/@typescript-eslint", "prettier/react" ], "settings": { "react": { "version": "999.999.999" }, "import/extensions": [ ".js", ".jsx", ".ts", ".tsx" ], "import/parsers": { "@typescript-eslint/parser": [ ".ts", ".tsx" ] }, "import/resolver": { "node": { "extensions": [ ".js", ".jsx", ".ts", ".tsx" ] } } }, "rules": { "no-console": "off", "no-unused-vars": "off", "no-plusplus": "off", "no-underscore-dangle": "off", "jsx-a11y/anchor-is-valid": "off", "import/extensions": "off", "react/jsx-filename-extension": [ 1, { "extensions": [ ".js", ".jsx", ".tsx" ] } ], "react/prop-types": "off", "react/require-default-props": "off", "react/jsx-props-no-spreading": [ "error", { "html": "ignore" } ], "@typescript-eslint/no-unused-vars": "error", "@typescript-eslint/naming-convention": [ "error", { "selector": "default", "format": [ "camelCase" ] }, { "selector": "variable", "format": [ "camelCase", "UPPER_CASE", "PascalCase" ], "leadingUnderscore": "allow" }, { "selector": "property", "format": [ "camelCase" ], "leadingUnderscore": "allow", "filter": { "regex": "^(__html|_html)$", "match": false } }, { "selector": "parameter", "format": [ "camelCase" ], "leadingUnderscore": "allow" }, { "selector": "typeLike", "format": [ "PascalCase" ] }, { "selector": "enumMember", "format": [ "PascalCase" ] } ], "@typescript-eslint/adjacent-overload-signatures": "error", "@typescript-eslint/array-type": "error", "@typescript-eslint/ban-types": "error", "@typescript-eslint/consistent-type-definitions": "error", "@typescript-eslint/explicit-function-return-type": "error", "@typescript-eslint/explicit-member-accessibility": "error", "@typescript-eslint/member-delimiter-style": "error", "@typescript-eslint/no-array-constructor": "error", "@typescript-eslint/no-empty-interface": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-inferrable-types": "error", "@typescript-eslint/no-misused-new": "error", "@typescript-eslint/no-namespace": "error", "@typescript-eslint/no-non-null-assertion": "off", "@typescript-eslint/no-parameter-properties": "error", "@typescript-eslint/no-use-before-define": "error", "@typescript-eslint/no-var-requires": "error", "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/type-annotation-spacing": "error" } }