I don't think you can battle Gardenia in Pokemon HeartGold.
let your Pokemon battle
No they can't.
No, you can't battle Maylene and/or Crasher Wake in Heartgold.
You can battle Giovanni but you can only battle Giovanni with the event Celebi that was distributed at Gamestop retail stores for a limited time which is no longer available.
You cannot battle Giovanni in Pokemon HeartGold and SoulSilver through normal game play. The eighth gym is run by Blue, not Giovanni, in these Pokemon versions. However, if you obtained a Celebi via a Nintendo Wi-Fi event (which has long since passed) and go to the Celebi Shrine in the Ilex Forest, the Celebi will take you through time, and you will eventually battle Giovanni.
No, Giovanni doesn't have Persian in his party in Pokémon HeartGold.
I don't think you can battle Gardenia in Pokemon HeartGold.
If you mean your Rival's dad, yes but you need to unlock the Pichu event where Celebi sends you back in time.
find celebie and go back in time you will find Giovanni hiding in a cave.
Yes, you will be able to fight Giovanni in Pokémon HeartGold but only provided you have the Celebi that was distributed for a limited time.
He only appears through the celebi event
You actually do NOT battle him in this game. This is because the Team Rocket you are battling is composed of ex-members that are desperately trying to find Giovanni himself and restart Team Rocket. But, you thwart their plans before they get the chance.
let your Pokemon battle
No they can't.
Giovanni, leader of Team Rocket?
No, you can't battle Maylene and/or Crasher Wake in Heartgold.