Rinse the basmati rice under cold water until the water runs clear. Soak the rice in water for 30 minutes, then drain.
In a large pot, heat the vegetable oil or ghee over medium heat. Add the cumin seeds, bay leaf, cloves, cardamom pods, and cinnamon stick. Sauté for about 1 minute until fragrant.
Add the sliced onions and cook until golden brown, about 8-10 minutes. Stir in the garlic and ginger, cooking for an additional 2 minutes.
Add the chicken pieces to the pot and cook until they are no longer pink, about 5-7 minutes. Stir in the chopped tomatoes, yogurt, biryani spice mix, turmeric, red chili powder, and salt. Cook for another 5 minutes until the tomatoes soften.
Add the drained rice to the pot and gently mix to combine with the chicken and spices. Pour in the water and bring to a boil. Once boiling, reduce the heat to low, cover the pot, and simmer for 20 minutes.
After 20 minutes, remove the pot from heat and let it sit, covered, for an additional 10 minutes to allow the flavors to meld.
Fluff the biryani with a fork and garnish with chopped cilantro and mint before serving.