varwriter=require('./')varws=writer(write,flush)ws.on('finish',function(){console.log('finished')})ws.write('hello')ws.write('world')ws.end()functionwrite(data,enc,cb){// i am your normal ._write methodconsole.log('writing',data.toString())cb()}functionflush(cb){// i am called before finish is emittedsetTimeout(cb,1000)// wait 1 sec}