diff --git a/packages/@vue/cli-plugin-typescript/codemods/__testfixtures__/shims-vue.output.ts b/packages/@vue/cli-plugin-typescript/codemods/__testfixtures__/shims-vue.output.ts index 40f3f4bdf7..506bf2e5c9 100644 --- a/packages/@vue/cli-plugin-typescript/codemods/__testfixtures__/shims-vue.output.ts +++ b/packages/@vue/cli-plugin-typescript/codemods/__testfixtures__/shims-vue.output.ts @@ -1,5 +1,5 @@ declare module '*.vue' { import { DefineComponent } from 'vue'; - const component: DefineComponent; + const component: DefineComponent<{}, {}, any>; export default component; } diff --git a/packages/@vue/cli-plugin-typescript/codemods/migrateComponentType.js b/packages/@vue/cli-plugin-typescript/codemods/migrateComponentType.js index 7f892b2de1..1c2a208331 100644 --- a/packages/@vue/cli-plugin-typescript/codemods/migrateComponentType.js +++ b/packages/@vue/cli-plugin-typescript/codemods/migrateComponentType.js @@ -45,7 +45,14 @@ module.exports = function migrateComponentType (file, api) { // update the component type componentDecl.forEach(({ node }) => { node.id.typeAnnotation = j.tsTypeAnnotation( - j.tsTypeReference(j.identifier('DefineComponent')) + j.tsTypeReference( + j.identifier('DefineComponent'), + j.tsTypeParameterInstantiation([ + j.tsTypeLiteral([]), + j.tsTypeLiteral([]), + j.tsAnyKeyword() + ]) + ) ) })