Wash and soak the basmati rice for 30 minutes. Wash and chop the vegetables into small cubes. Grind the tomato with skin and take the puree. Grind khus-khus and cashews to a paste. Keep everything ready.
Parboil the vegetables and drain the excess water. Collect in a bowl to use it later. Soak saffron threads in warm milk. Slice the big onion and roast in ghee till it turns golden brown. Roast cashews if using.
In a wide kadai or vessel, boil 8 cups of water adding cinnamon, cloves, cardamom and black stone flower. Add some salt. When the water comes to a roll boil, add lemon juice.Drain the water from the soaked basmati rice and add to the boiling water.
Cook the rice in open pan for nearly 8 minutes. Stir it once or twice in the middle. Make sure you don’t over cook the rice. Rice should be firm and soft. It should be 3/4 th cooked.
Remove the kadai and pass it through a colander/sieve. Run the tap water over the rice to stop cooking process. Drain all the excess water and keep the rice in the colander. Spread it in a wide plate and let it cool completely.
In the mean time, prepare the gravy.Heat oil in a wide kadai and saute the cinnamon, cloves, cardamom and bayleaf. Add the ginger-garlic paste and saute for a minute till raw smell goes off. Now add sliced onions and saute till transparent. Add the ground khus-khus, cashew paste. Mix well. Add tomato puree and mix well for a minute till it becomes thick.
Now add the curd and mix well in low flame. Add the red chilli powder, garam masala powder and salt. Mix well. Lastly add the 3/4th cooked vegetable. Add the collected water from cooked vegetables and cook the mixture very well till veggies are completely cooked and oil floats on top. It will become a semi solid gravy.
Remove the gravy from the kadai to a bowl. Do not wash the kadai because there will be oil leftover in it.
In the same kadai, spread half the rice as first layer. Spread half of the chopped mint+coriander leaves. Now layer the gravy over the rice and cover it with the remaining rice. Spread the remaining coriander+mint leaves. Drizzle the saffron milk at the end and 2 tbsp of ghee.
Now switch on the flame and keep the kadai. Keep the flame as low as possible. Close the kadai with a tight lid and keep a bowl of boiled hot water over the kadai. Let it be for 15 minutes ( Here I did not keep the kadai in dosa pan. I kept in direct low flame). Rice should be cooked in very low flame. This is referred as "DUM" method.
Alternatively you can layer the gravy & rice in microwave safe bowl and cook it for 10 minutes OR you can follow the same in pressure cooker too. All these methods work well. Remove the biryani after the rice is completely cooked. Fluff it with a fork, garnish with roasted onions, nuts roasted in ghee and serve hot with raita !