diff --git a/src/mutations/creators.ts b/src/mutations/creators.ts index 3619ea0bf..a9d9ba62f 100644 --- a/src/mutations/creators.ts +++ b/src/mutations/creators.ts @@ -23,6 +23,11 @@ export const createTypeAdditionMutation = ( declaredType: ts.Type, allAssignedTypes: ReadonlyArray, ): TextInsertMutation | TextSwapMutation | undefined => { + // Declared 'any' types inherently can't be incomplete + if (tsutils.isTypeFlagSet(declaredType, ts.TypeFlags.Any)) { + return undefined; + } + // Find any missing flags and symbols (a.k.a. types) const { missingFlags, missingTypes } = collectUsageFlagsAndSymbols(request, declaredType, allAssignedTypes); diff --git a/test/cases/fixes/incompleteTypes/parameterTypes/expected.ts b/test/cases/fixes/incompleteTypes/parameterTypes/expected.ts index 2fa05004e..e48536b9d 100644 --- a/test/cases/fixes/incompleteTypes/parameterTypes/expected.ts +++ b/test/cases/fixes/incompleteTypes/parameterTypes/expected.ts @@ -9,4 +9,8 @@ function passesStringOrBoolean(input: string | boolean) { takesStringOrBoolean(input); } + + function takesAny( + input: any = {} + ) {} })() \ No newline at end of file diff --git a/test/cases/fixes/incompleteTypes/parameterTypes/original.ts b/test/cases/fixes/incompleteTypes/parameterTypes/original.ts index 2fa05004e..e48536b9d 100644 --- a/test/cases/fixes/incompleteTypes/parameterTypes/original.ts +++ b/test/cases/fixes/incompleteTypes/parameterTypes/original.ts @@ -9,4 +9,8 @@ function passesStringOrBoolean(input: string | boolean) { takesStringOrBoolean(input); } + + function takesAny( + input: any = {} + ) {} })() \ No newline at end of file