Database
[{"1":{"type1":1,"type2":2},"2":{"type1":11,"type2":12},"10":{"type1":11,"type2":15}}]
Query
db.collection.aggregate([{$project:{_id:0,data:{$reduce:{input:{"$objectToArray":"$$ROOT"},initialValue:[],in:{$concatArrays:["$$value",{$cond:[{$gt:["$$this.v.type2",10]},[{k:"$$this.k",v:{type2:"$$this.v.type2"}}],[]]}]}}}}},{"$replaceRoot":{"newRoot":{$arrayToObject:"$data"}}}])