Start with the marination for jackfruit. Take a bowl and add the jackfruit pieces to it. Add all the ingredients mentioned under jackfruit marination and coat the jackfruit pieces properly with the marinade. Rest the marinated jackfruit for 30-45 minutes.
While the jackfruit is resting, start cooking the rice. Take a deep bottomed vessel and fill ¾th of it with water. Add the whole spices and oil and let the water boil. Drain the water from the soaked rice and add the rice to this. Let the rice cook until it's 80% done. Once the rice is cooked, spread it out on a plate so that it cools down completely.
Next, heat oil in a deep bottomed vessel. Add the sliced onions and saute.
Add the marinated jackfruit to the vessel and saute. Cover and let it cook for 15-20 minutes or until the jackfruit pieces become soft. Keep sauteing in between so as not to let the jackfruit stick to the bottom of the vessel. Add water if the mixture turns too dry.
Once the jackfruit is cooked, remove half of the jackfruit mixture and keep aside.
Take half the rice and make a layer. Spread it evenly on top of the jackfruit mixture. Make sure the layer is about half an inch thick.
Next, add a layer of the remaining jackfruit. On top of the jackfruit, sprinkle some biryani masala evenly followed by some saffron milk, kewra water, rose water, chopped mint leaves and coriander leaves.
Cover the top with enough rice so that none of the jackfruit is visible. Top that with 2 tsps of ghee and some biryani masala.
Lastly, top it with fried onions, chopped mint and coriander leaves and close the lid and cook for 8-10 minutes on low to medium flame.
Serve hot!