{"version":3,"file":"index.cjs","names":[],"sources":["../../src/index.ts"],"sourcesContent":["import { rules } from './rules'\nimport type { ESLint, Linter } from 'eslint'\nimport type { RuleModule } from '@typescript-eslint/utils/ts-eslint'\n\ntype RuleKey = keyof typeof rules\n\ninterface Plugin extends Omit<ESLint.Plugin, 'rules'> {\n  rules: Record<RuleKey, RuleModule<any, any, any>>\n  configs: {\n    recommended: ESLint.ConfigData\n    'flat/recommended': Array<Linter.FlatConfig>\n  }\n}\n\nconst plugin: Plugin = {\n  meta: {\n    name: '@tanstack/eslint-plugin-router',\n  },\n  configs: {} as Plugin['configs'],\n  rules,\n}\n\n// Assign configs here so we can reference `plugin`\nObject.assign(plugin.configs, {\n  recommended: {\n    plugins: ['@tanstack/eslint-plugin-router'],\n    rules: {\n      '@tanstack/router/create-route-property-order': 'warn',\n      '@tanstack/router/route-param-names': 'error',\n    },\n  },\n  'flat/recommended': [\n    {\n      plugins: {\n        '@tanstack/router': plugin,\n      },\n      rules: {\n        '@tanstack/router/create-route-property-order': 'warn',\n        '@tanstack/router/route-param-names': 'error',\n      },\n    },\n  ],\n})\n\nexport default plugin\n"],"mappings":";AAcA,IAAM,SAAiB;CACrB,MAAM,EACJ,MAAM,kCACP;CACD,SAAS,EAAE;CACX,8BAAA;CACD;AAGD,OAAO,OAAO,OAAO,SAAS;CAC5B,aAAa;EACX,SAAS,CAAC,iCAAiC;EAC3C,OAAO;GACL,gDAAgD;GAChD,sCAAsC;GACvC;EACF;CACD,oBAAoB,CAClB;EACE,SAAS,EACP,oBAAoB,QACrB;EACD,OAAO;GACL,gDAAgD;GAChD,sCAAsC;GACvC;EACF,CACF;CACF,CAAC"}