Power: If you are training for power, you need to lift a moderate to heavy amount of weight with speed, causing your central nervous system to fatigue. Power training also impedes the mind muscle connection so without sufficient rest you will not be able to lift as quickly as you need to get the bar moving on the next set. Power training includes CrossFit lifts (snatch/clean and jerk) which should be performed when you are in full control of both your body and mind. You should rest at least a 3 minutes between sets if not longer.
Size: Hypertrophy is all about gaining size and working your muscles so that they start to break down, causing your body to repair muscle tissue and grow bigger. You want to work your muscles for a extended period of time to stimulate growth, this will increase time under tension and create a buildup of lactic acid in the muscles being trained. Resting between 60-90 seconds between each set will be enough time for most of the lactic acid to neutralize and allow you to train the same muscle group again.
Strength: If your goal is to build strength you need to lift as heavy as possible for 6 reps or less. When training for strength you should rest for about the same time as when your lifting for power because the volume and intensity is such that it causes both your muscles and brain to fatigue. So keep keep it to at least 3 minutes of rest between sets.
Endurance: If your trying to life for a extended period of time might want to lift a lighter load for higher repetitions, with little time to recover. This trains your muscles to deal with lactic acid more efficiently so you can train for longer with less then 60 seconds of rest.