Skip to content

Add TypeScript IntelliSense support with eslint-typegen #2757

@2nofa11

Description

@2nofa11
Contributor

Summary

Add eslint-typegen integration to provide TypeScript definitions and IntelliSense for ESLint rule configurations.

Motivation

  • Improve developer experience with TypeScript IntelliSense
  • Provide type safety for ESLint configuration
  • Reduce configuration errors through better tooling support

Dependencies

Requires ESLint v9 upgrade (#2756)

Benefits

  • Full TypeScript IntelliSense for all ESLint rules
  • Type safety prevents configuration errors

Activity

ota-meshi

ota-meshi commented on Jun 11, 2025

@ota-meshi
Member

Thanks for looking into introducing eslint-typegen into eslint-plugin-vue!

However, I believe the ESLint upgrade will not be blocking.
ESLint v9 is required to generate types using eslint-typegen and for users to define types using eslint-typegen.
But I don't think we will force users to use ESLint v9 to publish types generated by eslint-typegen with eslint-plugin-vue.

That being said, I think it will be easier to introduce eslint-typegen after upgrading to ESLint v9. Because it is sometimes difficult to keep CI working with incompatible devDeps 😓

2nofa11

2nofa11 commented on Jun 14, 2025

@2nofa11
ContributorAuthor

Indeed, we may not need to force users to upgrade to ESLint v9.
We’ve confirmed that converting eslint.config.js to ESM format (ES Modules syntax) lets it run without issues on the current version. 🤝

If that works for you, I’ll open a PR that changes eslint.config.js to the .mjs format and adds eslint-typegen. Please take a look!

added a commit that references this issue on Jun 26, 2025
896a67b
added 2 commits that reference this issue on Jun 26, 2025
73d68c9
5c69086
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Participants

      @ota-meshi@2nofa11

      Issue actions

        Add TypeScript IntelliSense support with eslint-typegen · Issue #2757 · vuejs/eslint-plugin-vue