module.exports = { root: true, env: { es6: true }, ignorePatterns: ['.eslintrc.js', '.nyc_output', 'build', 'coverage', 'dist', 'node_modules'], parser: '@typescript-eslint/parser', plugins: ['import', 'functional', '@typescript-eslint'], extends: [ 'eslint:recommended', 'plugin:@typescript-eslint/recommended', 'plugin:eslint-comments/recommended', 'plugin:functional/lite', 'plugin:import/typescript', 'plugin:security/recommended', 'plugin:security-node/recommended', 'prettier', 'prettier/@typescript-eslint', ], rules: { '@typescript-eslint/explicit-module-boundary-types': 'off', '@typescript-eslint/no-unused-vars': [ 'error', { argsIgnorePattern: '^_', varsIgnorePattern: '^_' }, ], 'eslint-comments/disable-enable-pair': ['error', { allowWholeFile: true }], 'eslint-comments/no-unused-disable': 'warn', 'import/order': ['error', { 'newlines-between': 'always', alphabetize: { order: 'asc' } }], 'no-console': ['warn'], 'no-undefined': ['error'], 'no-unused-vars': ['error', { argsIgnorePattern: '^_', varsIgnorePattern: '^_' }], 'sort-imports': ['error', { ignoreDeclarationSort: true, ignoreCase: true }], 'wrap-iife': ['error', 'inside'], }, overrides: [ { files: ['*.js'], rules: { '@typescript-eslint/no-var-requires': 'off', }, }, ], };