|  | import eslintConfigPrettier from "eslint-config-prettier"; | 
|  | import stylistic from "@stylistic/eslint-plugin"; | 
|  | import eslint from "@eslint/js"; | 
|  | import tseslint from "typescript-eslint"; | 
|  | import stylisticJs from "@stylistic/eslint-plugin-js"; | 
|  | import { type FlatESLintConfig } from "eslint-define-config"; | 
|  |  | 
|  | const config: FlatESLintConfig[] = [ | 
|  | eslintConfigPrettier, | 
|  | eslint.configs.recommended, | 
|  | stylisticJs.configs["disable-legacy"], | 
|  | ...tseslint.configs.recommended, | 
|  | stylistic.configs.customize({ | 
|  | indent: 4, | 
|  | quotes: "double", | 
|  | semi: true, | 
|  | braceStyle: "1tbs", | 
|  | arrowParens: true, | 
|  | }), | 
|  | { | 
|  | rules: { | 
|  | "no-console": "warn", | 
|  | "@typescript-eslint/no-unused-vars": [ | 
|  | "error", | 
|  | { | 
|  | args: "all", | 
|  | argsIgnorePattern: "^_", | 
|  | caughtErrors: "all", | 
|  | caughtErrorsIgnorePattern: "^_", | 
|  | destructuredArrayIgnorePattern: "^_", | 
|  | varsIgnorePattern: "^_", | 
|  | ignoreRestSiblings: true, | 
|  | }, | 
|  | ], | 
|  | // the following stylistic lints conflict with prettier | 
|  | "@stylistic/operator-linebreak": "off", | 
|  | "@stylistic/indent-binary-ops": "off", | 
|  | "@stylistic/indent": "off", | 
|  | "@stylistic/brace-style": "off", | 
|  | "@stylistic/quotes": "off", | 
|  | }, | 
|  | }, | 
|  | { | 
|  | ignores: ["out/", ".vscode-test/", "node_modules/"], | 
|  | }, | 
|  | ]; | 
|  |  | 
|  | export default config; |