local SpellBook = { Name = "SpellBook", Type = "System", Namespace = "C_SpellBook", Functions = { { Name = "GetSpellLinkFromSpellID", Type = "Function", Arguments = { { Name = "spellID", Type = "number", Nilable = false }, { Name = "glyphID", Type = "number", Nilable = true }, }, Returns = { { Name = "spellLink", Type = "string", Nilable = false }, }, }, }, Events = { { Name = "CurrentSpellCastChanged", Type = "Event", LiteralName = "CURRENT_SPELL_CAST_CHANGED", Payload = { { Name = "cancelledCast", Type = "bool", Nilable = false }, }, }, { Name = "LearnedSpellInTab", Type = "Event", LiteralName = "LEARNED_SPELL_IN_TAB", Payload = { { Name = "spellID", Type = "number", Nilable = false }, { Name = "skillInfoIndex", Type = "number", Nilable = false }, { Name = "isGuildPerkSpell", Type = "bool", Nilable = false }, }, }, { Name = "MaxSpellStartRecoveryOffsetChanged", Type = "Event", LiteralName = "MAX_SPELL_START_RECOVERY_OFFSET_CHANGED", Payload = { { Name = "clampedNewQueueWindowMs", Type = "number", Nilable = false }, }, }, { Name = "PlayerTotemUpdate", Type = "Event", LiteralName = "PLAYER_TOTEM_UPDATE", Payload = { { Name = "totemSlot", Type = "luaIndex", Nilable = false }, }, }, { Name = "SpellTextUpdate", Type = "Event", LiteralName = "SPELL_TEXT_UPDATE", Payload = { { Name = "spellID", Type = "number", Nilable = false }, }, }, { Name = "SpellUpdateCharges", Type = "Event", LiteralName = "SPELL_UPDATE_CHARGES", }, { Name = "SpellUpdateCooldown", Type = "Event", LiteralName = "SPELL_UPDATE_COOLDOWN", }, { Name = "SpellUpdateIcon", Type = "Event", LiteralName = "SPELL_UPDATE_ICON", }, { Name = "SpellUpdateUsable", Type = "Event", LiteralName = "SPELL_UPDATE_USABLE", }, { Name = "SpellsChanged", Type = "Event", LiteralName = "SPELLS_CHANGED", }, { Name = "StartAutorepeatSpell", Type = "Event", LiteralName = "START_AUTOREPEAT_SPELL", }, { Name = "StopAutorepeatSpell", Type = "Event", LiteralName = "STOP_AUTOREPEAT_SPELL", }, { Name = "UnitSpellcastSent", Type = "Event", LiteralName = "UNIT_SPELLCAST_SENT", Payload = { { Name = "unit", Type = "cstring", Nilable = false }, { Name = "target", Type = "cstring", Nilable = false }, { Name = "castGUID", Type = "WOWGUID", Nilable = false }, { Name = "spellID", Type = "number", Nilable = false }, }, }, { Name = "UpdateShapeshiftCooldown", Type = "Event", LiteralName = "UPDATE_SHAPESHIFT_COOLDOWN", }, { Name = "UpdateShapeshiftForm", Type = "Event", LiteralName = "UPDATE_SHAPESHIFT_FORM", }, { Name = "UpdateShapeshiftForms", Type = "Event", LiteralName = "UPDATE_SHAPESHIFT_FORMS", }, { Name = "UpdateShapeshiftUsable", Type = "Event", LiteralName = "UPDATE_SHAPESHIFT_USABLE", }, }, Tables = { }, }; APIDocumentation:AddDocumentationTable(SpellBook);