import js from '@eslint/js'
import globals from 'globals'
import tseslint from 'typescript-eslint'
import prettier from 'eslint-plugin-prettier'
import { defineConfig } from 'eslint/config'
export default defineConfig([
{
files: ['**/*.{js,mjs,cjs,ts,mts,cts}'],
plugins: { js },
extends: ['js/recommended'],
},
{
files: ['**/*.{js,mjs,cjs,ts,mts,cts}'],
languageOptions: {
globals: {
...globals.node,
...globals.es2021,
},
},
},
tseslint.configs.recommended,
{
plugins: {
prettier: prettier,
},
rules: {
'prettier/prettier': 'error',
'@typescript-eslint/no-unused-vars': [
'error',
{ argsIgnorePattern: '^_' },
],
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/no-empty-object-type': 'error',
'prefer-const': 'error',
'no-var': 'error',
'no-use-before-define': 'error',
},
},
{
ignores: ['dist/**', 'node_modules/**', '*.js'],
},
])