Fixes #75
diff --git a/lib/src/utils/cancelable_future.dart b/lib/src/utils/cancelable_future.dart
index 35bfdf5..f2c17d5 100644
--- a/lib/src/utils/cancelable_future.dart
+++ b/lib/src/utils/cancelable_future.dart
@@ -27,7 +27,7 @@
   }
 
   Stream<T> asStream() => _completer.future.asStream();
-  Future catchError(Function onError, {bool test(Object error)}) =>
+  Future<T> catchError(Function onError, {bool test(Object error)}) =>
     _completer.future.catchError(onError, test: test);
   Future/*<S>*/ then/*<S>*/(/*=S*/ onValue(T value), {Function onError}) =>
     _completer.future.then(onValue, onError: onError);