Database
[{_id:122434,houseDetails:{hasBedroom:{flag:true},hasKitchen:{flag:false},hasBalcony:{flag:false},hasFoyer:{flag:true},}},{_id:12345,houseDetails:{hasBedroom:{flag:false},hasKitchen:{flag:false},}},{_id:1234524535,houseDetails:{hasBedroom:{flag:true},hasKitchen:{flag:false},}}]
Query
db.collection.aggregate([{$project:{houseDetails:{$objectToArray:"$houseDetails"}}},{$project:{houseDetails:{$filter:{input:"$houseDetails",cond:{$eq:["$$this.v.flag",true]}}}}},{$match:{"houseDetails.0":{"$exists":true}}},{$project:{houseDetails:{$map:{input:"$houseDetails",in:"$$this.k"}}}}])