Converts Future and returns Result
Future<Result<D>> toResult() => then((value) => Result.ok(value)) .catchError((error) => error is Exception ? Result<D>.error(error) : Result<D>.error(Exception(error)));