From c12feb3bc2c8cbd24455c97df4c6d48c9e262643 Mon Sep 17 00:00:00 2001
From: Simen Bekkhus <sbekkhus91@gmail.com>
Date: Sun, 10 Feb 2019 14:09:09 +0100
Subject: [PATCH] moar

---
 packages/jest-mock/src/index.ts | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/packages/jest-mock/src/index.ts b/packages/jest-mock/src/index.ts
index 5a51feeca34c..5283a54d8af1 100644
--- a/packages/jest-mock/src/index.ts
+++ b/packages/jest-mock/src/index.ts
@@ -911,7 +911,7 @@ class ModuleMockerClass {
     return metadata;
   }
 
-  isMockFunction(fn: any): boolean {
+  isMockFunction<T, Y extends unknown[]>(fn: any): fn is Mock<T, Y> {
     return !!fn && fn._isMockFunction === true;
   }
 
@@ -943,7 +943,7 @@ class ModuleMockerClass {
     ? SpyInstance<ReturnType<T[M]>, ArgsType<T[M]>>
     : never;
 
-  spyOn<T extends {}, M extends keyof T>(
+  spyOn<T extends {}, M extends NonFunctionPropertyNames<T>>(
     object: T,
     methodName: M,
     accessType?: 'get' | 'set',
@@ -985,7 +985,7 @@ class ModuleMockerClass {
     return object[methodName];
   }
 
-  private _spyOnProperty<T extends {}, M extends keyof T>(
+  private _spyOnProperty<T extends {}, M extends NonFunctionPropertyNames<T>>(
     obj: T,
     propertyName: M,
     accessType: 'get' | 'set' = 'get',