-- Generated ApiVault API data shard. Do not edit manually.
-- version=0.1.0.2; shard=20; systems=20
local addonName, ApiVault = ...
local systems = ApiVault.APIData.systems
systems[#systems + 1] = {
	name = "QuestSession",
	type = "System",
	ns = "C_QuestSession",
	env = "All",
	file = "QuestSessionDocumentation.lua",
	hash = "72616ae2b432e298c987e42982c3413f0c0f1e244ba79bc26d85dd687ceb2964",
	functions = {
		{
			n = "CanStart",
			k = "Function",
			rets = {
				{
					n = "allowed",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "CanStop",
			k = "Function",
			rets = {
				{
					n = "allowed",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "Exists",
			k = "Function",
			rets = {
				{
					n = "exists",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "GetAvailableSessionCommand",
			k = "Function",
			rets = {
				{
					n = "command",
					t = "QuestSessionCommand",
					nilable = false,
				},
			},
		},
		{
			n = "GetPendingCommand",
			k = "Function",
			rets = {
				{
					n = "command",
					t = "QuestSessionCommand",
					nilable = false,
				},
			},
		},
		{
			n = "GetProposedMaxLevelForSession",
			k = "Function",
			rets = {
				{
					n = "proposedMaxLevel",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "GetSessionBeginDetails",
			k = "Function",
			rets = {
				{
					n = "details",
					t = "QuestSessionPlayerDetails",
					nilable = true,
				},
			},
		},
		{
			n = "GetSuperTrackedQuest",
			k = "Function",
			rets = {
				{
					n = "questID",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "HasJoined",
			k = "Function",
			rets = {
				{
					n = "hasJoined",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "HasPendingCommand",
			k = "Function",
			rets = {
				{
					n = "hasPendingCommand",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RequestSessionStart",
			k = "Function",
		},
		{
			n = "RequestSessionStop",
			k = "Function",
		},
		{
			n = "SendSessionBeginResponse",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "beginSession",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "SetQuestIsSuperTracked",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
				{
					n = "superTrack",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "QuestSessionCreated",
			k = "Event",
			literal = "QUEST_SESSION_CREATED",
			unique = true,
		},
		{
			n = "QuestSessionDestroyed",
			k = "Event",
			literal = "QUEST_SESSION_DESTROYED",
			unique = true,
		},
		{
			n = "QuestSessionEnabledStateChanged",
			k = "Event",
			payload = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "QUEST_SESSION_ENABLED_STATE_CHANGED",
		},
		{
			n = "QuestSessionJoined",
			k = "Event",
			literal = "QUEST_SESSION_JOINED",
			unique = true,
		},
		{
			n = "QuestSessionLeft",
			k = "Event",
			literal = "QUEST_SESSION_LEFT",
			unique = true,
		},
		{
			n = "QuestSessionMemberConfirm",
			k = "Event",
			SynchronousEvent = true,
			literal = "QUEST_SESSION_MEMBER_CONFIRM",
		},
		{
			n = "QuestSessionMemberStartResponse",
			k = "Event",
			payload = {
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "response",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "QUEST_SESSION_MEMBER_START_RESPONSE",
		},
		{
			n = "QuestSessionNotification",
			k = "Event",
			payload = {
				{
					n = "result",
					t = "QuestSessionResult",
					nilable = false,
				},
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "QUEST_SESSION_NOTIFICATION",
		},
	},
	tables = {
		{
			n = "QuestSessionPlayerDetails",
			k = "Structure",
			fields = {
				{
					n = "name",
					t = "string",
					nilable = false,
				},
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "QuestTaskInfo",
	type = "System",
	ns = "C_TaskQuest",
	env = "All",
	file = "QuestTaskInfoDocumentation.lua",
	hash = "562b236ddd6038100bec78398ec31755eebdbbb3bef2254899f2fa634bae2b9f",
	functions = {
		{
			n = "DoesMapShowTaskQuestObjectives",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "showsTaskQuestObjectives",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "GetQuestInfoByQuestID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "questTitle",
					t = "cstring",
					nilable = false,
				},
				{
					n = "factionID",
					t = "number",
					nilable = true,
				},
				{
					n = "capped",
					t = "bool",
					nilable = true,
				},
				{
					n = "displayAsObjective",
					t = "bool",
					nilable = true,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestLocation",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "locationX",
					t = "number",
					nilable = false,
				},
				{
					n = "locationY",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestProgressBarInfo",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "progress",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestTimeLeftMinutes",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "minutesLeft",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestTimeLeftSeconds",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "secondsLeft",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestUIWidgetSetByType",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
				{
					n = "type",
					t = "MapIconUIWidgetSetType",
					nilable = false,
				},
			},
			rets = {
				{
					n = "widgetSet",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestZoneID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetQuestsOnMap",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "taskPOIs",
					t = "table",
					nilable = false,
					it = "QuestPOIMapInfo",
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetThreatQuests",
			k = "Function",
			rets = {
				{
					n = "quests",
					t = "table",
					nilable = false,
					it = "number",
				},
			},
		},
		{
			n = "IsActive",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "active",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RequestPreloadRewardData",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "questID",
					t = "number",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "QueueSpecificDocumentation.lua",
	hash = "8fe9d6fe5b5aced0b582313abff845f62543f7fc1c1d9f1ee71084d4d2b65171",
	tables = {
		{
			n = "QueueSpecificInfo",
			k = "Structure",
			fields = {
				{
					n = "queueType",
					t = "cstring",
					nilable = false,
				},
				{
					n = "lfgIDs",
					t = "table",
					nilable = true,
					it = "number",
				},
				{
					n = "lfgListID",
					t = "number",
					nilable = true,
				},
				{
					n = "activityID",
					t = "number",
					nilable = true,
				},
				{
					n = "battlefieldType",
					t = "cstring",
					nilable = true,
				},
				{
					n = "listID",
					t = "number",
					nilable = true,
				},
				{
					n = "mapName",
					t = "cstring",
					nilable = true,
				},
				{
					n = "rated",
					t = "bool",
					nilable = true,
				},
				{
					n = "isBrawl",
					t = "bool",
					nilable = true,
				},
				{
					n = "teamSize",
					t = "number",
					nilable = true,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "RaidLocks",
	type = "System",
	ns = "C_RaidLocks",
	env = "All",
	file = "RaidLocksDocumentation.lua",
	hash = "1a1f46ecb84ace52e5717b86c5186df4f0ecfdb2e2237a47aa6367919c643372",
	functions = {
		{
			n = "GetRedirectedDifficultyID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "mapID",
					t = "number",
					nilable = false,
				},
				{
					n = "difficultyID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "redirectedDifficultyID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "IsEncounterComplete",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "mapID",
					t = "number",
					nilable = false,
				},
				{
					n = "encounterID",
					t = "number",
					nilable = false,
				},
				{
					n = "difficultyID",
					t = "number",
					nilable = true,
				},
			},
			rets = {
				{
					n = "encounterIsComplete",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsRaidLockExtendFeatureEnabled",
			k = "Function",
			rets = {
				{
					n = "raidLockExtendFeatureEnabled",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "RaidMarkers",
	type = "System",
	ns = "",
	env = "All",
	file = "RaidMarkersDocumentation.lua",
	hash = "20c0257b28a4ed6a548f85334d74fda2ac3200a98f7914ef2676aabf8e08be7f",
	functions = {
		{
			n = "CanBeRaidTarget",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "target",
					t = "UnitToken",
					nilable = false,
				},
			},
			rets = {
				{
					n = "result",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "ClearRaidMarker",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "raidMarkerIndex",
					t = "luaIndex",
					nilable = false,
					def = "MAX_RAID_MARKERS",
				},
			},
			HasRestrictions = true,
		},
		{
			n = "GetRaidTargetIndex",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "target",
					t = "UnitToken",
					nilable = false,
				},
			},
			rets = {
				{
					n = "result",
					t = "luaIndex",
					nilable = true,
				},
			},
			SecretReturns = true,
		},
		{
			n = "IsRaidMarkerActive",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "index",
					t = "luaIndex",
					nilable = false,
				},
			},
			rets = {
				{
					n = "result",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsRaidMarkerSystemEnabled",
			k = "Function",
			rets = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "PlaceRaidMarker",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "index",
					t = "luaIndex",
					nilable = false,
				},
				{
					n = "token",
					t = "cstring",
					nilable = true,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "RemoveRaidTargets",
			k = "Function",
			doc = {
				"Removes all assigned raid target markers.",
			},
			HasRestrictions = true,
		},
		{
			n = "SetRaidTarget",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "target",
					t = "UnitToken",
					nilable = false,
				},
				{
					n = "userIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "RecentAlliesConstantsDocumentation.lua",
	hash = "1e3aaf1e84fdba0405d16dff35a8ac15bbfdc949a124ee9e6bdd7525b4cfa92c",
	tables = {
		{
			n = "RecentAllyPinResult",
			k = "Enumeration",
			fields = {
				{
					n = "Success",
					t = "RecentAllyPinResult",
					EnumValue = 0,
				},
				{
					n = "ServerError",
					t = "RecentAllyPinResult",
					EnumValue = 1,
				},
			},
			max = 1,
			min = 0,
			num = 2,
		},
		{
			n = "RecentAlliesConsts",
			k = "Constants",
			values = {
				{
					n = "PIN_EXPIRATION_WARNING_DAYS",
					t = "number",
					Value = 5,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "RecentAllies",
	type = "System",
	ns = "C_RecentAllies",
	env = "All",
	file = "RecentAlliesDocumentation.lua",
	hash = "cca3631f08c03d4daf566ac81bcb86fd0d34e2399aab99e4ddf9aa88ca7f5fda",
	functions = {
		{
			n = "CanSetRecentAllyNote",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "canSetNote",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "GetRecentAllies",
			k = "Function",
			rets = {
				{
					n = "recentAlliesData",
					t = "table",
					nilable = false,
					it = "RecentAllyData",
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "GetRecentAllyByFullName",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "fullCharacterName",
					t = "cstring",
					nilable = false,
				},
			},
			rets = {
				{
					n = "recentAllyData",
					t = "RecentAllyData",
					nilable = true,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "GetRecentAllyByGUID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "recentAllyData",
					t = "RecentAllyData",
					nilable = true,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "IsRecentAllyByFullName",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "fullCharacterName",
					t = "cstring",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isRecentAlly",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "IsRecentAllyByGUID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isRecentAlly",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "IsRecentAllyDataReady",
			k = "Function",
			rets = {
				{
					n = "isReady",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "IsRecentAllyPinned",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isPinned",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "IsSystemEnabled",
			k = "Function",
			rets = {
				{
					n = "isRecentAllySystemEnabled",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsSystemSupported",
			k = "Function",
			rets = {
				{
					n = "isRecentAllySystemSupported",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "SetRecentAllyNote",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "note",
					t = "cstring",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "SetRecentAllyPinned",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "isPinned",
					t = "bool",
					nilable = false,
				},
			},
			RequiresRecentAllies = true,
		},
		{
			n = "TryRequestRecentAlliesData",
			k = "Function",
			HasRestrictions = true,
			RequiresRecentAllies = true,
		},
	},
	events = {
		{
			n = "LetRecentAlliesSeeLocationSettingUpdated",
			k = "Event",
			SynchronousEvent = true,
			literal = "LET_RECENT_ALLIES_SEE_LOCATION_SETTING_UPDATED",
		},
		{
			n = "RecentAlliesCacheUpdate",
			k = "Event",
			literal = "RECENT_ALLIES_CACHE_UPDATE",
			unique = true,
		},
		{
			n = "RecentAlliesDataReady",
			k = "Event",
			SynchronousEvent = true,
			literal = "RECENT_ALLIES_DATA_READY",
		},
		{
			n = "RecentAlliesSystemStatusUpdated",
			k = "Event",
			SynchronousEvent = true,
			literal = "RECENT_ALLIES_SYSTEM_STATUS_UPDATED",
		},
		{
			n = "RecentAllyDataUpdated",
			k = "Event",
			payload = {
				{
					n = "characterGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RECENT_ALLY_DATA_UPDATED",
		},
	},
	tables = {
		{
			n = "RecentAllyCharacterData",
			k = "Structure",
			fields = {
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "name",
					t = "string",
					nilable = false,
				},
				{
					n = "fullName",
					t = "string",
					nilable = false,
				},
				{
					n = "realmName",
					t = "string",
					nilable = false,
				},
				{
					n = "level",
					t = "number",
					nilable = false,
				},
				{
					n = "classID",
					t = "number",
					nilable = false,
				},
				{
					n = "raceID",
					t = "number",
					nilable = false,
				},
				{
					n = "sex",
					t = "UnitSex",
					nilable = false,
				},
			},
		},
		{
			n = "RecentAllyData",
			k = "Structure",
			fields = {
				{
					n = "stateData",
					t = "RecentAllyStateData",
					nilable = false,
				},
				{
					n = "characterData",
					t = "RecentAllyCharacterData",
					nilable = false,
				},
				{
					n = "interactionData",
					t = "RecentAllyInteractionData",
					nilable = false,
				},
			},
		},
		{
			n = "RecentAllyInteraction",
			k = "Structure",
			fields = {
				{
					n = "type",
					t = "RolodexType",
					nilable = false,
				},
				{
					n = "description",
					t = "cstring",
					nilable = false,
				},
				{
					n = "timestamp",
					t = "time_t",
					nilable = false,
				},
				{
					n = "contextData",
					t = "RecentAllyInteractionContextData",
					nilable = false,
				},
			},
		},
		{
			n = "RecentAllyInteractionContextData",
			k = "Structure",
			fields = {
				{
					n = "itemID",
					t = "number",
					nilable = true,
				},
				{
					n = "locationName",
					t = "cstring",
					nilable = true,
				},
				{
					n = "activityDifficultyID",
					t = "number",
					nilable = true,
				},
				{
					n = "activityDifficultyLevel",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "RecentAllyInteractionData",
			k = "Structure",
			fields = {
				{
					n = "interactions",
					t = "table",
					nilable = false,
					it = "RecentAllyInteraction",
				},
				{
					n = "note",
					t = "string",
					nilable = true,
				},
			},
		},
		{
			n = "RecentAllyStateData",
			k = "Structure",
			fields = {
				{
					n = "isOnline",
					t = "bool",
					nilable = false,
				},
				{
					n = "isDND",
					t = "bool",
					nilable = false,
				},
				{
					n = "isAFK",
					t = "bool",
					nilable = false,
				},
				{
					n = "pinExpirationDate",
					t = "time_t",
					nilable = true,
				},
				{
					n = "friendRequestSentThisSession",
					t = "bool",
					nilable = false,
				},
				{
					n = "currentLocation",
					t = "string",
					nilable = true,
				},
			},
		},
	},
	predicates = {
		{
			FailureMode = "ReturnNothing",
			Name = "RequiresRecentAllies",
			Type = "Precondition",
		},
	},
}
systems[#systems + 1] = {
	name = "RecruitAFriend",
	type = "System",
	ns = "C_RecruitAFriend",
	env = "All",
	file = "RecruitAFriendDocumentation.lua",
	hash = "252e0a40e95a5e787147faf2ffc331e15c9b0639af1460be43e052f6a2af74a5",
	functions = {
		{
			n = "CanSummonFriend",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "result",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "ClaimActivityReward",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "activityID",
					t = "number",
					nilable = false,
				},
				{
					n = "acceptanceID",
					t = "RecruitAcceptanceID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "ClaimNextReward",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "rafVersion",
					t = "RecruitAFriendRewardsVersion",
					nilable = true,
				},
			},
			rets = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "GenerateRecruitmentLink",
			k = "Function",
			rets = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "GetRAFInfo",
			k = "Function",
			rets = {
				{
					n = "info",
					t = "RafInfo",
					nilable = false,
				},
			},
		},
		{
			n = "GetRAFSystemInfo",
			k = "Function",
			rets = {
				{
					n = "systemInfo",
					t = "RafSystemInfo",
					nilable = false,
				},
			},
		},
		{
			n = "GetRecruitActivityRequirementsText",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "activityID",
					t = "number",
					nilable = false,
				},
				{
					n = "acceptanceID",
					t = "RecruitAcceptanceID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "requirementsText",
					t = "table",
					nilable = false,
					it = "string",
				},
			},
		},
		{
			n = "GetRecruitInfo",
			k = "Function",
			rets = {
				{
					n = "active",
					t = "bool",
					nilable = false,
				},
				{
					n = "faction",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "GetSummonFriendCooldown",
			k = "Function",
			rets = {
				{
					n = "startTimeSeconds",
					t = "number",
					nilable = false,
				},
				{
					n = "durationSeconds",
					t = "number",
					nilable = false,
				},
				{
					n = "enableCooldownTimer",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsEnabled",
			k = "Function",
			rets = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsRecruitAFriendLinked",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "guid",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "result",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsRecruitingEnabled",
			k = "Function",
			rets = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RemoveRAFRecruit",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "wowAccountGUID",
					t = "WOWGUID",
					nilable = false,
				},
			},
			rets = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "RequestUpdatedRecruitmentInfo",
			k = "Function",
			rets = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			HasRestrictions = true,
		},
		{
			n = "SummonFriend",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "target",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "name",
					t = "cstring",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "RafInfoUpdated",
			k = "Event",
			payload = {
				{
					n = "info",
					t = "RafInfo",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RAF_INFO_UPDATED",
		},
		{
			n = "RafRecruitingEnabledStatus",
			k = "Event",
			payload = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RAF_RECRUITING_ENABLED_STATUS",
		},
		{
			n = "RafRewardClaimFailed",
			k = "Event",
			SynchronousEvent = true,
			literal = "RAF_REWARD_CLAIM_FAILED",
		},
		{
			n = "RafSystemEnabledStatus",
			k = "Event",
			payload = {
				{
					n = "enabled",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RAF_SYSTEM_ENABLED_STATUS",
		},
		{
			n = "RafSystemInfoUpdated",
			k = "Event",
			payload = {
				{
					n = "systemInfo",
					t = "RafSystemInfo",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RAF_SYSTEM_INFO_UPDATED",
		},
	},
	tables = {
		{
			n = "RafRecruitActivityState",
			k = "Enumeration",
			fields = {
				{
					n = "Incomplete",
					t = "RafRecruitActivityState",
					EnumValue = 0,
				},
				{
					n = "Complete",
					t = "RafRecruitActivityState",
					EnumValue = 1,
				},
				{
					n = "RewardClaimed",
					t = "RafRecruitActivityState",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "RafRecruitSubStatus",
			k = "Enumeration",
			fields = {
				{
					n = "Trial",
					t = "RafRecruitSubStatus",
					EnumValue = 0,
				},
				{
					n = "Active",
					t = "RafRecruitSubStatus",
					EnumValue = 1,
				},
				{
					n = "Inactive",
					t = "RafRecruitSubStatus",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "RafRewardType",
			k = "Enumeration",
			fields = {
				{
					n = "Pet",
					t = "RafRewardType",
					EnumValue = 0,
				},
				{
					n = "Mount",
					t = "RafRewardType",
					EnumValue = 1,
				},
				{
					n = "Appearance",
					t = "RafRewardType",
					EnumValue = 2,
				},
				{
					n = "Title",
					t = "RafRewardType",
					EnumValue = 3,
				},
				{
					n = "GameTime",
					t = "RafRewardType",
					EnumValue = 4,
				},
				{
					n = "AppearanceSet",
					t = "RafRewardType",
					EnumValue = 5,
				},
				{
					n = "Illusion",
					t = "RafRewardType",
					EnumValue = 6,
				},
				{
					n = "Invalid",
					t = "RafRewardType",
					EnumValue = 7,
				},
			},
			max = 7,
			min = 0,
			num = 8,
		},
		{
			n = "RafAppearanceInfo",
			k = "Structure",
			fields = {
				{
					n = "appearanceID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafAppearanceSetInfo",
			k = "Structure",
			fields = {
				{
					n = "setID",
					t = "number",
					nilable = false,
				},
				{
					n = "setName",
					t = "string",
					nilable = false,
				},
				{
					n = "appearanceIDs",
					t = "table",
					nilable = false,
					it = "number",
				},
			},
		},
		{
			n = "RafIllusionInfo",
			k = "Structure",
			fields = {
				{
					n = "spellItemEnchantmentID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafInfo",
			k = "Structure",
			fields = {
				{
					n = "versions",
					t = "table",
					nilable = false,
					it = "RafVersionInfo",
				},
				{
					n = "recruitmentInfo",
					t = "RafRecruitmentinfo",
					nilable = true,
				},
				{
					n = "recruits",
					t = "table",
					nilable = false,
					it = "RafRecruit",
				},
				{
					n = "claimInProgress",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RafMonthCount",
			k = "Structure",
			fields = {
				{
					n = "lifetimeMonths",
					t = "number",
					nilable = false,
				},
				{
					n = "spentMonths",
					t = "number",
					nilable = false,
				},
				{
					n = "availableMonths",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafMountInfo",
			k = "Structure",
			fields = {
				{
					n = "spellID",
					t = "number",
					nilable = false,
				},
				{
					n = "mountID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafPetInfo",
			k = "Structure",
			fields = {
				{
					n = "creatureID",
					t = "number",
					nilable = false,
				},
				{
					n = "speciesID",
					t = "number",
					nilable = false,
				},
				{
					n = "displayID",
					t = "number",
					nilable = false,
				},
				{
					n = "speciesName",
					t = "string",
					nilable = false,
				},
				{
					n = "description",
					t = "string",
					nilable = false,
				},
			},
		},
		{
			n = "RafRecruit",
			k = "Structure",
			fields = {
				{
					n = "bnetAccountID",
					t = "number",
					nilable = false,
				},
				{
					n = "wowAccountGUID",
					t = "WOWGUID",
					nilable = false,
				},
				{
					n = "battleTag",
					t = "string",
					nilable = false,
				},
				{
					n = "monthsRemaining",
					t = "number",
					nilable = false,
				},
				{
					n = "subStatus",
					t = "RafRecruitSubStatus",
					nilable = false,
				},
				{
					n = "acceptanceID",
					t = "RecruitAcceptanceID",
					nilable = false,
				},
				{
					n = "versionRecruited",
					t = "RecruitAFriendRewardsVersion",
					nilable = false,
				},
				{
					n = "activities",
					t = "table",
					nilable = false,
					it = "RafRecruitActivity",
				},
			},
		},
		{
			n = "RafRecruitActivity",
			k = "Structure",
			fields = {
				{
					n = "activityID",
					t = "number",
					nilable = false,
				},
				{
					n = "rewardQuestID",
					t = "number",
					nilable = false,
				},
				{
					n = "state",
					t = "RafRecruitActivityState",
					nilable = false,
				},
			},
		},
		{
			n = "RafRecruitmentinfo",
			k = "Structure",
			fields = {
				{
					n = "recruitmentCode",
					t = "string",
					nilable = false,
				},
				{
					n = "recruitmentURL",
					t = "string",
					nilable = false,
				},
				{
					n = "expireTime",
					t = "number",
					nilable = false,
				},
				{
					n = "remainingTimeSeconds",
					t = "number",
					nilable = false,
				},
				{
					n = "totalUses",
					t = "number",
					nilable = false,
				},
				{
					n = "remainingUses",
					t = "number",
					nilable = false,
				},
				{
					n = "sourceRealm",
					t = "string",
					nilable = false,
				},
				{
					n = "sourceFaction",
					t = "string",
					nilable = false,
				},
			},
		},
		{
			n = "RafReward",
			k = "Structure",
			fields = {
				{
					n = "rewardID",
					t = "number",
					nilable = false,
				},
				{
					n = "rafVersion",
					t = "RecruitAFriendRewardsVersion",
					nilable = false,
				},
				{
					n = "itemID",
					t = "number",
					nilable = false,
				},
				{
					n = "rewardType",
					t = "RafRewardType",
					nilable = false,
				},
				{
					n = "petInfo",
					t = "RafPetInfo",
					nilable = true,
				},
				{
					n = "mountInfo",
					t = "RafMountInfo",
					nilable = true,
				},
				{
					n = "appearanceInfo",
					t = "RafAppearanceInfo",
					nilable = true,
				},
				{
					n = "titleInfo",
					t = "RafTitleInfo",
					nilable = true,
				},
				{
					n = "appearanceSetInfo",
					t = "RafAppearanceSetInfo",
					nilable = true,
				},
				{
					n = "illusionInfo",
					t = "RafIllusionInfo",
					nilable = true,
				},
				{
					n = "canClaim",
					t = "bool",
					nilable = false,
				},
				{
					n = "claimed",
					t = "bool",
					nilable = false,
				},
				{
					n = "canAfford",
					t = "bool",
					nilable = false,
				},
				{
					n = "repeatable",
					t = "bool",
					nilable = false,
				},
				{
					n = "repeatableClaimCount",
					t = "number",
					nilable = false,
				},
				{
					n = "monthsRequired",
					t = "number",
					nilable = false,
				},
				{
					n = "monthCost",
					t = "number",
					nilable = false,
				},
				{
					n = "availableInMonths",
					t = "number",
					nilable = false,
				},
				{
					n = "iconID",
					t = "fileID",
					nilable = false,
				},
			},
		},
		{
			n = "RafSystemInfo",
			k = "Structure",
			fields = {
				{
					n = "maxRecruits",
					t = "number",
					nilable = false,
				},
				{
					n = "maxRecruitMonths",
					t = "number",
					nilable = false,
				},
				{
					n = "maxRecruitmentUses",
					t = "number",
					nilable = false,
				},
				{
					n = "daysInCycle",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafTitleInfo",
			k = "Structure",
			fields = {
				{
					n = "titleMaskID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RafVersionInfo",
			k = "Structure",
			fields = {
				{
					n = "rafVersion",
					t = "RecruitAFriendRewardsVersion",
					nilable = false,
				},
				{
					n = "monthCount",
					t = "RafMonthCount",
					nilable = false,
				},
				{
					n = "rewards",
					t = "table",
					nilable = false,
					it = "RafReward",
				},
				{
					n = "nextReward",
					t = "RafReward",
					nilable = true,
				},
				{
					n = "numAffordableRewards",
					t = "number",
					nilable = false,
				},
				{
					n = "numRecruits",
					t = "number",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "RecruitAFriendSharedDocumentation.lua",
	hash = "1ea4e612c634a9217136465761773095e32145a876fee1bd748c04a3aa3e48ae",
	tables = {
		{
			n = "RafLinkType",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "RafLinkType",
					EnumValue = 0,
				},
				{
					n = "Recruit",
					t = "RafLinkType",
					EnumValue = 1,
				},
				{
					n = "Friend",
					t = "RafLinkType",
					EnumValue = 2,
				},
				{
					n = "Both",
					t = "RafLinkType",
					EnumValue = 3,
				},
			},
			max = 3,
			min = 0,
			num = 4,
		},
		{
			n = "RecruitAFriendRewardsVersion",
			k = "Enumeration",
			fields = {
				{
					n = "InvalidVersion",
					t = "RecruitAFriendRewardsVersion",
					EnumValue = 0,
				},
				{
					n = "UnusedVersionOne",
					t = "RecruitAFriendRewardsVersion",
					EnumValue = 1,
				},
				{
					n = "VersionTwo",
					t = "RecruitAFriendRewardsVersion",
					EnumValue = 2,
				},
				{
					n = "VersionThree",
					t = "RecruitAFriendRewardsVersion",
					EnumValue = 3,
				},
			},
			max = 3,
			min = 0,
			num = 4,
		},
	},
}
systems[#systems + 1] = {
	name = "RemixArtifactUI",
	type = "System",
	ns = "C_RemixArtifactUI",
	env = "All",
	file = "RemixArtifactUIDocumentation.lua",
	hash = "56a5373f41c23dda8011854b295b8ebe2d19de6d0c2c13fe347ba13a29069db7",
	functions = {
		{
			n = "ClearRemixArtifactItem",
			k = "Function",
		},
		{
			n = "GetAppearanceInfoByID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "artifactAppearanceID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "uiCameraID",
					t = "number",
					nilable = false,
				},
				{
					n = "altHandUICameraID",
					t = "number",
					nilable = true,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetArtifactArtInfo",
			k = "Function",
			rets = {
				{
					n = "artifactArtInfo",
					t = "RemixArtifactArtInfo",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetArtifactItemInfo",
			k = "Function",
			rets = {
				{
					n = "itemID",
					t = "number",
					nilable = false,
				},
				{
					n = "altItemID",
					t = "number",
					nilable = true,
				},
				{
					n = "artifactAppearanceID",
					t = "number",
					nilable = false,
				},
				{
					n = "appearanceModID",
					t = "number",
					nilable = false,
				},
				{
					n = "itemAppearanceID",
					t = "number",
					nilable = true,
				},
				{
					n = "altItemAppearanceID",
					t = "number",
					nilable = true,
				},
				{
					n = "altOnTop",
					t = "bool",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetCurrArtifactItemID",
			k = "Function",
			rets = {
				{
					n = "reqitemID",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "GetCurrItemSpecIndex",
			k = "Function",
			rets = {
				{
					n = "specIndex",
					t = "luaIndex",
					nilable = true,
				},
			},
		},
		{
			n = "GetCurrTraitTreeID",
			k = "Function",
			rets = {
				{
					n = "traitTreeID",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "ItemInSlotIsRemixArtifact",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "invSlot",
					t = "luaIndex",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isRemixArtifact",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "RemixArtifactItemSpecsLoaded",
			k = "Event",
			payload = {
				{
					n = "success",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "REMIX_ARTIFACT_ITEM_SPECS_LOADED",
		},
		{
			n = "RemixArtifactUpdate",
			k = "Event",
			SynchronousEvent = true,
			literal = "REMIX_ARTIFACT_UPDATE",
		},
	},
	tables = {
		{
			n = "RemixArtifactAppearanceInfo",
			k = "Structure",
			fields = {
				{
					n = "uiCameraID",
					t = "number",
					nilable = false,
				},
				{
					n = "altHandUICameraID",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "RemixArtifactArtInfo",
			k = "Structure",
			fields = {
				{
					n = "textureKit",
					t = "textureKit",
					nilable = false,
				},
				{
					n = "titleName",
					t = "string",
					nilable = false,
				},
				{
					n = "uiModelSceneID",
					t = "number",
					nilable = false,
				},
				{
					n = "spellVisualKitID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "RemixArtifactInfo",
			k = "Structure",
			fields = {
				{
					n = "itemID",
					t = "number",
					nilable = false,
				},
				{
					n = "altItemID",
					t = "number",
					nilable = true,
				},
				{
					n = "artifactAppearanceID",
					t = "number",
					nilable = false,
				},
				{
					n = "appearanceModID",
					t = "number",
					nilable = false,
				},
				{
					n = "itemAppearanceID",
					t = "number",
					nilable = true,
				},
				{
					n = "altItemAppearanceID",
					t = "number",
					nilable = true,
				},
				{
					n = "altOnTop",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "RenownConstantsDocumentation.lua",
	hash = "97b90c7b94638bd7d2475ccdcb93b952d8dd316c343cd4915041fa5559a99062",
	tables = {
		{
			n = "RenownRewardDisplayType",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "RenownRewardDisplayType",
					EnumValue = 0,
				},
				{
					n = "Item",
					t = "RenownRewardDisplayType",
					EnumValue = 1,
				},
				{
					n = "Spell",
					t = "RenownRewardDisplayType",
					EnumValue = 2,
				},
				{
					n = "Mount",
					t = "RenownRewardDisplayType",
					EnumValue = 3,
				},
				{
					n = "Transmog",
					t = "RenownRewardDisplayType",
					EnumValue = 4,
				},
				{
					n = "TransmogSet",
					t = "RenownRewardDisplayType",
					EnumValue = 5,
				},
				{
					n = "TransmogIllusion",
					t = "RenownRewardDisplayType",
					EnumValue = 6,
				},
				{
					n = "Title",
					t = "RenownRewardDisplayType",
					EnumValue = 7,
				},
				{
					n = "GarrFollower",
					t = "RenownRewardDisplayType",
					EnumValue = 8,
				},
				{
					n = "Currency",
					t = "RenownRewardDisplayType",
					EnumValue = 9,
				},
			},
			max = 9,
			min = 0,
			num = 10,
		},
		{
			n = "RenownRewardsFlags",
			k = "Enumeration",
			fields = {
				{
					n = "Milestone",
					t = "RenownRewardsFlags",
					EnumValue = 1,
				},
				{
					n = "Capstone",
					t = "RenownRewardsFlags",
					EnumValue = 2,
				},
				{
					n = "Hidden",
					t = "RenownRewardsFlags",
					EnumValue = 4,
				},
				{
					n = "AccountUnlock",
					t = "RenownRewardsFlags",
					EnumValue = 8,
				},
			},
			max = 8,
			min = 1,
			num = 4,
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "ReportSystemConstantsDocumentation.lua",
	hash = "41f98c7989408ed4a15c7af30b0bcf58156fee89224def238753faca665da75d",
	tables = {
		{
			n = "ReportEvidenceType",
			k = "Enumeration",
			fields = {
				{
					n = "Invalid",
					t = "ReportEvidenceType",
					EnumValue = 0,
				},
				{
					n = "HouseScreenshot",
					t = "ReportEvidenceType",
					EnumValue = 1,
				},
				{
					n = "HouseLayoutJson",
					t = "ReportEvidenceType",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "ReportMajorCategory",
			k = "Enumeration",
			fields = {
				{
					n = "InappropriateCommunication",
					t = "ReportMajorCategory",
					EnumValue = 0,
				},
				{
					n = "GameplaySabotage",
					t = "ReportMajorCategory",
					EnumValue = 1,
				},
				{
					n = "Cheating",
					t = "ReportMajorCategory",
					EnumValue = 2,
				},
				{
					n = "InappropriateName",
					t = "ReportMajorCategory",
					EnumValue = 3,
				},
				{
					n = "InappropriateDecor",
					t = "ReportMajorCategory",
					EnumValue = 4,
				},
			},
			max = 4,
			min = 0,
			num = 5,
		},
		{
			n = "ReportMinorCategory",
			k = "Enumeration",
			fields = {
				{
					n = "TextChat",
					t = "ReportMinorCategory",
					EnumValue = 1,
				},
				{
					n = "Boosting",
					t = "ReportMinorCategory",
					EnumValue = 2,
				},
				{
					n = "Spam",
					t = "ReportMinorCategory",
					EnumValue = 4,
				},
				{
					n = "Afk",
					t = "ReportMinorCategory",
					EnumValue = 8,
				},
				{
					n = "IntentionallyFeeding",
					t = "ReportMinorCategory",
					EnumValue = 16,
				},
				{
					n = "BlockingProgress",
					t = "ReportMinorCategory",
					EnumValue = 32,
				},
				{
					n = "Hacking",
					t = "ReportMinorCategory",
					EnumValue = 64,
				},
				{
					n = "Botting",
					t = "ReportMinorCategory",
					EnumValue = 128,
				},
				{
					n = "Advertisement",
					t = "ReportMinorCategory",
					EnumValue = 256,
				},
				{
					n = "BTag",
					t = "ReportMinorCategory",
					EnumValue = 512,
				},
				{
					n = "GroupName",
					t = "ReportMinorCategory",
					EnumValue = 1024,
				},
				{
					n = "CharacterName",
					t = "ReportMinorCategory",
					EnumValue = 2048,
				},
				{
					n = "GuildName",
					t = "ReportMinorCategory",
					EnumValue = 4096,
				},
				{
					n = "Description",
					t = "ReportMinorCategory",
					EnumValue = 8192,
				},
				{
					n = "Name",
					t = "ReportMinorCategory",
					EnumValue = 16384,
				},
				{
					n = "HarmfulToMinors",
					t = "ReportMinorCategory",
					EnumValue = 32768,
				},
				{
					n = "Disruption",
					t = "ReportMinorCategory",
					EnumValue = 65536,
				},
				{
					n = "TerroristAndViolentExtremistContent",
					t = "ReportMinorCategory",
					EnumValue = 131072,
				},
				{
					n = "ChildSexualExploitationAndAbuse",
					t = "ReportMinorCategory",
					EnumValue = 262144,
				},
				{
					n = "NeighborhoodName",
					t = "ReportMinorCategory",
					EnumValue = 524288,
				},
			},
			max = 524288,
			min = 1,
			num = 20,
		},
		{
			n = "ReportSubComplaintTypes",
			k = "Enumeration",
			fields = {
				{
					n = "Inappropriate",
					t = "ReportSubComplaintTypes",
					EnumValue = 0,
				},
				{
					n = "Advertising",
					t = "ReportSubComplaintTypes",
					EnumValue = 1,
				},
			},
			max = 1,
			min = 0,
			num = 2,
		},
		{
			n = "ReportThrottleType",
			k = "Enumeration",
			fields = {
				{
					n = "Invalid",
					t = "ReportThrottleType",
					EnumValue = 0,
				},
				{
					n = "General",
					t = "ReportThrottleType",
					EnumValue = 1,
				},
				{
					n = "Expensive",
					t = "ReportThrottleType",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "ReportType",
			k = "Enumeration",
			fields = {
				{
					n = "Chat",
					t = "ReportType",
					EnumValue = 0,
				},
				{
					n = "InWorld",
					t = "ReportType",
					EnumValue = 1,
				},
				{
					n = "ClubFinderPosting",
					t = "ReportType",
					EnumValue = 2,
				},
				{
					n = "ClubFinderApplicant",
					t = "ReportType",
					EnumValue = 3,
				},
				{
					n = "GroupFinderPosting",
					t = "ReportType",
					EnumValue = 4,
				},
				{
					n = "GroupFinderApplicant",
					t = "ReportType",
					EnumValue = 5,
				},
				{
					n = "ClubMember",
					t = "ReportType",
					EnumValue = 6,
				},
				{
					n = "GroupMember",
					t = "ReportType",
					EnumValue = 7,
				},
				{
					n = "Friend",
					t = "ReportType",
					EnumValue = 8,
				},
				{
					n = "Pet",
					t = "ReportType",
					EnumValue = 9,
				},
				{
					n = "BattlePet",
					t = "ReportType",
					EnumValue = 10,
				},
				{
					n = "Calendar",
					t = "ReportType",
					EnumValue = 11,
				},
				{
					n = "Mail",
					t = "ReportType",
					EnumValue = 12,
				},
				{
					n = "PvP",
					t = "ReportType",
					EnumValue = 13,
				},
				{
					n = "PvPScoreboard",
					t = "ReportType",
					EnumValue = 14,
				},
				{
					n = "PvPGroupMember",
					t = "ReportType",
					EnumValue = 15,
				},
				{
					n = "CraftingOrder",
					t = "ReportType",
					EnumValue = 16,
				},
				{
					n = "RecentAlly",
					t = "ReportType",
					EnumValue = 17,
				},
				{
					n = "HousingDecor",
					t = "ReportType",
					EnumValue = 18,
				},
				{
					n = "Neighborhood",
					t = "ReportType",
					EnumValue = 19,
				},
				{
					n = "NeighborhoodRoster",
					t = "ReportType",
					EnumValue = 20,
				},
			},
			max = 20,
			min = 0,
			num = 21,
		},
		{
			n = "ScreenshotSource",
			k = "Enumeration",
			fields = {
				{
					n = "Automatic",
					t = "ScreenshotSource",
					EnumValue = 0,
				},
				{
					n = "PlayerReport",
					t = "ScreenshotSource",
					EnumValue = 1,
				},
				{
					n = "Cheat",
					t = "ScreenshotSource",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "SendReportResult",
			k = "Enumeration",
			fields = {
				{
					n = "Success",
					t = "SendReportResult",
					EnumValue = 0,
				},
				{
					n = "GeneralError",
					t = "SendReportResult",
					EnumValue = 1,
				},
				{
					n = "TooManyReports",
					t = "SendReportResult",
					EnumValue = 2,
				},
				{
					n = "RequiresChatLine",
					t = "SendReportResult",
					EnumValue = 3,
				},
				{
					n = "RequiresChatLineOrVoice",
					t = "SendReportResult",
					EnumValue = 4,
				},
				{
					n = "RequiresScreenshot",
					t = "SendReportResult",
					EnumValue = 5,
				},
			},
			max = 5,
			min = 0,
			num = 6,
		},
	},
}
systems[#systems + 1] = {
	name = "ReportSystem",
	type = "System",
	ns = "C_ReportSystem",
	env = "All",
	file = "ReportSystemDocumentation.lua",
	hash = "54270d6e42bff09e5184186ebd9d0b4c0da221679805129ffb3eff99aaed3eeb",
	functions = {
		{
			n = "CanReportPlayer",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "playerLocation",
					t = "PlayerLocation",
					nilable = false,
					mix = "PlayerLocationMixin",
				},
			},
			rets = {
				{
					n = "canReport",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "CanReportPlayerForLanguage",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "playerLocation",
					t = "PlayerLocation",
					nilable = false,
					mix = "PlayerLocationMixin",
				},
			},
			rets = {
				{
					n = "canReport",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "GetMajorCategoriesForReportType",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "reportType",
					t = "ReportType",
					nilable = false,
				},
			},
			rets = {
				{
					n = "majorCategories",
					t = "table",
					nilable = false,
					it = "ReportMajorCategory",
				},
			},
		},
		{
			n = "GetMajorCategoryString",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "majorCategory",
					t = "ReportMajorCategory",
					nilable = false,
				},
			},
			rets = {
				{
					n = "majorCategoryString",
					t = "cstring",
					nilable = false,
				},
			},
		},
		{
			n = "GetMinorCategoriesForReportTypeAndMajorCategory",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "reportType",
					t = "ReportType",
					nilable = false,
				},
				{
					n = "majorCategory",
					t = "ReportMajorCategory",
					nilable = false,
				},
			},
			rets = {
				{
					n = "minorCategories",
					t = "table",
					nilable = false,
					it = "ReportMinorCategory",
				},
			},
		},
		{
			n = "GetMinorCategoryString",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "minorCategory",
					t = "ReportMinorCategory",
					nilable = false,
				},
			},
			rets = {
				{
					n = "minorCategoryString",
					t = "cstring",
					nilable = false,
				},
			},
		},
		{
			n = "ReportServerLag",
			k = "Function",
		},
		{
			n = "ReportStuckInCombat",
			k = "Function",
		},
		{
			n = "RequiresScreenshotForReportType",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "reportType",
					t = "ReportType",
					nilable = false,
				},
				{
					n = "majorCategory",
					t = "ReportMajorCategory",
					nilable = false,
				},
			},
			rets = {
				{
					n = "requiresScreenshot",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "SendReport",
			k = "Function",
			doc = {
				"Not allowed to be called by addons",
			},
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "reportInfo",
					t = "ReportInfo",
					nilable = false,
					mix = "ReportInfoMixin",
				},
				{
					n = "playerLocation",
					t = "PlayerLocation",
					nilable = true,
					mix = "PlayerLocationMixin",
				},
			},
			HasRestrictions = true,
		},
		{
			n = "SetScreenshotPreviewTexture",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "textureObject",
					t = "SimpleTexture",
					nilable = false,
				},
			},
		},
		{
			n = "TakeReportScreenshot",
			k = "Function",
		},
	},
	events = {
		{
			n = "ReportPlayerResult",
			k = "Event",
			payload = {
				{
					n = "result",
					t = "SendReportResult",
					nilable = false,
				},
				{
					n = "reportType",
					t = "ReportType",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "REPORT_PLAYER_RESULT",
		},
		{
			n = "ReportScreenshotReady",
			k = "Event",
			SynchronousEvent = true,
			literal = "REPORT_SCREENSHOT_READY",
		},
	},
}
systems[#systems + 1] = {
	name = "ReputationInfo",
	type = "System",
	ns = "C_Reputation",
	env = "All",
	file = "ReputationInfoDocumentation.lua",
	hash = "f4bdb4c884afb2922e11739f2eeb9ff5f8b11581456f5d1c3e45c0eb02f309f6",
	functions = {
		{
			n = "AreLegacyReputationsShown",
			k = "Function",
			rets = {
				{
					n = "areLegacyReputationsShown",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "CollapseAllFactionHeaders",
			k = "Function",
		},
		{
			n = "CollapseFactionHeader",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
		{
			n = "ExpandAllFactionHeaders",
			k = "Function",
		},
		{
			n = "ExpandFactionHeader",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
		{
			n = "GetFactionDataByID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "factionData",
					t = "FactionData",
					nilable = true,
				},
			},
		},
		{
			n = "GetFactionDataByIndex",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
			rets = {
				{
					n = "factionData",
					t = "FactionData",
					nilable = true,
				},
			},
		},
		{
			n = "GetFactionParagonInfo",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "currentValue",
					t = "number",
					nilable = false,
				},
				{
					n = "threshold",
					t = "number",
					nilable = false,
				},
				{
					n = "rewardQuestID",
					t = "number",
					nilable = false,
				},
				{
					n = "hasRewardPending",
					t = "bool",
					nilable = false,
				},
				{
					n = "tooLowLevelForParagon",
					t = "bool",
					nilable = false,
				},
				{
					n = "paragonStorageLevel",
					t = "number",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetGuildFactionData",
			k = "Function",
			rets = {
				{
					n = "guildFactionData",
					t = "FactionData",
					nilable = true,
				},
			},
		},
		{
			n = "GetGuildRepExpirationTime",
			k = "Function",
			rets = {
				{
					n = "expirationTime",
					t = "number",
					nilable = true,
				},
			},
		},
		{
			n = "GetNumFactions",
			k = "Function",
			rets = {
				{
					n = "numFactions",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "GetReputationSortType",
			k = "Function",
			rets = {
				{
					n = "sortType",
					t = "ReputationSortType",
					nilable = false,
				},
			},
		},
		{
			n = "GetSelectedFaction",
			k = "Function",
			rets = {
				{
					n = "selectedFactionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
		{
			n = "GetWatchedFactionData",
			k = "Function",
			rets = {
				{
					n = "watchedFactionData",
					t = "FactionData",
					nilable = true,
				},
			},
		},
		{
			n = "IsAccountWideReputation",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isAccountWide",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsFactionActive",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isActive",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsFactionParagon",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "factionIsParagon",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsFactionParagonForCurrentPlayer",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "currentPlayerHasParagon",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "IsMajorFaction",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "isMajorFaction",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RequestFactionParagonPreloadRewardData",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "SetFactionActive",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
				{
					n = "setActive",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "SetLegacyReputationsShown",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "showLegacyReputations",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "SetReputationSortType",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "sortType",
					t = "ReputationSortType",
					nilable = false,
				},
			},
		},
		{
			n = "SetSelectedFaction",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
		{
			n = "SetWatchedFactionByID",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "SetWatchedFactionByIndex",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
		{
			n = "ToggleFactionAtWar",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "factionSortIndex",
					t = "luaIndex",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "FactionStandingChanged",
			k = "Event",
			payload = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
				{
					n = "updatedStanding",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "FACTION_STANDING_CHANGED",
		},
	},
	tables = {
		{
			n = "ReputationSortType",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "ReputationSortType",
					EnumValue = 0,
				},
				{
					n = "Account",
					t = "ReputationSortType",
					EnumValue = 1,
				},
				{
					n = "Character",
					t = "ReputationSortType",
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "FactionData",
			k = "Structure",
			fields = {
				{
					n = "factionID",
					t = "number",
					nilable = false,
				},
				{
					n = "name",
					t = "cstring",
					nilable = false,
				},
				{
					n = "description",
					t = "cstring",
					nilable = false,
				},
				{
					n = "reaction",
					t = "luaIndex",
					nilable = false,
				},
				{
					n = "currentReactionThreshold",
					t = "number",
					nilable = false,
				},
				{
					n = "nextReactionThreshold",
					t = "number",
					nilable = false,
				},
				{
					n = "currentStanding",
					t = "number",
					nilable = false,
				},
				{
					n = "atWarWith",
					t = "bool",
					nilable = false,
				},
				{
					n = "canToggleAtWar",
					t = "bool",
					nilable = false,
				},
				{
					n = "isChild",
					t = "bool",
					nilable = false,
				},
				{
					n = "isHeader",
					t = "bool",
					nilable = false,
				},
				{
					n = "isHeaderWithRep",
					t = "bool",
					nilable = false,
				},
				{
					n = "isCollapsed",
					t = "bool",
					nilable = false,
				},
				{
					n = "isWatched",
					t = "bool",
					nilable = false,
				},
				{
					n = "hasBonusRepGain",
					t = "bool",
					nilable = false,
				},
				{
					n = "canSetInactive",
					t = "bool",
					nilable = false,
				},
				{
					n = "isAccountWide",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "ResearchInfo",
	type = "System",
	ns = "C_ResearchInfo",
	env = "All",
	file = "ResearchInfoDocumentation.lua",
	hash = "7b9fb456f560886e58f61312ea4eec742af98334b142ca47cbc5e42d2a33c5af",
	functions = {
		{
			n = "GetDigSitesForMap",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "digSites",
					t = "table",
					nilable = false,
					it = "DigSiteMapInfo",
				},
			},
		},
	},
	events = {
		{
			n = "ArchaeologyClosed",
			k = "Event",
			SynchronousEvent = true,
			literal = "ARCHAEOLOGY_CLOSED",
		},
		{
			n = "ArchaeologyFindComplete",
			k = "Event",
			payload = {
				{
					n = "numFindsCompleted",
					t = "number",
					nilable = false,
				},
				{
					n = "totalFinds",
					t = "number",
					nilable = false,
				},
				{
					n = "researchBranchID",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ARCHAEOLOGY_FIND_COMPLETE",
		},
		{
			n = "ArchaeologySurveyCast",
			k = "Event",
			payload = {
				{
					n = "numFindsCompleted",
					t = "number",
					nilable = false,
				},
				{
					n = "totalFinds",
					t = "number",
					nilable = false,
				},
				{
					n = "researchBranchID",
					t = "number",
					nilable = false,
				},
				{
					n = "successfulFind",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ARCHAEOLOGY_SURVEY_CAST",
		},
		{
			n = "ArchaeologyToggle",
			k = "Event",
			SynchronousEvent = true,
			literal = "ARCHAEOLOGY_TOGGLE",
		},
		{
			n = "ArtifactDigsiteComplete",
			k = "Event",
			payload = {
				{
					n = "researchBranchID",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ARTIFACT_DIGSITE_COMPLETE",
		},
		{
			n = "ResearchArtifactComplete",
			k = "Event",
			payload = {
				{
					n = "name",
					t = "cstring",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "RESEARCH_ARTIFACT_COMPLETE",
		},
		{
			n = "ResearchArtifactDigSiteUpdated",
			k = "Event",
			SynchronousEvent = true,
			literal = "RESEARCH_ARTIFACT_DIG_SITE_UPDATED",
		},
		{
			n = "ResearchArtifactUpdate",
			k = "Event",
			SynchronousEvent = true,
			literal = "RESEARCH_ARTIFACT_UPDATE",
		},
	},
	tables = {
		{
			n = "DigSiteMapInfo",
			k = "Structure",
			fields = {
				{
					n = "researchSiteID",
					t = "number",
					nilable = false,
				},
				{
					n = "position",
					t = "vector2",
					nilable = false,
					mix = "Vector2DMixin",
				},
				{
					n = "name",
					t = "cstring",
					nilable = false,
				},
				{
					n = "poiBlobID",
					t = "number",
					nilable = false,
				},
				{
					n = "textureIndex",
					t = "number",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "RestrictedActionsConstantsDocumentation.lua",
	hash = "59e155362c35cf8ea85384f5656cd6cbe26fe4f9b7aa21811a2fe22f66a3a335",
	tables = {
		{
			n = "AddOnRestrictionState",
			k = "Enumeration",
			fields = {
				{
					n = "Inactive",
					t = "AddOnRestrictionState",
					doc = {
						"State used when an addon restriction is not being enforced.",
					},
					EnumValue = 0,
				},
				{
					n = "Activating",
					t = "AddOnRestrictionState",
					doc = {
						"State used during the dispatch of ADDON_RESTRICTION_STATE_CHANGED to infer that a restriction is about to become active, but won't be enforced until event dispatch has completed.",
					},
					EnumValue = 1,
				},
				{
					n = "Active",
					t = "AddOnRestrictionState",
					doc = {
						"State used when an addon restriction is presently being enforced.",
					},
					EnumValue = 2,
				},
			},
			max = 2,
			min = 0,
			num = 3,
		},
		{
			n = "AddOnRestrictionType",
			k = "Enumeration",
			fields = {
				{
					n = "Combat",
					t = "AddOnRestrictionType",
					doc = {
						"The player is actively affecting combat.",
					},
					EnumValue = 0,
				},
				{
					n = "Encounter",
					t = "AddOnRestrictionType",
					doc = {
						"The player is actively participating in an instance encounter.",
					},
					EnumValue = 1,
				},
				{
					n = "ChallengeMode",
					t = "AddOnRestrictionType",
					doc = {
						"The player is in an active and incomplete challenge mode or mythic keystone dungeon.",
					},
					EnumValue = 2,
				},
				{
					n = "PvPMatch",
					t = "AddOnRestrictionType",
					doc = {
						"The player is in an active and incomplete PvP match.",
					},
					EnumValue = 3,
				},
				{
					n = "Map",
					t = "AddOnRestrictionType",
					doc = {
						"The player is on a map that applies addon restrictions.",
					},
					EnumValue = 4,
				},
				{
					n = "Chat",
					t = "AddOnRestrictionType",
					doc = {
						"The player is in a state where addon chat communications are restricted.",
					},
					EnumValue = 5,
				},
			},
			max = 5,
			min = 0,
			num = 6,
		},
	},
}
systems[#systems + 1] = {
	name = "RestrictedActions",
	type = "System",
	ns = "C_RestrictedActions",
	env = "All",
	file = "RestrictedActionsDocumentation.lua",
	hash = "b26826c2081edf8e7ce770f75911eebb43d55432c79f363440a48aa3bc1ea27a",
	functions = {
		{
			n = "CheckAllowProtectedFunctions",
			k = "Function",
			doc = {
				"Returns true if the calling context has permissions to call protected functions on the supplied object.",
			},
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "object",
					t = "FrameScriptObject",
					nilable = false,
				},
				{
					n = "silent",
					t = "bool",
					nilable = false,
					def = false,
					doc = {
						"If true, don't signal blocked action errors if protected function calls are disallowed.",
					},
				},
			},
			rets = {
				{
					n = "protectedFunctionsAllowed",
					t = "bool",
					nilable = false,
				},
			},
			SecureHooksAllowed = false,
		},
		{
			n = "GetAddOnRestrictionState",
			k = "Function",
			doc = {
				"Returns the current state of an addon restriction type.",
			},
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "type",
					t = "AddOnRestrictionType",
					nilable = false,
				},
			},
			rets = {
				{
					n = "state",
					t = "AddOnRestrictionState",
					nilable = false,
				},
			},
		},
		{
			n = "InCombatLockdown",
			k = "Function",
			rets = {
				{
					n = "inCombatLockdown",
					t = "bool",
					nilable = false,
				},
			},
			Namespace = "",
		},
		{
			n = "IsAddOnRestrictionActive",
			k = "Function",
			doc = {
				"Returns true if an addon restriction type is in an active state. Will always return false during dispatch of ADDON_RESTRICTION_STATE_CHANGED.",
			},
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "type",
					t = "AddOnRestrictionType",
					nilable = false,
				},
			},
			rets = {
				{
					n = "active",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "AddonActionBlocked",
			k = "Event",
			payload = {
				{
					n = "isTainted",
					t = "cstring",
					nilable = false,
				},
				{
					n = "function",
					t = "cstring",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ADDON_ACTION_BLOCKED",
		},
		{
			n = "AddonActionForbidden",
			k = "Event",
			payload = {
				{
					n = "isTainted",
					t = "cstring",
					nilable = false,
				},
				{
					n = "function",
					t = "cstring",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ADDON_ACTION_FORBIDDEN",
		},
		{
			n = "AddonRestrictionStateChanged",
			k = "Event",
			doc = {
				"Fired when the state of an addon restriction type is changing. This event is sequenced such that it will always be fired before a restriction becomes active, or after it is deactivated.",
			},
			payload = {
				{
					n = "type",
					t = "AddOnRestrictionType",
					nilable = false,
				},
				{
					n = "state",
					t = "AddOnRestrictionState",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "ADDON_RESTRICTION_STATE_CHANGED",
		},
		{
			n = "MacroActionBlocked",
			k = "Event",
			payload = {
				{
					n = "function",
					t = "cstring",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "MACRO_ACTION_BLOCKED",
		},
		{
			n = "MacroActionForbidden",
			k = "Event",
			payload = {
				{
					n = "function",
					t = "cstring",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "MACRO_ACTION_FORBIDDEN",
		},
	},
}
systems[#systems + 1] = {
	name = "",
	type = "",
	ns = "",
	env = "",
	file = "RolodexConstantsDocumentation.lua",
	hash = "d6abbf80e53f1f557db1f25b61238902829a804adb690fd87dbd70405496d946",
	tables = {
		{
			n = "RolodexContextLevelType",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "RolodexContextLevelType",
					EnumValue = 0,
				},
				{
					n = "Difficulty",
					t = "RolodexContextLevelType",
					EnumValue = 1,
				},
				{
					n = "KeystoneLevel",
					t = "RolodexContextLevelType",
					EnumValue = 2,
				},
				{
					n = "DelveTier",
					t = "RolodexContextLevelType",
					EnumValue = 3,
				},
			},
			max = 3,
			min = 0,
			num = 4,
		},
		{
			n = "RolodexType",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "RolodexType",
					EnumValue = 0,
				},
				{
					n = "PartyMember",
					t = "RolodexType",
					EnumValue = 1,
				},
				{
					n = "RaidMember",
					t = "RolodexType",
					EnumValue = 2,
				},
				{
					n = "Trade",
					t = "RolodexType",
					EnumValue = 3,
				},
				{
					n = "Whisper",
					t = "RolodexType",
					EnumValue = 4,
				},
				{
					n = "PublicOrderFilledByOther",
					t = "RolodexType",
					EnumValue = 5,
				},
				{
					n = "PublicOrderFilledByYou",
					t = "RolodexType",
					EnumValue = 6,
				},
				{
					n = "PersonalOrderFilledByOther",
					t = "RolodexType",
					EnumValue = 7,
				},
				{
					n = "PersonalOrderFilledByYou",
					t = "RolodexType",
					EnumValue = 8,
				},
				{
					n = "GuildOrderFilledByOther",
					t = "RolodexType",
					EnumValue = 9,
				},
				{
					n = "GuildOrderFilledByYou",
					t = "RolodexType",
					EnumValue = 10,
				},
				{
					n = "CreatureKill",
					t = "RolodexType",
					EnumValue = 11,
				},
				{
					n = "CompleteDungeon",
					t = "RolodexType",
					EnumValue = 12,
				},
				{
					n = "KillRaidBoss",
					t = "RolodexType",
					EnumValue = 13,
				},
				{
					n = "KillLfrBoss",
					t = "RolodexType",
					EnumValue = 14,
				},
				{
					n = "CompleteDelve",
					t = "RolodexType",
					EnumValue = 15,
				},
				{
					n = "CompleteArena",
					t = "RolodexType",
					EnumValue = 16,
				},
				{
					n = "CompleteBg",
					t = "RolodexType",
					EnumValue = 17,
				},
				{
					n = "Duel",
					t = "RolodexType",
					EnumValue = 18,
				},
				{
					n = "PetBattle",
					t = "RolodexType",
					EnumValue = 19,
				},
				{
					n = "PvPKill",
					t = "RolodexType",
					EnumValue = 20,
				},
			},
			max = 20,
			min = 0,
			num = 21,
		},
		{
			n = "RolodexTypeFlags",
			k = "Enumeration",
			fields = {
				{
					n = "None",
					t = "RolodexTypeFlags",
					EnumValue = 0,
				},
				{
					n = "HiddenFromHistory",
					t = "RolodexTypeFlags",
					EnumValue = 1,
				},
			},
			max = 1,
			min = 0,
			num = 2,
		},
	},
}
systems[#systems + 1] = {
	name = "ScenarioInfo",
	type = "System",
	ns = "C_ScenarioInfo",
	env = "All",
	file = "ScenarioInfoDocumentation.lua",
	hash = "f79b9818d7776e4c6bbc6da35871e3d0393081c6c6c41af3e850df8bf1fc4657",
	functions = {
		{
			n = "GetCriteriaInfo",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "criteriaIndex",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "scenarioCriteriaInfo",
					t = "ScenarioCriteriaInfo",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetCriteriaInfoByStep",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "stepID",
					t = "number",
					nilable = false,
				},
				{
					n = "criteriaIndex",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "scenarioCriteriaInfo",
					t = "ScenarioCriteriaInfo",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetDisplayInfo",
			k = "Function",
			rets = {
				{
					n = "info",
					t = "ScenarioDisplayInfo",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetJailersTowerTypeString",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "runType",
					t = "JailersTowerType",
					nilable = false,
				},
			},
			rets = {
				{
					n = "typeString",
					t = "cstring",
					nilable = true,
				},
			},
		},
		{
			n = "GetScenarioIconInfo",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "uiMapID",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "scenarioInfos",
					t = "table",
					nilable = false,
					it = "ScenarioIconInfo",
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetScenarioInfo",
			k = "Function",
			rets = {
				{
					n = "scenarioInfo",
					t = "ScenarioInformation",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetScenarioStepInfo",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "scenarioStepID",
					t = "number",
					nilable = true,
				},
			},
			rets = {
				{
					n = "scenarioStepInfo",
					t = "ScenarioStepInfo",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetTieredEntranceActiveSpells",
			k = "Function",
			doc = {
				"Returns list of active challenge spells if inside a tiered entrance scenario",
			},
			rets = {
				{
					n = "spellIDs",
					t = "table",
					nilable = true,
					it = "number",
				},
			},
		},
		{
			n = "GetUnitCriteriaProgressValues",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "unit",
					t = "UnitToken",
					nilable = false,
				},
			},
			rets = {
				{
					n = "actualValue",
					t = "number",
					nilable = false,
				},
				{
					n = "percentValue",
					t = "number",
					nilable = false,
				},
				{
					n = "percentValueString",
					t = "string",
					nilable = false,
				},
			},
			SecretWhenUnitIdentityRestricted = true,
			mayReturnNothing = true,
		},
		{
			n = "IsTieredEntranceScenario",
			k = "Function",
			rets = {
				{
					n = "isTieredEntrance",
					t = "bool",
					nilable = false,
				},
			},
		},
	},
	events = {
		{
			n = "JailersTowerLevelUpdate",
			k = "Event",
			payload = {
				{
					n = "level",
					t = "number",
					nilable = false,
				},
				{
					n = "type",
					t = "JailersTowerType",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "JAILERS_TOWER_LEVEL_UPDATE",
		},
		{
			n = "ScenarioBonusObjectiveComplete",
			k = "Event",
			payload = {
				{
					n = "bonusObjectiveID",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "SCENARIO_BONUS_OBJECTIVE_COMPLETE",
		},
		{
			n = "ScenarioBonusVisibilityUpdate",
			k = "Event",
			SynchronousEvent = true,
			literal = "SCENARIO_BONUS_VISIBILITY_UPDATE",
		},
		{
			n = "ScenarioCompleted",
			k = "Event",
			payload = {
				{
					n = "questID",
					t = "number",
					nilable = true,
				},
				{
					n = "xp",
					t = "number",
					nilable = true,
				},
				{
					n = "money",
					t = "number",
					nilable = true,
				},
			},
			SynchronousEvent = true,
			literal = "SCENARIO_COMPLETED",
		},
		{
			n = "ScenarioCriteriaShowStateUpdate",
			k = "Event",
			payload = {
				{
					n = "show",
					t = "bool",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "SCENARIO_CRITERIA_SHOW_STATE_UPDATE",
		},
		{
			n = "ScenarioCriteriaUpdate",
			k = "Event",
			payload = {
				{
					n = "criteriaID",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "SCENARIO_CRITERIA_UPDATE",
		},
		{
			n = "ScenarioPoiUpdate",
			k = "Event",
			SynchronousEvent = true,
			literal = "SCENARIO_POI_UPDATE",
		},
		{
			n = "ScenarioSpellUpdate",
			k = "Event",
			SynchronousEvent = true,
			literal = "SCENARIO_SPELL_UPDATE",
		},
		{
			n = "ScenarioUpdate",
			k = "Event",
			payload = {
				{
					n = "newStep",
					t = "bool",
					nilable = true,
				},
			},
			SynchronousEvent = true,
			literal = "SCENARIO_UPDATE",
		},
	},
	tables = {
		{
			n = "JailersTowerType",
			k = "Enumeration",
			fields = {
				{
					n = "TwistingCorridors",
					t = "JailersTowerType",
					EnumValue = 0,
				},
				{
					n = "SkoldusHalls",
					t = "JailersTowerType",
					EnumValue = 1,
				},
				{
					n = "FractureChambers",
					t = "JailersTowerType",
					EnumValue = 2,
				},
				{
					n = "Soulforges",
					t = "JailersTowerType",
					EnumValue = 3,
				},
				{
					n = "Coldheart",
					t = "JailersTowerType",
					EnumValue = 4,
				},
				{
					n = "Mortregar",
					t = "JailersTowerType",
					EnumValue = 5,
				},
				{
					n = "UpperReaches",
					t = "JailersTowerType",
					EnumValue = 6,
				},
				{
					n = "ArkobanHall",
					t = "JailersTowerType",
					EnumValue = 7,
				},
				{
					n = "TormentChamberJaina",
					t = "JailersTowerType",
					EnumValue = 8,
				},
				{
					n = "TormentChamberThrall",
					t = "JailersTowerType",
					EnumValue = 9,
				},
				{
					n = "TormentChamberAnduin",
					t = "JailersTowerType",
					EnumValue = 10,
				},
				{
					n = "AdamantVaults",
					t = "JailersTowerType",
					EnumValue = 11,
				},
				{
					n = "ForgottenCatacombs",
					t = "JailersTowerType",
					EnumValue = 12,
				},
				{
					n = "Ossuary",
					t = "JailersTowerType",
					EnumValue = 13,
				},
				{
					n = "BossRush",
					t = "JailersTowerType",
					EnumValue = 14,
				},
			},
			max = 14,
			min = 0,
			num = 15,
		},
		{
			n = "ScenarioCriteriaInfo",
			k = "Structure",
			fields = {
				{
					n = "description",
					t = "string",
					nilable = false,
				},
				{
					n = "criteriaType",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "completed",
					t = "bool",
					nilable = false,
					def = false,
				},
				{
					n = "quantity",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "totalQuantity",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "flags",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "assetID",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "criteriaID",
					t = "number",
					nilable = false,
				},
				{
					n = "duration",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "elapsed",
					t = "number",
					nilable = false,
					def = 0,
				},
				{
					n = "failed",
					t = "bool",
					nilable = false,
					def = false,
				},
				{
					n = "isWeightedProgress",
					t = "bool",
					nilable = false,
					def = false,
				},
				{
					n = "isFormatted",
					t = "bool",
					nilable = false,
					def = false,
				},
				{
					n = "quantityString",
					t = "string",
					nilable = false,
				},
			},
		},
		{
			n = "ScenarioDisplayInfo",
			k = "Structure",
			fields = {
				{
					n = "themeColor",
					t = "colorRGB",
					nilable = false,
					mix = "ColorMixin",
				},
			},
		},
		{
			n = "ScenarioIconInfo",
			k = "Structure",
			fields = {
				{
					n = "x",
					t = "number",
					nilable = false,
				},
				{
					n = "y",
					t = "number",
					nilable = false,
				},
				{
					n = "atlas",
					t = "textureAtlas",
					nilable = false,
				},
				{
					n = "description",
					t = "cstring",
					nilable = false,
				},
			},
		},
		{
			n = "ScenarioInformation",
			k = "Structure",
			fields = {
				{
					n = "name",
					t = "string",
					nilable = false,
				},
				{
					n = "currentStage",
					t = "number",
					nilable = false,
				},
				{
					n = "numStages",
					t = "number",
					nilable = false,
				},
				{
					n = "flags",
					t = "number",
					nilable = false,
				},
				{
					n = "isComplete",
					t = "bool",
					nilable = false,
				},
				{
					n = "xp",
					t = "number",
					nilable = false,
				},
				{
					n = "money",
					t = "number",
					nilable = false,
				},
				{
					n = "type",
					t = "number",
					nilable = false,
				},
				{
					n = "area",
					t = "string",
					nilable = false,
				},
				{
					n = "uiTextureKit",
					t = "textureKit",
					nilable = false,
				},
				{
					n = "scenarioID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "ScenarioStepInfo",
			k = "Structure",
			fields = {
				{
					n = "title",
					t = "string",
					nilable = false,
				},
				{
					n = "description",
					t = "string",
					nilable = false,
				},
				{
					n = "numCriteria",
					t = "number",
					nilable = false,
				},
				{
					n = "stepFailed",
					t = "bool",
					nilable = false,
				},
				{
					n = "isBonusStep",
					t = "bool",
					nilable = false,
				},
				{
					n = "isForCurrentStepOnly",
					t = "bool",
					nilable = false,
				},
				{
					n = "shouldShowBonusObjective",
					t = "bool",
					nilable = false,
				},
				{
					n = "spells",
					t = "table",
					nilable = false,
					it = "ScenarioStepSpellInfo",
				},
				{
					n = "weightedProgress",
					t = "number",
					nilable = true,
				},
				{
					n = "rewardQuestID",
					t = "number",
					nilable = false,
				},
				{
					n = "widgetSetID",
					t = "number",
					nilable = true,
				},
				{
					n = "stepID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "ScenarioStepSpellInfo",
			k = "Structure",
			fields = {
				{
					n = "spellID",
					t = "number",
					nilable = false,
				},
				{
					n = "name",
					t = "string",
					nilable = false,
				},
				{
					n = "icon",
					t = "number",
					nilable = false,
				},
			},
		},
	},
}
systems[#systems + 1] = {
	name = "ScrappingMachineUI",
	type = "System",
	ns = "C_ScrappingMachineUI",
	env = "All",
	file = "ScrappingMachineUIDocumentation.lua",
	hash = "76951744742c367a5311691980a47f7723f85d0e779e3ce5a85c331f9e77bb4b",
	functions = {
		{
			n = "CloseScrappingMachine",
			k = "Function",
		},
		{
			n = "DropPendingScrapItemFromCursor",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "index",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "GetCurrentPendingScrapItemLocationByIndex",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "index",
					t = "number",
					nilable = false,
				},
			},
			rets = {
				{
					n = "itemLoc",
					t = "ItemLocation",
					nilable = false,
					mix = "ItemLocationMixin",
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "GetScrapSpellID",
			k = "Function",
			rets = {
				{
					n = "spellID",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "GetScrappingMachineName",
			k = "Function",
			rets = {
				{
					n = "name",
					t = "string",
					nilable = false,
				},
			},
			mayReturnNothing = true,
		},
		{
			n = "HasScrappableItems",
			k = "Function",
			rets = {
				{
					n = "hasScrappableItems",
					t = "bool",
					nilable = false,
				},
			},
		},
		{
			n = "RemoveAllScrapItems",
			k = "Function",
		},
		{
			n = "RemoveCurrentScrappingItem",
			k = "Function",
		},
		{
			n = "RemoveItemToScrap",
			k = "Function",
			sec = "AllowedWhenUntainted",
			args = {
				{
					n = "index",
					t = "number",
					nilable = false,
				},
			},
		},
		{
			n = "ScrapItems",
			k = "Function",
		},
		{
			n = "ValidateScrappingList",
			k = "Function",
		},
	},
	events = {
		{
			n = "ScrappingMachineItemAdded",
			k = "Event",
			payload = {
				{
					n = "index",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "SCRAPPING_MACHINE_ITEM_ADDED",
		},
		{
			n = "ScrappingMachineItemRemoved",
			k = "Event",
			payload = {
				{
					n = "index",
					t = "number",
					nilable = false,
				},
			},
			SynchronousEvent = true,
			literal = "SCRAPPING_MACHINE_ITEM_REMOVED",
		},
		{
			n = "ScrappingMachinePendingItemChanged",
			k = "Event",
			SynchronousEvent = true,
			literal = "SCRAPPING_MACHINE_PENDING_ITEM_CHANGED",
		},
		{
			n = "ScrappingMachineScrappingFinished",
			k = "Event",
			SynchronousEvent = true,
			literal = "SCRAPPING_MACHINE_SCRAPPING_FINISHED",
		},
	},
}
