Soak the cashews in hot water for 20 - 30 minutes.
Grind the chopped tomatoes and soaked cashews into a smooth puree and keep it aside.
Heat butter in a pan, add the cumin seeds, bay leaf, cardamom, cloves and cinnamon and fry until they are fragrant.
Then add the ginger garlic paste and fry until the raw smell disappears.
Add the chopped onions and fry until light brown color.
Pour the prepared tomato & cashew puree to it. Add the red chilli powder, cumin powder, coriander powder, chilli powder and turmeric. Combine well.
Stir and cook till the melted butter starts leaving the sides of the pan.
Now add the sliced mushrooms, peas and salt and mix well.
Add water, cover and cook over a medium flame until the pieces are cooked.
When they are done, add the sugar and garam masala and cook for a minute.
Add the crushed kasoori methi and combine well. Turn off the flame and add the milk or fresh cream. Mix everything well.
Serve hot with rice or roti.