@@ -19681,7 +19681,7 @@ namespace ts {
19681
19681
const parameter = signature.parameters[i];
19682
19682
if (!getEffectiveTypeAnnotationNode(<ParameterDeclaration>parameter.valueDeclaration)) {
19683
19683
const contextualParameterType = getTypeAtPosition(context, i);
19684
- const originalContextualParameterType = signature.isContextuallyTyped ? getTypeAtPosition(context.target! , i) : undefined;
19684
+ const originalContextualParameterType = signature.isContextuallyTyped && context.target ? getTypeAtPosition(context.target, i) : undefined;
19685
19685
assignTypeToParameterAndFixTypeParameters(parameter, contextualParameterType, contextualParameterType === originalContextualParameterType);
19686
19686
for (const tp of getFreeTypeParameters(contextualParameterType)) {
19687
19687
node.contextualTypeParameters = appendIfUnique(node.contextualTypeParameters, tp);
@@ -19693,7 +19693,7 @@ namespace ts {
19693
19693
const parameter = last(signature.parameters);
19694
19694
if (isTransientSymbol(parameter) || !getEffectiveTypeAnnotationNode(<ParameterDeclaration>parameter.valueDeclaration)) {
19695
19695
const contextualParameterType = getTypeOfSymbol(last(context.parameters));
19696
- const originalContextualParameterType = signature.isContextuallyTyped ? getTypeOfSymbol(last(context.target! .parameters)) : undefined;
19696
+ const originalContextualParameterType = signature.isContextuallyTyped && context.target ? getTypeOfSymbol(last(context.target.parameters)) : undefined;
19697
19697
assignTypeToParameterAndFixTypeParameters(parameter, contextualParameterType, contextualParameterType === originalContextualParameterType);
19698
19698
for (const tp of getFreeTypeParameters(contextualParameterType)) {
19699
19699
node.contextualTypeParameters = appendIfUnique(node.contextualTypeParameters, tp);
0 commit comments