@pinta365/blizzard_api 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (423) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +145 -37
  3. package/esm/mod.d.ts +43 -6
  4. package/esm/mod.js +69 -6
  5. package/esm/src/client.d.ts +95 -0
  6. package/esm/src/client.js +52 -0
  7. package/esm/src/diablo3/community/act.d.ts +29 -0
  8. package/esm/src/diablo3/community/act.js +23 -0
  9. package/esm/src/diablo3/community/artisan.d.ts +50 -0
  10. package/esm/src/diablo3/community/artisan.js +25 -0
  11. package/esm/src/diablo3/community/follower.d.ts +25 -0
  12. package/esm/src/diablo3/community/follower.js +12 -0
  13. package/esm/src/diablo3/community/hero.d.ts +57 -0
  14. package/esm/src/diablo3/community/hero.js +25 -0
  15. package/esm/src/diablo3/community/item.d.ts +48 -0
  16. package/esm/src/diablo3/community/item.js +12 -0
  17. package/esm/src/diablo3/community/item_type.d.ts +26 -0
  18. package/esm/src/diablo3/community/item_type.js +23 -0
  19. package/esm/src/diablo3/community/profile.d.ts +352 -0
  20. package/esm/src/diablo3/community/profile.js +61 -0
  21. package/esm/src/diablo3/game_data/d3.d.ts +127 -0
  22. package/esm/src/diablo3/game_data/d3.js +72 -0
  23. package/esm/src/diablo3/index.d.ts +8 -0
  24. package/esm/src/diablo3/index.js +8 -0
  25. package/esm/src/diablo3/types.d.ts +8 -0
  26. package/esm/src/diablo3/types.js +1 -0
  27. package/esm/src/generated/diablo3_api.d.ts +156 -0
  28. package/esm/src/generated/diablo3_api.js +2 -0
  29. package/esm/src/generated/hearthstone_api.d.ts +51 -0
  30. package/esm/src/generated/hearthstone_api.js +2 -0
  31. package/esm/src/generated/sc2_api.d.ts +139 -0
  32. package/esm/src/generated/sc2_api.js +2 -0
  33. package/esm/src/generated/wow_api.d.ts +1482 -0
  34. package/esm/src/generated/wow_api.js +2 -0
  35. package/esm/src/generated/wow_classic_api.d.ts +555 -0
  36. package/esm/src/generated/wow_classic_api.js +2 -0
  37. package/esm/src/generated/wow_classic_era_api.d.ts +418 -0
  38. package/esm/src/generated/wow_classic_era_api.js +2 -0
  39. package/esm/src/hearthstone/game_data/card_backs.d.ts +31 -0
  40. package/esm/src/hearthstone/game_data/card_backs.js +22 -0
  41. package/esm/src/hearthstone/game_data/cards.d.ts +55 -0
  42. package/esm/src/hearthstone/game_data/cards.js +26 -0
  43. package/esm/src/hearthstone/game_data/decks.d.ts +29 -0
  44. package/esm/src/hearthstone/game_data/decks.js +13 -0
  45. package/esm/src/hearthstone/game_data/metadata.d.ts +82 -0
  46. package/esm/src/hearthstone/game_data/metadata.js +11 -0
  47. package/esm/src/hearthstone/index.d.ts +4 -0
  48. package/esm/src/hearthstone/index.js +4 -0
  49. package/esm/src/hearthstone/search.d.ts +21 -0
  50. package/esm/src/hearthstone/search.js +28 -0
  51. package/esm/src/hearthstone/types.d.ts +5 -0
  52. package/esm/src/hearthstone/types.js +1 -0
  53. package/esm/src/shared/bind.d.ts +14 -0
  54. package/esm/src/shared/bind.js +15 -0
  55. package/esm/src/shared/context.d.ts +163 -0
  56. package/esm/src/shared/context.js +304 -0
  57. package/esm/src/shared/errors.d.ts +53 -0
  58. package/esm/src/shared/errors.js +95 -0
  59. package/esm/src/shared/index.d.ts +4 -0
  60. package/esm/src/shared/index.js +2 -0
  61. package/esm/src/shared/types.d.ts +133 -0
  62. package/esm/src/shared/types.js +2 -0
  63. package/esm/src/starcraft2/community/account.d.ts +19 -0
  64. package/esm/src/starcraft2/community/account.js +15 -0
  65. package/esm/src/starcraft2/community/ladder.d.ts +29 -0
  66. package/esm/src/starcraft2/community/ladder.js +27 -0
  67. package/esm/src/starcraft2/community/legacy.d.ts +206 -0
  68. package/esm/src/starcraft2/community/legacy.js +83 -0
  69. package/esm/src/starcraft2/community/profile.d.ts +255 -0
  70. package/esm/src/starcraft2/community/profile.js +73 -0
  71. package/esm/src/starcraft2/game_data/league.d.ts +35 -0
  72. package/esm/src/starcraft2/game_data/league.js +20 -0
  73. package/esm/src/starcraft2/index.d.ts +5 -0
  74. package/esm/src/starcraft2/index.js +5 -0
  75. package/esm/src/starcraft2/types.d.ts +5 -0
  76. package/esm/src/starcraft2/types.js +1 -0
  77. package/esm/src/wow/game_data/achievement.d.ts +87 -0
  78. package/esm/src/wow/game_data/achievement.js +68 -0
  79. package/esm/src/wow/game_data/auction_house.d.ts +65 -0
  80. package/esm/src/wow/game_data/auction_house.js +33 -0
  81. package/esm/src/wow/game_data/azerite_essence.d.ts +50 -0
  82. package/esm/src/wow/game_data/azerite_essence.js +48 -0
  83. package/esm/src/wow/game_data/connected_realm.d.ts +62 -0
  84. package/esm/src/wow/game_data/connected_realm.js +35 -0
  85. package/esm/src/wow/game_data/covenant.d.ts +115 -0
  86. package/esm/src/wow/game_data/covenant.js +88 -0
  87. package/esm/src/wow/game_data/creature.d.ts +98 -0
  88. package/esm/src/wow/game_data/creature.js +99 -0
  89. package/esm/src/wow/game_data/guild_crest.d.ts +56 -0
  90. package/esm/src/wow/game_data/guild_crest.js +38 -0
  91. package/esm/src/wow/game_data/heirloom.d.ts +82 -0
  92. package/esm/src/wow/game_data/heirloom.js +25 -0
  93. package/esm/src/wow/game_data/housing.d.ts +111 -0
  94. package/esm/src/wow/game_data/housing.js +124 -0
  95. package/esm/src/wow/game_data/item.d.ts +183 -0
  96. package/esm/src/wow/game_data/item.js +100 -0
  97. package/esm/src/wow/game_data/item_appearance.d.ts +102 -0
  98. package/esm/src/wow/game_data/item_appearance.js +73 -0
  99. package/esm/src/wow/game_data/journal.d.ts +124 -0
  100. package/esm/src/wow/game_data/journal.js +98 -0
  101. package/esm/src/wow/game_data/keystone_affix.d.ts +39 -0
  102. package/esm/src/wow/game_data/keystone_affix.js +38 -0
  103. package/esm/src/wow/game_data/media_search.d.ts +9 -0
  104. package/esm/src/wow/game_data/media_search.js +10 -0
  105. package/esm/src/wow/game_data/modified_crafting.d.ts +65 -0
  106. package/esm/src/wow/game_data/modified_crafting.js +62 -0
  107. package/esm/src/wow/game_data/mount.d.ts +38 -0
  108. package/esm/src/wow/game_data/mount.js +35 -0
  109. package/esm/src/wow/game_data/mythic_keystone_dungeon.d.ts +92 -0
  110. package/esm/src/wow/game_data/mythic_keystone_dungeon.js +87 -0
  111. package/esm/src/wow/game_data/mythic_keystone_leaderboard.d.ts +70 -0
  112. package/esm/src/wow/game_data/mythic_keystone_leaderboard.js +28 -0
  113. package/esm/src/wow/game_data/mythic_raid_leaderboard.d.ts +36 -0
  114. package/esm/src/wow/game_data/mythic_raid_leaderboard.js +14 -0
  115. package/esm/src/wow/game_data/neighborhood.d.ts +36 -0
  116. package/esm/src/wow/game_data/neighborhood.js +38 -0
  117. package/esm/src/wow/game_data/pet.d.ts +93 -0
  118. package/esm/src/wow/game_data/pet.js +76 -0
  119. package/esm/src/wow/game_data/playable_class.d.ts +58 -0
  120. package/esm/src/wow/game_data/playable_class.js +51 -0
  121. package/esm/src/wow/game_data/playable_race.d.ts +31 -0
  122. package/esm/src/wow/game_data/playable_race.js +25 -0
  123. package/esm/src/wow/game_data/playable_specialization.d.ts +63 -0
  124. package/esm/src/wow/game_data/playable_specialization.js +38 -0
  125. package/esm/src/wow/game_data/power_type.d.ts +22 -0
  126. package/esm/src/wow/game_data/power_type.js +25 -0
  127. package/esm/src/wow/game_data/profession.d.ts +88 -0
  128. package/esm/src/wow/game_data/profession.js +78 -0
  129. package/esm/src/wow/game_data/pvp_season.d.ts +108 -0
  130. package/esm/src/wow/game_data/pvp_season.js +66 -0
  131. package/esm/src/wow/game_data/pvp_tier.d.ts +41 -0
  132. package/esm/src/wow/game_data/pvp_tier.js +38 -0
  133. package/esm/src/wow/game_data/quest.d.ts +116 -0
  134. package/esm/src/wow/game_data/quest.js +100 -0
  135. package/esm/src/wow/game_data/realm.d.ts +43 -0
  136. package/esm/src/wow/game_data/realm.js +35 -0
  137. package/esm/src/wow/game_data/region.d.ts +26 -0
  138. package/esm/src/wow/game_data/region.js +25 -0
  139. package/esm/src/wow/game_data/reputations.d.ts +57 -0
  140. package/esm/src/wow/game_data/reputations.js +50 -0
  141. package/esm/src/wow/game_data/spell.d.ts +34 -0
  142. package/esm/src/wow/game_data/spell.js +36 -0
  143. package/esm/src/wow/game_data/talent.d.ts +143 -0
  144. package/esm/src/wow/game_data/talent.js +89 -0
  145. package/esm/src/wow/game_data/tech_talent.d.ts +72 -0
  146. package/esm/src/wow/game_data/tech_talent.js +63 -0
  147. package/esm/src/wow/game_data/title.d.ts +33 -0
  148. package/esm/src/wow/game_data/title.js +25 -0
  149. package/esm/src/wow/game_data/token.d.ts +17 -0
  150. package/esm/src/wow/game_data/token.js +18 -0
  151. package/esm/src/wow/game_data/toy.d.ts +25 -0
  152. package/esm/src/wow/game_data/toy.js +25 -0
  153. package/esm/src/wow/index.d.ts +59 -0
  154. package/esm/src/wow/index.js +61 -0
  155. package/esm/src/wow/profile/account_profile.d.ts +185 -0
  156. package/esm/src/wow/profile/account_profile.js +132 -0
  157. package/esm/src/wow/profile/character_achievements.d.ts +88 -0
  158. package/esm/src/wow/profile/character_achievements.js +28 -0
  159. package/esm/src/wow/profile/character_appearance.d.ts +79 -0
  160. package/esm/src/wow/profile/character_appearance.js +14 -0
  161. package/esm/src/wow/profile/character_collections.d.ts +132 -0
  162. package/esm/src/wow/profile/character_collections.js +98 -0
  163. package/esm/src/wow/profile/character_encounters.d.ts +78 -0
  164. package/esm/src/wow/profile/character_encounters.js +42 -0
  165. package/esm/src/wow/profile/character_equipment.d.ts +177 -0
  166. package/esm/src/wow/profile/character_equipment.js +14 -0
  167. package/esm/src/wow/profile/character_house.d.ts +16 -0
  168. package/esm/src/wow/profile/character_house.js +17 -0
  169. package/esm/src/wow/profile/character_hunter_pets.d.ts +22 -0
  170. package/esm/src/wow/profile/character_hunter_pets.js +14 -0
  171. package/esm/src/wow/profile/character_media.d.ts +14 -0
  172. package/esm/src/wow/profile/character_media.js +14 -0
  173. package/esm/src/wow/profile/character_mythic_keystone_profile.d.ts +70 -0
  174. package/esm/src/wow/profile/character_mythic_keystone_profile.js +31 -0
  175. package/esm/src/wow/profile/character_professions.d.ts +29 -0
  176. package/esm/src/wow/profile/character_professions.js +14 -0
  177. package/esm/src/wow/profile/character_profile.d.ts +83 -0
  178. package/esm/src/wow/profile/character_profile.js +39 -0
  179. package/esm/src/wow/profile/character_pvp.d.ts +53 -0
  180. package/esm/src/wow/profile/character_pvp.js +29 -0
  181. package/esm/src/wow/profile/character_quests.d.ts +29 -0
  182. package/esm/src/wow/profile/character_quests.js +28 -0
  183. package/esm/src/wow/profile/character_reputations.d.ts +30 -0
  184. package/esm/src/wow/profile/character_reputations.js +14 -0
  185. package/esm/src/wow/profile/character_soulbinds.d.ts +31 -0
  186. package/esm/src/wow/profile/character_soulbinds.js +14 -0
  187. package/esm/src/wow/profile/character_specializations.d.ts +82 -0
  188. package/esm/src/wow/profile/character_specializations.js +14 -0
  189. package/esm/src/wow/profile/character_statistics.d.ts +104 -0
  190. package/esm/src/wow/profile/character_statistics.js +14 -0
  191. package/esm/src/wow/profile/character_titles.d.ts +14 -0
  192. package/esm/src/wow/profile/character_titles.js +14 -0
  193. package/esm/src/wow/profile/guild.d.ts +150 -0
  194. package/esm/src/wow/profile/guild.js +56 -0
  195. package/esm/src/wow/search.d.ts +23 -0
  196. package/esm/src/wow/search.js +29 -0
  197. package/esm/src/wow/types.d.ts +58 -0
  198. package/esm/src/wow/types.js +1 -0
  199. package/esm/src/wow_classic/auction_house.d.ts +41 -0
  200. package/esm/src/wow_classic/auction_house.js +31 -0
  201. package/esm/src/wow_classic/character_specializations.d.ts +45 -0
  202. package/esm/src/wow_classic/character_specializations.js +18 -0
  203. package/esm/src/wow_classic/era.d.ts +8 -0
  204. package/esm/src/wow_classic/era.js +10 -0
  205. package/esm/src/wow_classic/index.d.ts +15 -0
  206. package/esm/src/wow_classic/index.js +17 -0
  207. package/esm/src/wow_classic/profile_overrides.d.ts +125 -0
  208. package/esm/src/wow_classic/profile_overrides.js +111 -0
  209. package/esm/src/wow_classic/shared.d.ts +23 -0
  210. package/esm/src/wow_classic/shared.js +26 -0
  211. package/esm/src/wow_classic/types.d.ts +3 -0
  212. package/esm/src/wow_classic/types.js +1 -0
  213. package/package.json +23 -2
  214. package/script/mod.d.ts +43 -6
  215. package/script/mod.js +91 -21
  216. package/script/src/client.d.ts +95 -0
  217. package/script/src/client.js +89 -0
  218. package/script/src/diablo3/community/act.d.ts +29 -0
  219. package/script/src/diablo3/community/act.js +27 -0
  220. package/script/src/diablo3/community/artisan.d.ts +50 -0
  221. package/script/src/diablo3/community/artisan.js +29 -0
  222. package/script/src/diablo3/community/follower.d.ts +25 -0
  223. package/script/src/diablo3/community/follower.js +15 -0
  224. package/script/src/diablo3/community/hero.d.ts +57 -0
  225. package/script/src/diablo3/community/hero.js +29 -0
  226. package/script/src/diablo3/community/item.d.ts +48 -0
  227. package/script/src/diablo3/community/item.js +15 -0
  228. package/script/src/diablo3/community/item_type.d.ts +26 -0
  229. package/script/src/diablo3/community/item_type.js +27 -0
  230. package/script/src/diablo3/community/profile.d.ts +352 -0
  231. package/script/src/diablo3/community/profile.js +67 -0
  232. package/script/src/diablo3/game_data/d3.d.ts +127 -0
  233. package/script/src/diablo3/game_data/d3.js +80 -0
  234. package/script/src/diablo3/index.d.ts +8 -0
  235. package/script/src/diablo3/index.js +31 -0
  236. package/script/src/diablo3/types.d.ts +8 -0
  237. package/script/src/diablo3/types.js +2 -0
  238. package/script/src/generated/diablo3_api.d.ts +156 -0
  239. package/script/src/generated/diablo3_api.js +3 -0
  240. package/script/src/generated/hearthstone_api.d.ts +51 -0
  241. package/script/src/generated/hearthstone_api.js +3 -0
  242. package/script/src/generated/sc2_api.d.ts +139 -0
  243. package/script/src/generated/sc2_api.js +3 -0
  244. package/script/src/generated/wow_api.d.ts +1482 -0
  245. package/script/src/generated/wow_api.js +3 -0
  246. package/script/src/generated/wow_classic_api.d.ts +555 -0
  247. package/script/src/generated/wow_classic_api.js +3 -0
  248. package/script/src/generated/wow_classic_era_api.d.ts +418 -0
  249. package/script/src/generated/wow_classic_era_api.js +3 -0
  250. package/script/src/hearthstone/game_data/card_backs.d.ts +31 -0
  251. package/script/src/hearthstone/game_data/card_backs.js +26 -0
  252. package/script/src/hearthstone/game_data/cards.d.ts +55 -0
  253. package/script/src/hearthstone/game_data/cards.js +30 -0
  254. package/script/src/hearthstone/game_data/decks.d.ts +29 -0
  255. package/script/src/hearthstone/game_data/decks.js +16 -0
  256. package/script/src/hearthstone/game_data/metadata.d.ts +82 -0
  257. package/script/src/hearthstone/game_data/metadata.js +14 -0
  258. package/script/src/hearthstone/index.d.ts +4 -0
  259. package/script/src/hearthstone/index.js +13 -0
  260. package/script/src/hearthstone/search.d.ts +21 -0
  261. package/script/src/hearthstone/search.js +31 -0
  262. package/script/src/hearthstone/types.d.ts +5 -0
  263. package/script/src/hearthstone/types.js +2 -0
  264. package/script/src/shared/bind.d.ts +14 -0
  265. package/script/src/shared/bind.js +18 -0
  266. package/script/src/shared/context.d.ts +163 -0
  267. package/script/src/shared/context.js +312 -0
  268. package/script/src/shared/errors.d.ts +53 -0
  269. package/script/src/shared/errors.js +104 -0
  270. package/script/src/shared/index.d.ts +4 -0
  271. package/script/src/shared/index.js +10 -0
  272. package/script/src/shared/types.d.ts +133 -0
  273. package/script/src/shared/types.js +3 -0
  274. package/script/src/starcraft2/community/account.d.ts +19 -0
  275. package/script/src/starcraft2/community/account.js +18 -0
  276. package/script/src/starcraft2/community/ladder.d.ts +29 -0
  277. package/script/src/starcraft2/community/ladder.js +31 -0
  278. package/script/src/starcraft2/community/legacy.d.ts +206 -0
  279. package/script/src/starcraft2/community/legacy.js +91 -0
  280. package/script/src/starcraft2/community/profile.d.ts +255 -0
  281. package/script/src/starcraft2/community/profile.js +80 -0
  282. package/script/src/starcraft2/game_data/league.d.ts +35 -0
  283. package/script/src/starcraft2/game_data/league.js +23 -0
  284. package/script/src/starcraft2/index.d.ts +5 -0
  285. package/script/src/starcraft2/index.js +23 -0
  286. package/script/src/starcraft2/types.d.ts +5 -0
  287. package/script/src/starcraft2/types.js +2 -0
  288. package/script/src/wow/game_data/achievement.d.ts +87 -0
  289. package/script/src/wow/game_data/achievement.js +75 -0
  290. package/script/src/wow/game_data/auction_house.d.ts +65 -0
  291. package/script/src/wow/game_data/auction_house.js +37 -0
  292. package/script/src/wow/game_data/azerite_essence.d.ts +50 -0
  293. package/script/src/wow/game_data/azerite_essence.js +54 -0
  294. package/script/src/wow/game_data/connected_realm.d.ts +62 -0
  295. package/script/src/wow/game_data/connected_realm.js +40 -0
  296. package/script/src/wow/game_data/covenant.d.ts +115 -0
  297. package/script/src/wow/game_data/covenant.js +97 -0
  298. package/script/src/wow/game_data/creature.d.ts +98 -0
  299. package/script/src/wow/game_data/creature.js +109 -0
  300. package/script/src/wow/game_data/guild_crest.d.ts +56 -0
  301. package/script/src/wow/game_data/guild_crest.js +43 -0
  302. package/script/src/wow/game_data/heirloom.d.ts +82 -0
  303. package/script/src/wow/game_data/heirloom.js +29 -0
  304. package/script/src/wow/game_data/housing.d.ts +111 -0
  305. package/script/src/wow/game_data/housing.js +138 -0
  306. package/script/src/wow/game_data/item.d.ts +183 -0
  307. package/script/src/wow/game_data/item.js +110 -0
  308. package/script/src/wow/game_data/item_appearance.d.ts +102 -0
  309. package/script/src/wow/game_data/item_appearance.js +81 -0
  310. package/script/src/wow/game_data/journal.d.ts +124 -0
  311. package/script/src/wow/game_data/journal.js +108 -0
  312. package/script/src/wow/game_data/keystone_affix.d.ts +39 -0
  313. package/script/src/wow/game_data/keystone_affix.js +43 -0
  314. package/script/src/wow/game_data/media_search.d.ts +9 -0
  315. package/script/src/wow/game_data/media_search.js +13 -0
  316. package/script/src/wow/game_data/modified_crafting.d.ts +65 -0
  317. package/script/src/wow/game_data/modified_crafting.js +69 -0
  318. package/script/src/wow/game_data/mount.d.ts +38 -0
  319. package/script/src/wow/game_data/mount.js +40 -0
  320. package/script/src/wow/game_data/mythic_keystone_dungeon.d.ts +92 -0
  321. package/script/src/wow/game_data/mythic_keystone_dungeon.js +96 -0
  322. package/script/src/wow/game_data/mythic_keystone_leaderboard.d.ts +70 -0
  323. package/script/src/wow/game_data/mythic_keystone_leaderboard.js +32 -0
  324. package/script/src/wow/game_data/mythic_raid_leaderboard.d.ts +36 -0
  325. package/script/src/wow/game_data/mythic_raid_leaderboard.js +17 -0
  326. package/script/src/wow/game_data/neighborhood.d.ts +36 -0
  327. package/script/src/wow/game_data/neighborhood.js +43 -0
  328. package/script/src/wow/game_data/pet.d.ts +93 -0
  329. package/script/src/wow/game_data/pet.js +84 -0
  330. package/script/src/wow/game_data/playable_class.d.ts +58 -0
  331. package/script/src/wow/game_data/playable_class.js +57 -0
  332. package/script/src/wow/game_data/playable_race.d.ts +31 -0
  333. package/script/src/wow/game_data/playable_race.js +29 -0
  334. package/script/src/wow/game_data/playable_specialization.d.ts +63 -0
  335. package/script/src/wow/game_data/playable_specialization.js +43 -0
  336. package/script/src/wow/game_data/power_type.d.ts +22 -0
  337. package/script/src/wow/game_data/power_type.js +29 -0
  338. package/script/src/wow/game_data/profession.d.ts +88 -0
  339. package/script/src/wow/game_data/profession.js +86 -0
  340. package/script/src/wow/game_data/pvp_season.d.ts +108 -0
  341. package/script/src/wow/game_data/pvp_season.js +73 -0
  342. package/script/src/wow/game_data/pvp_tier.d.ts +41 -0
  343. package/script/src/wow/game_data/pvp_tier.js +43 -0
  344. package/script/src/wow/game_data/quest.d.ts +116 -0
  345. package/script/src/wow/game_data/quest.js +110 -0
  346. package/script/src/wow/game_data/realm.d.ts +43 -0
  347. package/script/src/wow/game_data/realm.js +40 -0
  348. package/script/src/wow/game_data/region.d.ts +26 -0
  349. package/script/src/wow/game_data/region.js +29 -0
  350. package/script/src/wow/game_data/reputations.d.ts +57 -0
  351. package/script/src/wow/game_data/reputations.js +56 -0
  352. package/script/src/wow/game_data/spell.d.ts +34 -0
  353. package/script/src/wow/game_data/spell.js +41 -0
  354. package/script/src/wow/game_data/talent.d.ts +143 -0
  355. package/script/src/wow/game_data/talent.js +98 -0
  356. package/script/src/wow/game_data/tech_talent.d.ts +72 -0
  357. package/script/src/wow/game_data/tech_talent.js +70 -0
  358. package/script/src/wow/game_data/title.d.ts +33 -0
  359. package/script/src/wow/game_data/title.js +29 -0
  360. package/script/src/wow/game_data/token.d.ts +17 -0
  361. package/script/src/wow/game_data/token.js +21 -0
  362. package/script/src/wow/game_data/toy.d.ts +25 -0
  363. package/script/src/wow/game_data/toy.js +29 -0
  364. package/script/src/wow/index.d.ts +59 -0
  365. package/script/src/wow/index.js +272 -0
  366. package/script/src/wow/profile/account_profile.d.ts +185 -0
  367. package/script/src/wow/profile/account_profile.js +143 -0
  368. package/script/src/wow/profile/character_achievements.d.ts +88 -0
  369. package/script/src/wow/profile/character_achievements.js +32 -0
  370. package/script/src/wow/profile/character_appearance.d.ts +79 -0
  371. package/script/src/wow/profile/character_appearance.js +17 -0
  372. package/script/src/wow/profile/character_collections.d.ts +132 -0
  373. package/script/src/wow/profile/character_collections.js +107 -0
  374. package/script/src/wow/profile/character_encounters.d.ts +78 -0
  375. package/script/src/wow/profile/character_encounters.js +47 -0
  376. package/script/src/wow/profile/character_equipment.d.ts +177 -0
  377. package/script/src/wow/profile/character_equipment.js +17 -0
  378. package/script/src/wow/profile/character_house.d.ts +16 -0
  379. package/script/src/wow/profile/character_house.js +20 -0
  380. package/script/src/wow/profile/character_hunter_pets.d.ts +22 -0
  381. package/script/src/wow/profile/character_hunter_pets.js +17 -0
  382. package/script/src/wow/profile/character_media.d.ts +14 -0
  383. package/script/src/wow/profile/character_media.js +17 -0
  384. package/script/src/wow/profile/character_mythic_keystone_profile.d.ts +70 -0
  385. package/script/src/wow/profile/character_mythic_keystone_profile.js +35 -0
  386. package/script/src/wow/profile/character_professions.d.ts +29 -0
  387. package/script/src/wow/profile/character_professions.js +17 -0
  388. package/script/src/wow/profile/character_profile.d.ts +83 -0
  389. package/script/src/wow/profile/character_profile.js +43 -0
  390. package/script/src/wow/profile/character_pvp.d.ts +53 -0
  391. package/script/src/wow/profile/character_pvp.js +33 -0
  392. package/script/src/wow/profile/character_quests.d.ts +29 -0
  393. package/script/src/wow/profile/character_quests.js +32 -0
  394. package/script/src/wow/profile/character_reputations.d.ts +30 -0
  395. package/script/src/wow/profile/character_reputations.js +17 -0
  396. package/script/src/wow/profile/character_soulbinds.d.ts +31 -0
  397. package/script/src/wow/profile/character_soulbinds.js +17 -0
  398. package/script/src/wow/profile/character_specializations.d.ts +82 -0
  399. package/script/src/wow/profile/character_specializations.js +17 -0
  400. package/script/src/wow/profile/character_statistics.d.ts +104 -0
  401. package/script/src/wow/profile/character_statistics.js +17 -0
  402. package/script/src/wow/profile/character_titles.d.ts +14 -0
  403. package/script/src/wow/profile/character_titles.js +17 -0
  404. package/script/src/wow/profile/guild.d.ts +150 -0
  405. package/script/src/wow/profile/guild.js +62 -0
  406. package/script/src/wow/search.d.ts +23 -0
  407. package/script/src/wow/search.js +32 -0
  408. package/script/src/wow/types.d.ts +58 -0
  409. package/script/src/wow/types.js +2 -0
  410. package/script/src/wow_classic/auction_house.d.ts +41 -0
  411. package/script/src/wow_classic/auction_house.js +35 -0
  412. package/script/src/wow_classic/character_specializations.d.ts +45 -0
  413. package/script/src/wow_classic/character_specializations.js +21 -0
  414. package/script/src/wow_classic/era.d.ts +8 -0
  415. package/script/src/wow_classic/era.js +30 -0
  416. package/script/src/wow_classic/index.d.ts +15 -0
  417. package/script/src/wow_classic/index.js +55 -0
  418. package/script/src/wow_classic/profile_overrides.d.ts +125 -0
  419. package/script/src/wow_classic/profile_overrides.js +123 -0
  420. package/script/src/wow_classic/shared.d.ts +23 -0
  421. package/script/src/wow_classic/shared.js +81 -0
  422. package/script/src/wow_classic/types.d.ts +3 -0
  423. package/script/src/wow_classic/types.js +2 -0
