001    package org.bukkit.potion;
002    
003    import java.util.Collection;
004    
005    /**
006     * Represents a brewer that can create {@link PotionEffect}s.
007     */
008    public interface PotionBrewer {
009    
010        /**
011         * Creates a {@link PotionEffect} from the given {@link PotionEffectType},
012         * applying duration modifiers and checks.
013         *
014         * @param potion The type of potion
015         * @param duration The duration in ticks
016         * @param amplifier The amplifier of the effect
017         * @return The resulting potion effect
018         */
019        public PotionEffect createEffect(PotionEffectType potion, int duration, int amplifier);
020    
021        /**
022         * Returns a collection of {@link PotionEffect} that would be applied from
023         * a potion with the given data value.
024         *
025         * @param damage The data value of the potion
026         * @return The list of effects
027         * @deprecated Magic value
028         */
029        @Deprecated
030        public Collection<PotionEffect> getEffectsFromDamage(int damage);
031    }