diff --git a/C_LossOfControl.lua b/C_LossOfControl.lua new file mode 100644 index 0000000..8bbbdaa --- /dev/null +++ b/C_LossOfControl.lua @@ -0,0 +1,49 @@ +---@diagnostic disable: missing-return, lowercase-global +---@meta + +--- +--- C_LossOfControl is a namespace for functions related to loss-of-control effects. +--- +--- @class C_LossOfControl +C_LossOfControl = { + ---@class LossOfControlEvent + ---@field locType string Effect type, e.g. "SCHOOL_INTERRUPT" + ---@field spellID number Spell ID causing the effect + ---@field displayText string Name of the effect, e.g. "Interrupted" + ---@field iconTexture number FileID + ---@field startTime number? Time at which this effect began, as per GetTime() + ---@field timeRemaining number? Number of seconds remaining. + ---@field duration number? Duration of the effect, in seconds. + ---@field lockoutSchool number Locked out spell school identifier; can be fed into GetSchoolString() to retrieve school name. + ---@field priority number + ---@field displayType number An integer specifying how this event should be displayed to the player, per the Interface-configured options: + --- 0: the effect should not be displayed. + --- 1: the effect should be displayed as a brief alert when it occurs. + --- 2: the effect should be displayed for its full duration. + + --- Returns info about an active loss-of-control effect. + --- @param index number + --- @return LossOfControlEvent + GetActiveLossOfControlData = function(index) end, + + --- Returns info about an active loss-of-control effect for a specific unit. + --- @param unitToken string + --- @param index number + --- @return LossOfControlEvent + GetActiveLossOfControlDataByUnit = function(unitToken, index) end, + + --- Returns the number of active loss-of-control effects. + --- @return number count + GetActiveLossOfControlDataCount = function() end, + + --- Returns the number of active loss-of-control effects for a specific unit. + --- @param unitToken string + --- @return number count + GetActiveLossOfControlDataCountByUnit = function(unitToken) end, + + --- Returns the start and duration of the loss-of-control cooldown for a specific action slot. + --- @param slot number + --- @return number start + --- @return number duration + GetActionLossOfControlCooldown = function(slot) end, +}