--- env: { es6: true, node: true, jest: true } parser: "@typescript-eslint/parser" parserOptions: project: tsconfig.json sourceType: module plugins: - "@typescript-eslint" - import extends: - eslint:recommended - plugin:@typescript-eslint/eslint-recommended - plugin:@typescript-eslint/recommended - plugin:@typescript-eslint/recommended-requiring-type-checking - plugin:import/errors - plugin:import/warnings - plugin:import/typescript rules: arrow-body-style: [error, as-needed] arrow-parens: [error, as-needed] class-methods-use-this: 'off' complexity: [warn, { max: 10 }] curly: error default-case: error dot-notation: error eol-last: error guard-for-in: 'off' linebreak-style: [error, unix] max-classes-per-file: 'off' max-lines: 'off' new-parens: error newline-per-chained-call: 'off' no-bitwise: error no-caller: error no-extra-bind: error no-magic-numbers: 'off' no-multiple-empty-lines: [error, { max: 1 }] no-new-func: error no-new-wrappers: error no-plusplus: 'off' no-return-await: error no-sequences: error no-template-curly-in-string: error no-throw-literal: error no-undef-init: error no-var: error object-shorthand: error one-var: [error, never] prefer-const: error prefer-object-spread: error prefer-template: error quote-props: [error, consistent-as-needed] radix: error some-rule: 'off' space-before-function-paren: [error, { anonymous: always, named: never, asyncArrow: always }] yoda: error indent: [error, 4, { SwitchCase: 1, CallExpression: { arguments: first } }] max-len: [error, { code: 80, ignoreComments: true }] spaced-comment: error capitalized-comments: [error, always, { ignoreInlineComments: true }] no-unused-expressions: error no-trailing-spaces: error comma-style: [error, last] comma-dangle: [error, { arrays: never, objects: never, imports: never, exports: never, functions: never }] object-curly-spacing: [error, always] function-call-argument-newline: [error, consistent] function-paren-newline: [error, multiline-arguments] no-duplicate-imports: error quotes: [error, single, { allowTemplateLiterals: true }] block-spacing: error func-call-spacing: error key-spacing: error keyword-spacing: error no-whitespace-before-property: error space-before-blocks: error space-in-parens: error space-infix-ops: error space-unary-ops: [error, { words: true, nonwords: false }] template-tag-spacing: error template-curly-spacing: error operator-linebreak: [error, before] no-unneeded-ternary: error no-useless-computed-key: error semi: [error, never] padded-blocks: [error, { blocks: never, classes: always, switches: never }] padding-line-between-statements: [error, { blankLine: always, prev: "*", next: return }] no-lonely-if: error no-nested-ternary: error eqeqeq: error rest-spread-spacing: error computed-property-spacing: error array-bracket-spacing: error array-bracket-newline: [error, consistent] no-unused-vars: 'off' require-atomic-updates: 'off' no-case-declarations: 'off' "@typescript-eslint/array-type": [error, { default: array-simple }] "@typescript-eslint/explicit-member-accessibility": ['off', { overrides: { constructors: 'off' } }] "@typescript-eslint/member-delimiter-style": [error, { multiline: { delimiter: none }, singleline: { delimiter: comma } }] "@typescript-eslint/no-empty-interface": 'off' "@typescript-eslint/no-explicit-any": 'off' "@typescript-eslint/no-extraneous-class": 'off' "@typescript-eslint/no-parameter-properties": 'off' "@typescript-eslint/no-require-imports": error "@typescript-eslint/no-unnecessary-qualifier": error "@typescript-eslint/prefer-for-of": error "@typescript-eslint/prefer-function-type": error "@typescript-eslint/prefer-interface": 'off' "@typescript-eslint/restrict-plus-operands": error "@typescript-eslint/unified-signatures": error "@typescript-eslint/no-floating-promises": error "@typescript-eslint/no-unused-vars": [error, { argsIgnorePattern: ^_ }] "@typescript-eslint/explicit-function-return-type": 'off' "@typescript-eslint/no-misused-promises": 'off' "@typescript-eslint/no-use-before-define": [error, { functions: false, classes: false }] "@typescript-eslint/ban-types": 'off' import/order: ["error", { newlines-between: always }] import/no-named-as-default: 'off'