Shiny leaves depend on the Pokemon's nature, and the route it is on. To my memory, it had nothing to do with types, and is solely dependent on nature/ route match up. Also, since the leaves are so rare, you are not guaranteed a leaf even if your Pokemon's nature matches with the route.
Here's a table showing the nature/ route match ups:
Bulbapedia on Shiny Leaves
It's a bit too long to post here.