

unitCaster String - unitId reference to the unit that casted the buff/debuff. duration Number - The full duration of the debuff in seconds expirationTime Number - The time in seconds (like what returns GetTime()) when the aura will expire. debuffType String - The type of the debuff: Magic, Disease, Poison, Curse, or nothing for those with out a type. Returns 0 for any debuff which doesn't stack. count Number - The number of times the debuff has been applied to the target. rank String - The rank of the spell or effect that caused the debuff. This is the name shown in yellow when you mouse over the icon. Returns name String - The name of the spell or effect of the debuff. Neither "HELPFUL" or "HARMFUL" have meaning for UnitBuff/UnitDebuff, and will be ignored. By default UnitAura has "HELPFUL" as an implicit filter - you cannot get back BOTH helpful and harmful at the same time. "HELPFUL|RAID" or "HELPFUL RAID" = helpful buffs that you can cast on your raid). You can also specify several filters separated by a | or space character to chain multiple filters together (e.g. filter This parameter can be any of "HELPFUL", "HARMFUL", "PLAYER", "RAID", "CANCELABLE", "NOT_CANCELABLE".

index Number - The index of the debuff to retrieve info for.

If the second parameter is a string, then the third parameter is the rank (which can be nil)

Name, rank, icon, count, debuffType, duration, expirationTime, unitCaster, isStealable, shouldConsolidate, spellId UnitBuff and UnitDebuff will serve as aliases with built-in harmful/helpful filters. It will serve as an all-in-one solution for querying unit buffs and debuffs. This function was introduced in Patch 3.0.
