root: true env: browser: true es6: true extends: - 'eslint:recommended' - 'plugin:@typescript-eslint/recommended' - 'plugin:jest/recommended' - 'plugin:prettier/recommended' - 'plugin:jest-dom/recommended' globals: Atomics: readonly SharedArrayBuffer: readonly parser: '@typescript-eslint/parser' parserOptions: ecmaVersion: 2018 sourceType: module project: - './tsconfig.json' ignorePatterns: # mirrors tsconfig.json's exclude - '**/__tests__' - '**/*.d.ts' plugins: - '@typescript-eslint' - prettier - jest-dom - unicorn rules: "@typescript-eslint/explicit-function-return-type": - off "@typescript-eslint/no-explicit-any": - off "@typescript-eslint/explicit-module-boundary-types": - error default-case: - error linebreak-style: - error - unix quotes: - error - double - avoid-escape semi: - error - always dot-location: - error - property camelcase: # - error - "off" unicorn/filename-case: - error - case: camelCase "@typescript-eslint/array-type": - error - default: array-simple readonly: array-simple "@typescript-eslint/consistent-indexed-object-style": - error - index-signature "@typescript-eslint/sort-type-union-intersection-members": - error "@typescript-eslint/consistent-type-imports": - error "@typescript-eslint/no-floating-promises": - error "@typescript-eslint/naming-convention": - error - selector: default format: [camelCase] - selector: method modifiers: [private] format: [camelCase] leadingUnderscore: require - selector: method modifiers: [protected] format: [camelCase] leadingUnderscore: require - selector: variable format: [camelCase] trailingUnderscore: forbid leadingUnderscore: forbid - selector: parameter format: [camelCase] trailingUnderscore: allow leadingUnderscore: forbid - selector: [enum, enumMember] format: [PascalCase] - selector: typeLike format: [PascalCase] custom: regex: "(t|T)ype$" match: false