local Localization = { Name = "Localization", Type = "System", Environment = "All", Functions = { { Name = "AbbreviateLargeNumbers", Type = "Function", SecretArguments = "AllowedWhenTainted", Arguments = { { Name = "number", Type = "number", Nilable = false }, { Name = "options", Type = "NumberAbbrevOptions", Nilable = true }, }, Returns = { { Name = "result", Type = "string", Nilable = false }, }, }, { Name = "AbbreviateNumbers", Type = "Function", SecretArguments = "AllowedWhenTainted", Arguments = { { Name = "number", Type = "number", Nilable = false }, { Name = "options", Type = "NumberAbbrevOptions", Nilable = true }, }, Returns = { { Name = "result", Type = "string", Nilable = false }, }, }, { Name = "BreakUpLargeNumbers", Type = "Function", SecretArguments = "AllowedWhenTainted", Arguments = { { Name = "largeNumber", Type = "number", Nilable = false }, { Name = "natural", Type = "bool", Nilable = false, NeverSecret = true, Default = false }, }, Returns = { { Name = "result", Type = "string", Nilable = false }, }, }, { Name = "CaseAccentInsensitiveParse", Type = "Function", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "name", Type = "cstring", Nilable = false }, }, Returns = { { Name = "result", Type = "string", Nilable = false }, }, }, { Name = "CreateAbbreviateConfig", Type = "Function", RequiresRestrictedAbbreviationBreakpoints = true, SecretArguments = "NotAllowed", Arguments = { { Name = "data", Type = "table", InnerType = "NumberAbbreviationBreakpoint", Nilable = false }, }, Returns = { { Name = "config", Type = "AbbreviateConfig", Nilable = false }, }, }, { Name = "DeclineName", Type = "Function", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "name", Type = "cstring", Nilable = false }, { Name = "gender", Type = "UnitSex", Nilable = true }, { Name = "declensionSet", Type = "luaIndex", Nilable = false }, { Name = "namePartType", Type = "NamePartType", Nilable = true }, }, Returns = { { Name = "declinedNames", Type = "string", Nilable = false, StrideIndex = 1 }, }, }, { Name = "GetDefaultAbbreviationBreakpoints", Type = "Function", Namespace = "C_StringUtil", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "locale", Type = "WowLocale", Nilable = true }, }, Returns = { { Name = "breakpoints", Type = "table", InnerType = "NumberAbbreviationBreakpoint", Nilable = false }, }, }, { Name = "GetNumDeclensionSets", Type = "Function", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "name", Type = "cstring", Nilable = false }, { Name = "gender", Type = "UnitSex", Nilable = true }, { Name = "namePartType", Type = "NamePartType", Nilable = true }, }, Returns = { { Name = "numDeclensionSets", Type = "number", Nilable = false }, }, }, { Name = "IsEuropeanNumbers", Type = "Function", Returns = { { Name = "enabled", Type = "bool", Nilable = false }, }, }, { Name = "LocalizedClassList", Type = "Function", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "isFemale", Type = "bool", Nilable = false, Default = false }, }, Returns = { { Name = "result", Type = "LuaValueVariant", Nilable = false }, }, }, { Name = "SetEuropeanNumbers", Type = "Function", SecretArguments = "AllowedWhenUntainted", Arguments = { { Name = "enabled", Type = "bool", Nilable = false }, }, }, }, Events = { }, Tables = { { Name = "NumberAbbrevOptions", Type = "Structure", Fields = { { Name = "breakpointData", Type = "table", InnerType = "NumberAbbreviationBreakpoint", Nilable = true, Documentation = { "Order these from largest to smallest." } }, { Name = "locale", Type = "cstring", Nilable = true, Documentation = { "Locale controls whether standard asian abbreviation data will be used along with a small change in behavior for large number abbreviation when fractionDivisor is greater than zero." } }, { Name = "config", Type = "AbbreviateConfig", Nilable = true, Documentation = { "Provides a cached config object for optimal performance when calling abbreviation functions multiple times with the same options." } }, }, }, }, Predicates = { }, }; APIDocumentation:AddDocumentationTable(Localization);