Heat oil in a pan or pot over medium-high heat. When the oil is hot, add in the whole spices - bay leaf, cinnamon, cardamom, cloves, star anise, cumin seeds and let them crackle.
Add in sliced onion and ginger garlic paste. Saute until the onions are slightly browned.
Add in chopped tomatoes, slit green chillies and season with salt. Saute until tomatoes are soft and mushy.
Add in the marinated prawns and mix everything well. Cook the prawns on medium heat for about 5 minutes.
Drain the water from the soaked rice. Add in the rice, mint leaves and coriander leaves. Give a gentle quick mix.
Add in the water, ghee, season with salt, and give a gentle quick stir.
Cover the pan with a lid and cook the rice on low-medium heat until all the liquid is absorbed and the rice is cooked well. It will take approximately 20 minutes for the rice to cook perfectly.
Turn off the heat and garnish with fried onions and chopped coriander leaves. Allow the pulao to rest for 5-10 minutes.
Remove the lid of the pan and gently fluff the prawn pulao using a fork. Serve hot.