title: Mongoose cursor with async operations
body: <p>I am new to mongo and now drowned in whole lot of documentation.All I want is to use mongoose cursor to work async with my data operation inside cursor.It should wait to play next iteration until operation is complete.
  I read in a that we can do so by </p>
  
  <ul>
  <li><blockquote>
    <p>QueryCursor#eachAsync(fn, [options], [options.parallel], [callback])</p>
  </blockquote></li>
  <li><blockquote>
    <p>If fn returns a promise, will wait for the promise to resolve</p>
  </blockquote></li>
  </ul>
  
  <p>Since i am new to mongo I don't know how to create a promise and resolve it later.</p>
  
  <pre><code>var cursor = Users.find({ "is_verified" : false }).cursor();
  cursor.eachAsync(function (doc) { 
      //create promise here
      async.series({
         one: function(callback){
            callback(null,1);
         },
         two: function(callback){
            callback(null,2);
         },
         three: function(callback){
            callback(null,3);
         },
         four: function(callback){
            //resolve promise here
            if() callback(null,4)
         },
     },function(err,result){})
  
  
  }).then(()=&gt;console.log('FINISHED'));
  </code></pre>