import pluginQuery from '@tanstack/eslint-plugin-query'; // @ts-expect-error fix package import config from 'eslint-config-ksv741'; // eslint-disable-next-line import/no-anonymous-default-export export default [ ...pluginQuery.configs['flat/recommended'], // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment ...config, { rules: { 'import/no-extraneous-dependencies': ['error', { devDependencies: [ 'eslint.config.ts', 'rsbuild.config.ts', 'configs/**/*', '**/*.test.js', '**/*.test.jsx', '**/*.test.ts', '**/*.test.tsx', '**/__tests__/**', '**/tests/**', '__mocks__/**', ], }], 'import/order': [ 'error', { pathGroups: [ { pattern: '__mocks__/**', group: 'builtin', position: 'before', }, { pattern: 'apps/**', group: 'internal', position: 'after', }, { pattern: 'pages/**', group: 'internal', position: 'after', }, { pattern: 'widgets/**', group: 'internal', position: 'after', }, { pattern: 'features/**', group: 'internal', position: 'after', }, { pattern: 'entities/**', group: 'internal', position: 'after', }, { pattern: 'shared/**', group: 'internal', position: 'after', }, ], distinctGroup: true, groups: [ 'builtin', 'external', 'internal', 'parent', 'sibling', 'object', 'index', 'type', ], 'newlines-between': 'always', alphabetize: { order: 'asc', caseInsensitive: true, }, }, ], '@typescript-eslint/strict-boolean-expressions': 'off', '@typescript-eslint/no-floating-promises': 'off', 'func-style': 'off', 'jsx-a11y/click-events-have-key-events': 'off', 'jsx-a11y/no-static-element-interactions': 'off', 'jsx-a11y/no-noninteractive-element-interactions': 'off', }, }, { ignores: ['./src/shared/api/schema.ts'], }, ];