/** @type {import('eslint').Linter.Config} */ module.exports = { extends: [ 'next/core-web-vitals', 'plugin:@typescript-eslint/strict-type-checked', 'plugin:@typescript-eslint/stylistic-type-checked', 'prettier', ], plugins: ['@typescript-eslint', 'prettier'], parser: '@typescript-eslint/parser', root: true, parserOptions: { project: true, tsconfigRootDir: __dirname, }, rules: { "prettier/prettier": "error", "@typescript-eslint/no-non-null-assertion": "off", "@typescript-eslint/consistent-type-definitions": "off", "@typescript-eslint/no-unused-vars": "off", // handled by typescript "react-hooks/exhaustive-deps": 'off', "@typescript-eslint/no-empty-function": "off", "@next/next/no-img-element": "off", // TODO: enable later "@typescript-eslint/prefer-nullish-coalescing": "off", "@typescript-eslint/no-floating-promises": "off", "@typescript-eslint/no-misused-promises": [ "error", { "checksVoidReturn": false, } ], }, };