Database

[{queueType:"x",queueStatus:"Approved"},{queueType:"x",queueStatus:"Created"},{queueType:"x",queueStatus:"Created"},{queueType:"x",queueStatus:"Disapproved"},{queueType:"x",queueStatus:"Disapproved"},{queueType:"y",queueStatus:"Approved"},{queueType:"y",queueStatus:"Approved"},{queueType:"y",queueStatus:"Disapproved"},]

Query

db.collection.aggregate([{$group:{_id:{type:"$queueType",status:"$queueStatus"},ApprovedCount:{$sum:{$cond:[{$eq:["$queueStatus","Approved"]},1,0]}},CreatedCount:{$sum:{$cond:[{$eq:["$queueStatus","Created"]},1,0]}},DisapprovedCount:{$sum:{$cond:[{$eq:["$queueStatus","Disapproved"]},1,0]}},}},{$replaceRoot:{newRoot:{$mergeObjects:{$arrayToObject:[[{k:{$concat:["$_id.type","$_id.status"]},v:{$switch:{branches:[{case:{$eq:["$_id.status","Approved"]},then:"$ApprovedCount"},{case:{$eq:["$_id.status","Created"]},then:"$CreatedCount"},{case:{$eq:["$_id.status","Disapproved"]},then:"$DisapprovedCount"},]}}}]]}}}}])

Result