@@ -0,0 +1,82 @@
1
+ import type { ApiContext } from "../../shared/index.js";
2
+ import type { LocalizedString } from "../../shared/index.js";
3
+ export interface MetadataSet {
4
+ id: number;
5
+ name: LocalizedString;
6
+ slug: string;
7
+ hyped: boolean;
8
+ type: string;
9
+ collectibleCount: number;
10
+ collectibleRevealedCount: number;
11
+ nonCollectibleCount: number;
12
+ nonCollectibleRevealedCount: number;
13
+ aliasSetIds?: number[];
14
+ }
15
+ export interface MetadataSetGroup {
16
+ slug: string;
17
+ year?: number;
18
+ svg?: string;
19
+ cardSets: string[];
20
+ name: LocalizedString;
21
+ standard?: boolean;
22
+ yearRange?: string;
23
+ icon?: string;
24
+ }
25
+ export interface MetadataType {
26
+ slug: string;
27
+ id: number;
28
+ name: LocalizedString;
29
+ gameModes: number[];
30
+ }
31
+ export interface MetadataRarity {
32
+ slug: string;
33
+ id: number;
34
+ craftingCost: number[];
35
+ dustValue: number[];
36
+ name: LocalizedString;
37
+ }
38
+ export interface MetadataClass {
39
+ slug: string;
40
+ id: number;
41
+ name: LocalizedString;
42
+ cardId?: number;
43
+ heroPowerCardId?: number;
44
+ alternateHeroCardIds?: number[];
45
+ }
46
+ export interface MetadataMinionType {
47
+ slug: string;
48
+ id: number;
49
+ name: LocalizedString;
50
+ gameModes: number[];
51
+ }
52
+ export interface MetadataKeyword {
53
+ id: number;
54
+ slug: string;
55
+ name: LocalizedString;
56
+ refText: LocalizedString;
57
+ text: LocalizedString;
58
+ gameModes: number[];
59
+ }
60
+ /**
61
+ * The response of metadata(type) for each metadata type.
62
+ */
63
+ export interface MetadataByType {
64
+ sets: MetadataSet[];
65
+ setGroups: MetadataSetGroup[];
66
+ types: MetadataType[];
67
+ rarities: MetadataRarity[];
68
+ classes: MetadataClass[];
69
+ minionTypes: MetadataMinionType[];
70
+ keywords: MetadataKeyword[];
71
+ }
72
+ /**
73
+ * Any metadata response.
74
+ */
75
+ export type Metadata = MetadataByType[keyof MetadataByType];
76
+ export type MetaTypes = keyof MetadataByType;
77
+ /**
78
+ * Returns information about the categorization of cards. Metadata includes the card set, set group (for example, Standard or Year of the Dragon), rarity, class, card type, minion type, and keywords.
79
+ *
80
+ * @returns A promise that resolves to an object representing the Metadata.
81
+ */
82
+ export declare function metadata<T extends MetaTypes>(ctx: ApiContext, type: T): Promise<MetadataByType[T]>;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metadata = metadata;
4
+ /**
5
+ * Returns information about the categorization of cards. Metadata includes the card set, set group (for example, Standard or Year of the Dragon), rarity, class, card type, minion type, and keywords.
6
+ *
7
+ * @returns A promise that resolves to an object representing the Metadata.
8
+ */
9
+ async function metadata(ctx, type) {
10
+ return await ctx.request({
11
+ method: "GET",
12
+ url: `/hearthstone/metadata/${type}`,
13
+ });
14
+ }
@@ -0,0 +1,4 @@
1
+ export { fetchCard, searchCards } from "./game_data/cards.js";
2
+ export { fetchCardback, searchCardbacks } from "./game_data/card_backs.js";
3
+ export { fetchDeck } from "./game_data/decks.js";
4
+ export { metadata } from "./game_data/metadata.js";
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metadata = exports.fetchDeck = exports.searchCardbacks = exports.fetchCardback = exports.searchCards = exports.fetchCard = void 0;
4
+ var cards_js_1 = require("./game_data/cards.js");
5
+ Object.defineProperty(exports, "fetchCard", { enumerable: true, get: function () { return cards_js_1.fetchCard; } });
6
+ Object.defineProperty(exports, "searchCards", { enumerable: true, get: function () { return cards_js_1.searchCards; } });
7
+ var card_backs_js_1 = require("./game_data/card_backs.js");
8
+ Object.defineProperty(exports, "fetchCardback", { enumerable: true, get: function () { return card_backs_js_1.fetchCardback; } });
9
+ Object.defineProperty(exports, "searchCardbacks", { enumerable: true, get: function () { return card_backs_js_1.searchCardbacks; } });
10
+ var decks_js_1 = require("./game_data/decks.js");
11
+ Object.defineProperty(exports, "fetchDeck", { enumerable: true, get: function () { return decks_js_1.fetchDeck; } });
12
+ var metadata_js_1 = require("./game_data/metadata.js");
13
+ Object.defineProperty(exports, "metadata", { enumerable: true, get: function () { return metadata_js_1.metadata; } });
@@ -0,0 +1,21 @@
1
+ import type { ApiContext } from "../shared/index.js";
2
+ export interface SearchParameters {
3
+ searchFields?: Record<string | symbol, string | number>;
4
+ page?: number;
5
+ pageSize?: number;
6
+ sort?: string;
7
+ }
8
+ export interface Search {
9
+ page: number;
10
+ pageSize: number;
11
+ maxPageSize: number;
12
+ pageCount: number;
13
+ results: unknown[];
14
+ }
15
+ /**
16
+ * Performs a search.
17
+ *
18
+ * @param SearchParameters - Object containing search parameters.
19
+ * @returns A promise that resolves to an object representing details about the search.
20
+ */
21
+ export declare function search(ctx: ApiContext, url: string, searchParameters: SearchParameters): Promise<Search>;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.search = search;
4
+ /**
5
+ * Performs a search.
6
+ *
7
+ * @param SearchParameters - Object containing search parameters.
8
+ * @returns A promise that resolves to an object representing details about the search.
9
+ */
10
+ async function search(ctx, url, searchParameters) {
11
+ const searchFields = searchParameters.searchFields
12
+ ? Object.fromEntries(Object.entries(searchParameters.searchFields).map(([key, value]) => [key, value.toString()]))
13
+ : undefined;
14
+ const qs = {
15
+ ...searchFields,
16
+ };
17
+ if (searchParameters.sort) {
18
+ qs.sort = searchParameters.sort;
19
+ }
20
+ if (searchParameters.page !== undefined) {
21
+ qs.page = searchParameters.page;
22
+ }
23
+ if (searchParameters.pageSize !== undefined) {
24
+ qs.pageSize = searchParameters.pageSize;
25
+ }
26
+ return await ctx.request({
27
+ method: "GET",
28
+ url: `/hearthstone${url}`,
29
+ qs,
30
+ });
31
+ }
@@ -0,0 +1,5 @@
1
+ export type { Cardback, CardbackSearch } from "./game_data/card_backs.js";
2
+ export type { Card, CardSearch } from "./game_data/cards.js";
3
+ export type { Deck, Options } from "./game_data/decks.js";
4
+ export type { Metadata, MetadataByType, MetadataClass, MetadataKeyword, MetadataMinionType, MetadataRarity, MetadataSet, MetadataSetGroup, MetadataType, MetaTypes, } from "./game_data/metadata.js";
5
+ export type { Search, SearchParameters } from "./search.js";
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,14 @@
1
+ import type { ApiContext } from "./context.js";
2
+ /**
3
+ * Turns a module of endpoint functions `(ctx, ...args) => R` into the same functions without the context argument.
4
+ */
5
+ export type Bound<T> = {
6
+ [K in keyof T as T[K] extends (ctx: ApiContext, ...args: any[]) => unknown ? K : never]: T[K] extends (ctx: ApiContext, ...args: infer A) => infer R ? (...args: A) => R : never;
7
+ };
8
+ /**
9
+ * Binds every endpoint function of a module to a context.
10
+ * @param {ApiContext} ctx - The context the endpoints will use.
11
+ * @param {T} endpoints - A module namespace of endpoint functions.
12
+ * @returns {Bound<T>} The bound endpoints.
13
+ */
14
+ export declare function bindAll<T extends object>(ctx: ApiContext, endpoints: T): Bound<T>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.bindAll = bindAll;
4
+ /**
5
+ * Binds every endpoint function of a module to a context.
6
+ * @param {ApiContext} ctx - The context the endpoints will use.
7
+ * @param {T} endpoints - A module namespace of endpoint functions.
8
+ * @returns {Bound<T>} The bound endpoints.
9
+ */
10
+ function bindAll(ctx, endpoints) {
11
+ const bound = {};
12
+ for (const [name, value] of Object.entries(endpoints)) {
13
+ if (typeof value === "function") {
14
+ bound[name] = value.bind(undefined, ctx);
15
+ }
16
+ }
17
+ return Object.freeze(bound);
18
+ }
@@ -0,0 +1,163 @@
1
+ import type { Locales, Regions, RequestOptions } from "./types.js";
2
+ /**
3
+ * Represents the configuration of a client.
4
+ * @property {Regions} region - The target Battle.net region for API requests.
5
+ * @property {Locales} [locale] - The locale for localized fields. Defaults to the main locale of the region
6
+ * (us: en_US, eu: en_GB, kr: ko_KR, tw: zh_TW, cn: zh_CN).
7
+ * @property {string} clientId - The OAuth client ID.
8
+ * @property {string} clientSecret - The OAuth client secret.
9
+ */
10
+ export interface ClientConfig {
11
+ region: Regions;
12
+ locale?: Locales;
13
+ clientId: string;
14
+ clientSecret: string;
15
+ }
16
+ /**
17
+ * Represents the authentication state of the client credentials token.
18
+ * @property {string} accessToken - The current access token.
19
+ * @property {number} tokenExpiration - The expiration timestamp of the access token (in milliseconds).
20
+ */
21
+ export interface AuthConfig {
22
+ accessToken: string;
23
+ tokenExpiration: number;
24
+ }
25
+ /**
26
+ * Options for building the authorization code flow URL.
27
+ * @property {string} redirectUri - The redirect URI registered for the client.
28
+ * @property {string[]} [scope] - The requested scopes, e.g. ["wow.profile"]. "openid" is always included.
29
+ * @property {string} state - An opaque, unguessable value to protect against CSRF. Verify it on the redirect.
30
+ */
31
+ export interface AuthorizeUrlOptions {
32
+ redirectUri: string;
33
+ scope?: string[];
34
+ state: string;
35
+ }
36
+ /**
37
+ * Options for exchanging an authorization code for a user access token.
38
+ * @property {string} code - The code received on the redirect URI.
39
+ * @property {string} redirectUri - The same redirect URI used to build the authorize URL.
40
+ */
41
+ export interface ExchangeCodeOptions {
42
+ code: string;
43
+ redirectUri: string;
44
+ }
45
+ /**
46
+ * Represents the token response of the OAuth token endpoint.
47
+ */
48
+ export interface TokenResponse {
49
+ access_token: string;
50
+ token_type: string;
51
+ expires_in: number;
52
+ scope?: string;
53
+ sub?: string;
54
+ id_token?: string;
55
+ }
56
+ interface ContextOptions {
57
+ userToken?: string;
58
+ namespaceVariant?: string;
59
+ }
60
+ interface TokenState extends AuthConfig {
61
+ pending?: Promise<string>;
62
+ }
63
+ /**
64
+ * Returns the locale used when none is configured. A locale is always sent, so localized fields are plain strings.
65
+ * @param {Regions} region - The target Battle.net region.
66
+ * @returns {Locales} The default locale of the region.
67
+ */
68
+ export declare function defaultLocale(region: Regions): Locales;
69
+ /**
70
+ * Generates the OAuth base URL based on the specified region.
71
+ * @param {Regions} region - The target Battle.net region.
72
+ * @returns {string} The OAuth base URL.
73
+ */
74
+ export declare function oauthBaseUrl(region: Regions): string;
75
+ /**
76
+ * Generates the base API URL based on the specified region.
77
+ * @param {Regions} region - The target Battle.net region.
78
+ * @returns {string} The constructed base API URL.
79
+ */
80
+ export declare function apiBaseUrl(region: Regions): string;
81
+ /**
82
+ * Validates that a configuration has everything needed to make requests.
83
+ * @throws {MissingRegionError | MissingClientIdError | MissingClientSecretError}
84
+ */
85
+ export declare function assertConfig(config: Partial<ClientConfig>): asserts config is ClientConfig;
86
+ /**
87
+ * Holds the configuration and token state of one client and performs its requests.
88
+ * Every endpoint function takes an ApiContext as its first argument.
89
+ */
90
+ export declare class ApiContext {
91
+ #private;
92
+ /**
93
+ * @param {Partial<ClientConfig>} config - The client configuration. Shared by reference with derived contexts.
94
+ * @param {TokenState} [token] - Token state to share (used by derived contexts).
95
+ * @param {ContextOptions} [options] - User token and namespace variant.
96
+ */
97
+ constructor(config?: Partial<ClientConfig>, token?: TokenState, options?: ContextOptions);
98
+ /**
99
+ * The current configuration (may be partial if not fully set up).
100
+ */
101
+ get config(): Readonly<Partial<ClientConfig>>;
102
+ /**
103
+ * Merges configuration into this context. Changing the region or credentials discards the cached token.
104
+ * @param {Partial<ClientConfig>} config - The configuration properties to update.
105
+ */
106
+ configure(config: Partial<ClientConfig>): void;
107
+ /**
108
+ * Returns a copy of the client credentials token state.
109
+ */
110
+ getAuthConfig(): AuthConfig;
111
+ /**
112
+ * Returns a context that uses the given user access token for user-scoped endpoints
113
+ * (e.g. the WoW account profile). It shares configuration and the client credentials token with this context.
114
+ * @param {string} userToken - A user access token from the authorization code flow.
115
+ */
116
+ forUser(userToken: string): ApiContext;
117
+ /**
118
+ * Returns a context for another game version: base namespaces ("static", "dynamic", "profile") get the variant
119
+ * inserted before the region, e.g. "classic1x" turns "static" into "static-classic1x-eu".
120
+ * It shares configuration, tokens and the user token with this context.
121
+ * @param {string} namespaceVariant - The namespace variant, e.g. "classic" or "classic1x".
122
+ */
123
+ withNamespaceVariant(namespaceVariant: string): ApiContext;
124
+ /**
125
+ * Obtains a client credentials access token, reusing the cached one while it is valid.
126
+ * Concurrent callers share a single token request.
127
+ * @param {boolean} forceNewToken - If true, fetches a new token even if the cached one is valid.
128
+ * @returns {Promise<string>} The access token.
129
+ * @throws {MissingRegionError | MissingClientIdError | MissingClientSecretError} If the client is not configured.
130
+ * @throws {AuthenticationError} If there is a problem during the authentication process.
131
+ */
132
+ authenticate(forceNewToken?: boolean): Promise<string>;
133
+ /**
134
+ * Builds the URL to send a user to for the authorization code flow.
135
+ * @param {AuthorizeUrlOptions} options - Redirect URI, scopes and state.
136
+ * @returns {string} The authorize URL.
137
+ */
138
+ authorizeUrl(options: AuthorizeUrlOptions): string;
139
+ /**
140
+ * Exchanges an authorization code for a user access token.
141
+ * @param {ExchangeCodeOptions} options - The code and the redirect URI used to obtain it.
142
+ * @returns {Promise<TokenResponse>} The token response; pass `access_token` to forUser().
143
+ * @throws {AuthenticationError} If the exchange fails.
144
+ */
145
+ exchangeCode(options: ExchangeCodeOptions): Promise<TokenResponse>;
146
+ /**
147
+ * Makes an authenticated request to the API.
148
+ * @param {RequestOptions} requestOptions - Method, path, namespace, query string and auth mode.
149
+ * @returns {Promise<unknown>} The parsed JSON response.
150
+ * @throws {APIError} If the response is not successful.
151
+ * @throws {MissingUserTokenError} If the endpoint needs a user token and this context has none.
152
+ */
153
+ request(requestOptions: RequestOptions): Promise<unknown>;
154
+ /**
155
+ * Makes an authenticated request to a full href returned in an API response.
156
+ * @param {string} href - The full href URL from a Blizzard API response.
157
+ * @param {Record<string, string | number>} [qs] - Optional query string parameters to append.
158
+ * @returns {Promise<unknown>} The parsed JSON response.
159
+ * @throws {APIError} If the response is not successful.
160
+ */
161
+ requestHref(href: string, qs?: Record<string, string | number>): Promise<unknown>;
162
+ }
163
+ export {};