Take a bowl and add the whole chicken. Make sure to clean the cavity and make cuts. Add enough water to cover the chicken. Add vinegar and salt, and mix well. Leave the chicken aside for 1 hour.
Add almonds, cashews, charoli seeds, poppy seeds, cardamom, mace, and cloves in a blender. Add water, and grind to a smooth paste. The shahi masala is ready.
Take a bowl and add curd, ginger garlic paste, coriander powder, red chili powder, Kashmiri red chili powder, garam masala, cumin powder, chaat masala, salt, turmeric powder, black pepper, saffron strands, and lime juice. Mix well. Apply this over the brined chicken and marinate for 2 hours.
Description - Step 2
Prepare the Stuffing
Heat some oil in a pan, and fry two boiled eggs. Add cinnamon sticks and cardamom. Then, add the finely chopped onions and fry till translucent. Add the salt, turmeric powder, coriander powder, chili powder, ginger garlic paste, cumin powder, and garam masala. Mix well. Then, add the tomatoes. Once the tomatoes soften, add the minced chicken and water. Cover and cook for 5-7 minutes.
Description - Step 3
Stuff the Chicken
Add the fried, boiled eggs to the masala, and fill this in the chicken cavity. Tie the legs of the chicken tightly with a thread, and fry the chicken nicely from all sides.
Description - Step 4
Cook the Gravy
Heat oil in a pan. Add cloves, cardamom, and cinnamon sticks, and let it splutter. Add the chopped onions and the ginger garlic paste. Add the chilli powder, salt, cumin powder, coriander powder, garam masala, and turmeric powder. Mix well.
Add the tomato purée and the curd in the mixture. Stir till the gravy is ready. Next, add the shahi masala and mix well till the oil comes on the surface. Add the whole chicken. Cover the dish and cook till the gravy thickens.