sandstone 1.0.0 → 1.1.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 (295) hide show
  1. package/README.md +1 -1
  2. package/dist/_internal/index.d.ts +91 -16
  3. package/dist/_internal/index.js +1961 -306
  4. package/dist/_internal/index.js.map +1 -1
  5. package/dist/_internal/types/arguments/generated/_builtin/block_state_keys.d.ts +85 -1
  6. package/dist/_internal/types/arguments/generated/_builtin/block_states.d.ts +181 -1
  7. package/dist/_internal/types/arguments/generated/_dispatcher/block.d.ts +57 -21
  8. package/dist/_internal/types/arguments/generated/_dispatcher/block_entity.d.ts +5 -1
  9. package/dist/_internal/types/arguments/generated/_dispatcher/data_component_existence_predicate.d.ts +19 -0
  10. package/dist/_internal/types/arguments/generated/_dispatcher/resource.d.ts +24 -1
  11. package/dist/_internal/types/arguments/generated/_registry/advancements.d.ts +1 -1
  12. package/dist/_internal/types/arguments/generated/_registry/atlases.d.ts +1 -1
  13. package/dist/_internal/types/arguments/generated/_registry/attributes.d.ts +1 -1
  14. package/dist/_internal/types/arguments/generated/_registry/block_definitions.d.ts +1 -1
  15. package/dist/_internal/types/arguments/generated/_registry/block_entity_types.d.ts +1 -1
  16. package/dist/_internal/types/arguments/generated/_registry/block_predicate_types.d.ts +1 -1
  17. package/dist/_internal/types/arguments/generated/_registry/block_types.d.ts +1 -1
  18. package/dist/_internal/types/arguments/generated/_registry/blocks.d.ts +1 -1
  19. package/dist/_internal/types/arguments/generated/_registry/cat_sound_variants.d.ts +4 -0
  20. package/dist/_internal/types/arguments/generated/_registry/chicken_sound_variants.d.ts +4 -0
  21. package/dist/_internal/types/arguments/generated/_registry/chunk_statuses.d.ts +1 -1
  22. package/dist/_internal/types/arguments/generated/_registry/command_argument_types.d.ts +1 -1
  23. package/dist/_internal/types/arguments/generated/_registry/cow_sound_variants.d.ts +4 -0
  24. package/dist/_internal/types/arguments/generated/_registry/damage_types.d.ts +1 -1
  25. package/dist/_internal/types/arguments/generated/_registry/data_component_types.d.ts +1 -1
  26. package/dist/_internal/types/arguments/generated/_registry/entity_sub_predicate_types.d.ts +1 -1
  27. package/dist/_internal/types/arguments/generated/_registry/entity_types.d.ts +1 -1
  28. package/dist/_internal/types/arguments/generated/_registry/game_events.d.ts +1 -1
  29. package/dist/_internal/types/arguments/generated/_registry/game_rules.d.ts +1 -1
  30. package/dist/_internal/types/arguments/generated/_registry/item_definitions.d.ts +1 -1
  31. package/dist/_internal/types/arguments/generated/_registry/items.d.ts +1 -1
  32. package/dist/_internal/types/arguments/generated/_registry/jukebox_songs.d.ts +1 -1
  33. package/dist/_internal/types/arguments/generated/_registry/langs.d.ts +1 -1
  34. package/dist/_internal/types/arguments/generated/_registry/loot_pool_entry_types.d.ts +1 -1
  35. package/dist/_internal/types/arguments/generated/_registry/loot_tables.d.ts +1 -1
  36. package/dist/_internal/types/arguments/generated/_registry/models.d.ts +1 -1
  37. package/dist/_internal/types/arguments/generated/_registry/particle_types.d.ts +1 -1
  38. package/dist/_internal/types/arguments/generated/_registry/pig_sound_variants.d.ts +4 -0
  39. package/dist/_internal/types/arguments/generated/_registry/recipes.d.ts +1 -1
  40. package/dist/_internal/types/arguments/generated/_registry/sound_events.d.ts +1 -1
  41. package/dist/_internal/types/arguments/generated/_registry/sounds.d.ts +1 -1
  42. package/dist/_internal/types/arguments/generated/_registry/structures.d.ts +1 -1
  43. package/dist/_internal/types/arguments/generated/_registry/sulfur_cube_archetypes.d.ts +4 -0
  44. package/dist/_internal/types/arguments/generated/_registry/tag_blocks.d.ts +1 -1
  45. package/dist/_internal/types/arguments/generated/_registry/tag_damage_types.d.ts +1 -1
  46. package/dist/_internal/types/arguments/generated/_registry/tag_entity_types.d.ts +1 -1
  47. package/dist/_internal/types/arguments/generated/_registry/tag_items.d.ts +1 -1
  48. package/dist/_internal/types/arguments/generated/_registry/test_environment_definition_types.d.ts +1 -1
  49. package/dist/_internal/types/arguments/generated/_registry/textures.d.ts +1 -1
  50. package/dist/_internal/types/arguments/generated/_registry/translation_keys.d.ts +1 -1
  51. package/dist/_internal/types/arguments/generated/_registry/trigger_types.d.ts +1 -1
  52. package/dist/_internal/types/arguments/generated/_registry/trim_patterns.d.ts +1 -1
  53. package/dist/_internal/types/arguments/generated/_registry/villager_trades.d.ts +1 -1
  54. package/dist/_internal/types/arguments/generated/_registry/wolf_sound_variants.d.ts +1 -1
  55. package/dist/_internal/types/arguments/generated/_registry/wolf_variants.d.ts +1 -1
  56. package/dist/_internal/types/arguments/generated/_registry/worldgen_biomes.d.ts +1 -1
  57. package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_carvers.d.ts +1 -1
  58. package/dist/_internal/types/arguments/generated/_registry/worldgen_configured_features.d.ts +1 -1
  59. package/dist/_internal/types/arguments/generated/_registry/worldgen_density_function_types.d.ts +1 -1
  60. package/dist/_internal/types/arguments/generated/_registry/worldgen_features.d.ts +1 -1
  61. package/dist/_internal/types/arguments/generated/_registry/worldgen_noises.d.ts +1 -1
  62. package/dist/_internal/types/arguments/generated/_registry/worldgen_placed_features.d.ts +1 -1
  63. package/dist/_internal/types/arguments/generated/_registry/worldgen_world_presets.d.ts +1 -1
  64. package/dist/_internal/types/arguments/generated/assets/atlas.d.ts +11 -2
  65. package/dist/_internal/types/arguments/generated/assets/block_state_definition.d.ts +25 -0
  66. package/dist/_internal/types/arguments/generated/assets/credits.d.ts +53 -0
  67. package/dist/_internal/types/arguments/generated/assets/equipment.d.ts +4 -5
  68. package/dist/_internal/types/arguments/generated/assets/item_definition.d.ts +29 -31
  69. package/dist/_internal/types/arguments/generated/assets/model.d.ts +126 -0
  70. package/dist/_internal/types/arguments/generated/assets/shader/program.d.ts +3 -0
  71. package/dist/_internal/types/arguments/generated/assets/sounds.d.ts +1 -1
  72. package/dist/_internal/types/arguments/generated/assets/texture_meta.d.ts +168 -28
  73. package/dist/_internal/types/arguments/generated/data/advancement/predicate.d.ts +170 -56
  74. package/dist/_internal/types/arguments/generated/data/advancement/trigger.d.ts +18 -0
  75. package/dist/_internal/types/arguments/generated/data/advancement.d.ts +7 -4
  76. package/dist/_internal/types/arguments/generated/data/chat_type.d.ts +7 -2
  77. package/dist/_internal/types/arguments/generated/data/decorated_pot_pattern.d.ts +8 -0
  78. package/dist/_internal/types/arguments/generated/data/dialog/input.d.ts +21 -0
  79. package/dist/_internal/types/arguments/generated/data/dialog.d.ts +5 -5
  80. package/dist/_internal/types/arguments/generated/data/enchantment/effect_component.d.ts +25 -25
  81. package/dist/_internal/types/arguments/generated/data/gametest/test_environment.d.ts +19 -1
  82. package/dist/_internal/types/arguments/generated/data/gametest.d.ts +1 -1
  83. package/dist/_internal/types/arguments/generated/data/item_modifier.d.ts +2 -1
  84. package/dist/_internal/types/arguments/generated/data/loot/condition.d.ts +84 -86
  85. package/dist/_internal/types/arguments/generated/data/loot/function.d.ts +261 -232
  86. package/dist/_internal/types/arguments/generated/data/loot.d.ts +10 -13
  87. package/dist/_internal/types/arguments/generated/data/predicate.d.ts +2 -1
  88. package/dist/_internal/types/arguments/generated/data/recipe.d.ts +58 -1
  89. package/dist/_internal/types/arguments/generated/data/slot_source.d.ts +91 -0
  90. package/dist/_internal/types/arguments/generated/data/structure.d.ts +59 -0
  91. package/dist/_internal/types/arguments/generated/data/sulfur_cube_archetype.d.ts +84 -0
  92. package/dist/_internal/types/arguments/generated/data/trim.d.ts +7 -1
  93. package/dist/_internal/types/arguments/generated/data/util.d.ts +7 -0
  94. package/dist/_internal/types/arguments/generated/data/variants/painting.d.ts +2 -2
  95. package/dist/_internal/types/arguments/generated/data/villager_trade.d.ts +4 -4
  96. package/dist/_internal/types/arguments/generated/data/worldgen/biome.d.ts +18 -0
  97. package/dist/_internal/types/arguments/generated/data/worldgen/carver.d.ts +24 -0
  98. package/dist/_internal/types/arguments/generated/data/worldgen/density_function.d.ts +28 -2
  99. package/dist/_internal/types/arguments/generated/data/worldgen/dimension/biome_source.d.ts +4 -0
  100. package/dist/_internal/types/arguments/generated/data/worldgen/dimension.d.ts +2 -2
  101. package/dist/_internal/types/arguments/generated/data/worldgen/feature/block_predicate.d.ts +7 -1
  102. package/dist/_internal/types/arguments/generated/data/worldgen/feature/tree.d.ts +54 -6
  103. package/dist/_internal/types/arguments/generated/data/worldgen/feature.d.ts +285 -115
  104. package/dist/_internal/types/arguments/generated/data/worldgen/material_condition.d.ts +93 -0
  105. package/dist/_internal/types/arguments/generated/data/worldgen/material_rule.d.ts +35 -0
  106. package/dist/_internal/types/arguments/generated/data/worldgen/noise_settings.d.ts +6 -2
  107. package/dist/_internal/types/arguments/generated/data/worldgen/processor_list.d.ts +18 -2
  108. package/dist/_internal/types/arguments/generated/data/worldgen/structure.d.ts +72 -2
  109. package/dist/_internal/types/arguments/generated/data/worldgen/structure_set.d.ts +4 -4
  110. package/dist/_internal/types/arguments/generated/dispatcher.d.ts +5 -3
  111. package/dist/_internal/types/arguments/generated/pack.d.ts +7 -0
  112. package/dist/_internal/types/arguments/generated/registry-sets.d.ts +9 -4
  113. package/dist/_internal/types/arguments/generated/registry.d.ts +15 -5
  114. package/dist/_internal/types/arguments/generated/resource-paths.d.ts +15 -0
  115. package/dist/_internal/types/arguments/generated/resources.d.ts +13 -1
  116. package/dist/_internal/types/arguments/generated/util/effect.d.ts +105 -3
  117. package/dist/_internal/types/arguments/generated/util/particle.d.ts +72 -1
  118. package/dist/_internal/types/arguments/generated/util/slot.d.ts +1 -84
  119. package/dist/_internal/types/arguments/generated/util/text.d.ts +191 -1
  120. package/dist/_internal/types/arguments/generated/util.d.ts +1 -0
  121. package/dist/_internal/types/arguments/generated/world/block/decorated_pot.d.ts +3 -5
  122. package/dist/_internal/types/arguments/generated/world/block/furnace.d.ts +3 -0
  123. package/dist/_internal/types/arguments/generated/world/block/potent_sulfur.d.ts +10 -0
  124. package/dist/_internal/types/arguments/generated/world/block/test_instance_block.d.ts +46 -1
  125. package/dist/_internal/types/arguments/generated/world/block/vault.d.ts +59 -0
  126. package/dist/_internal/types/arguments/generated/world/component/block.d.ts +6 -0
  127. package/dist/_internal/types/arguments/generated/world/component/item.d.ts +21 -6
  128. package/dist/_internal/types/arguments/generated/world/component/predicate.d.ts +4 -1
  129. package/dist/_internal/types/arguments/generated/world/component.d.ts +2 -1
  130. package/dist/_internal/types/arguments/generated/world/entity/boat.d.ts +15 -2
  131. package/dist/_internal/types/arguments/generated/world/entity/display.d.ts +34 -0
  132. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/chicken.d.ts +1 -1
  133. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/cow.d.ts +1 -1
  134. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/saddled.d.ts +1 -1
  135. package/dist/_internal/types/arguments/generated/world/entity/mob/breedable/tamable.d.ts +1 -1
  136. package/dist/_internal/types/arguments/generated/world/entity/mob/copper_golem.d.ts +3 -3
  137. package/dist/_internal/types/arguments/generated/world/entity/mob/happy_ghast.d.ts +5 -0
  138. package/dist/_internal/types/arguments/generated/world/entity/mob/player.d.ts +21 -0
  139. package/dist/_internal/types/arguments/generated/world/entity/mob/shulker.d.ts +2 -2
  140. package/dist/_internal/types/arguments/generated/world/entity/mob/slime.d.ts +20 -2
  141. package/dist/_internal/types/arguments/generated/world/entity/mob.d.ts +50 -7
  142. package/dist/_internal/types/arguments/generated/world/item/map.d.ts +12 -0
  143. package/dist/_internal/types/arguments/generated/world/item/shield.d.ts +26 -0
  144. package/dist/_internal/types/core/resources/datapack/decoratedPotPattern.d.ts +24 -0
  145. package/dist/_internal/types/core/resources/datapack/index.d.ts +3 -0
  146. package/dist/_internal/types/core/resources/datapack/slotSource.d.ts +24 -0
  147. package/dist/_internal/types/core/resources/datapack/sulfurCubeArchetype.d.ts +24 -0
  148. package/dist/_internal/types/pack/pack.d.ts +5 -2
  149. package/dist/_internal/types/variables/ResolveNBT.d.ts +1 -1
  150. package/dist/browser/sandstone.esm.js +1961 -306
  151. package/dist/browser/sandstone.esm.js.map +1 -1
  152. package/dist/exports/arguments/index.d.ts +1 -1
  153. package/dist/exports/arguments/index.js +1 -1
  154. package/dist/exports/core/index.d.ts +1 -1
  155. package/dist/exports/core/index.js +1 -1
  156. package/dist/exports/index.d.ts +1 -1
  157. package/dist/exports/index.js +1 -1
  158. package/package.json +2 -2
  159. package/src/arguments/generated/_builtin/block_state_keys.ts +112 -0
  160. package/src/arguments/generated/_builtin/block_states.ts +208 -0
  161. package/src/arguments/generated/_dispatcher/block.ts +68 -20
  162. package/src/arguments/generated/_dispatcher/block_entity.ts +5 -0
  163. package/src/arguments/generated/_dispatcher/data_component_existence_predicate.ts +34 -0
  164. package/src/arguments/generated/_dispatcher/resource.ts +29 -0
  165. package/src/arguments/generated/_registry/advancements.ts +71 -0
  166. package/src/arguments/generated/_registry/atlases.ts +0 -2
  167. package/src/arguments/generated/_registry/attributes.ts +5 -0
  168. package/src/arguments/generated/_registry/block_definitions.ts +28 -0
  169. package/src/arguments/generated/_registry/block_entity_types.ts +1 -1
  170. package/src/arguments/generated/_registry/block_predicate_types.ts +1 -0
  171. package/src/arguments/generated/_registry/block_types.ts +3 -1
  172. package/src/arguments/generated/_registry/blocks.ts +28 -0
  173. package/src/arguments/generated/_registry/cat_sound_variants.ts +11 -0
  174. package/src/arguments/generated/_registry/chicken_sound_variants.ts +11 -0
  175. package/src/arguments/generated/_registry/command_argument_types.ts +1 -1
  176. package/src/arguments/generated/_registry/cow_sound_variants.ts +11 -0
  177. package/src/arguments/generated/_registry/damage_types.ts +1 -0
  178. package/src/arguments/generated/_registry/data_component_types.ts +1 -0
  179. package/src/arguments/generated/_registry/entity_sub_predicate_types.ts +25 -6
  180. package/src/arguments/generated/_registry/entity_types.ts +1 -0
  181. package/src/arguments/generated/_registry/game_events.ts +1 -0
  182. package/src/arguments/generated/_registry/item_definitions.ts +31 -0
  183. package/src/arguments/generated/_registry/items.ts +31 -0
  184. package/src/arguments/generated/_registry/jukebox_songs.ts +1 -0
  185. package/src/arguments/generated/_registry/langs.ts +5 -0
  186. package/src/arguments/generated/_registry/loot_tables.ts +29 -0
  187. package/src/arguments/generated/_registry/models.ts +294 -42
  188. package/src/arguments/generated/_registry/particle_types.ts +8 -0
  189. package/src/arguments/generated/_registry/pig_sound_variants.ts +12 -0
  190. package/src/arguments/generated/_registry/recipes.ts +70 -0
  191. package/src/arguments/generated/_registry/sound_events.ts +66 -0
  192. package/src/arguments/generated/_registry/sounds.ts +307 -0
  193. package/src/arguments/generated/_registry/structures.ts +10 -0
  194. package/src/arguments/generated/_registry/sulfur_cube_archetypes.ts +21 -0
  195. package/src/arguments/generated/_registry/tag_blocks.ts +18 -1
  196. package/src/arguments/generated/_registry/tag_damage_types.ts +1 -0
  197. package/src/arguments/generated/_registry/tag_entity_types.ts +1 -0
  198. package/src/arguments/generated/_registry/tag_items.ts +17 -0
  199. package/src/arguments/generated/_registry/test_environment_definition_types.ts +1 -0
  200. package/src/arguments/generated/_registry/textures.ts +233 -42
  201. package/src/arguments/generated/_registry/translation_keys.ts +316 -72
  202. package/src/arguments/generated/_registry/villager_trades.ts +1 -0
  203. package/src/arguments/generated/_registry/worldgen_biomes.ts +1 -0
  204. package/src/arguments/generated/_registry/worldgen_configured_features.ts +5 -0
  205. package/src/arguments/generated/_registry/worldgen_density_function_types.ts +1 -1
  206. package/src/arguments/generated/_registry/worldgen_features.ts +5 -2
  207. package/src/arguments/generated/_registry/worldgen_noises.ts +1 -0
  208. package/src/arguments/generated/_registry/worldgen_placed_features.ts +4 -0
  209. package/src/arguments/generated/_registry/worldgen_world_presets.ts +1 -0
  210. package/src/arguments/generated/assets/atlas.ts +14 -2
  211. package/src/arguments/generated/assets/block_state_definition.ts +30 -0
  212. package/src/arguments/generated/assets/credits.ts +56 -0
  213. package/src/arguments/generated/assets/equipment.ts +4 -5
  214. package/src/arguments/generated/assets/item_definition.ts +31 -31
  215. package/src/arguments/generated/assets/model.ts +133 -0
  216. package/src/arguments/generated/assets/shader/program.ts +4 -0
  217. package/src/arguments/generated/assets/sounds.ts +1 -1
  218. package/src/arguments/generated/assets/texture_meta.ts +174 -28
  219. package/src/arguments/generated/data/advancement/predicate.ts +218 -58
  220. package/src/arguments/generated/data/advancement/trigger.ts +20 -0
  221. package/src/arguments/generated/data/advancement.ts +8 -4
  222. package/src/arguments/generated/data/chat_type.ts +8 -2
  223. package/src/arguments/generated/data/decorated_pot_pattern.ts +8 -0
  224. package/src/arguments/generated/data/dialog/input.ts +22 -0
  225. package/src/arguments/generated/data/dialog.ts +5 -5
  226. package/src/arguments/generated/data/enchantment/effect_component.ts +25 -25
  227. package/src/arguments/generated/data/gametest/test_environment.ts +24 -0
  228. package/src/arguments/generated/data/gametest.ts +1 -2
  229. package/src/arguments/generated/data/item_modifier.ts +3 -1
  230. package/src/arguments/generated/data/loot/condition.ts +129 -112
  231. package/src/arguments/generated/data/loot/function.ts +362 -280
  232. package/src/arguments/generated/data/loot.ts +14 -13
  233. package/src/arguments/generated/data/predicate.ts +3 -1
  234. package/src/arguments/generated/data/recipe.ts +66 -1
  235. package/src/arguments/generated/data/slot_source.ts +119 -0
  236. package/src/arguments/generated/data/structure.ts +63 -0
  237. package/src/arguments/generated/data/sulfur_cube_archetype.ts +92 -0
  238. package/src/arguments/generated/data/trim.ts +9 -1
  239. package/src/arguments/generated/data/util.ts +8 -0
  240. package/src/arguments/generated/data/variants/painting.ts +2 -2
  241. package/src/arguments/generated/data/villager_trade.ts +4 -4
  242. package/src/arguments/generated/data/worldgen/biome.ts +24 -0
  243. package/src/arguments/generated/data/worldgen/carver.ts +28 -0
  244. package/src/arguments/generated/data/worldgen/density_function.ts +29 -1
  245. package/src/arguments/generated/data/worldgen/dimension/biome_source.ts +5 -0
  246. package/src/arguments/generated/data/worldgen/dimension.ts +4 -2
  247. package/src/arguments/generated/data/worldgen/feature/block_predicate.ts +8 -0
  248. package/src/arguments/generated/data/worldgen/feature/tree.ts +58 -4
  249. package/src/arguments/generated/data/worldgen/feature.ts +320 -124
  250. package/src/arguments/generated/data/worldgen/material_condition.ts +119 -0
  251. package/src/arguments/generated/data/worldgen/material_rule.ts +52 -0
  252. package/src/arguments/generated/data/worldgen/noise_settings.ts +7 -2
  253. package/src/arguments/generated/data/worldgen/processor_list.ts +24 -1
  254. package/src/arguments/generated/data/worldgen/structure.ts +79 -2
  255. package/src/arguments/generated/data/worldgen/structure_set.ts +13 -4
  256. package/src/arguments/generated/dispatcher.ts +11 -4
  257. package/src/arguments/generated/pack.ts +8 -0
  258. package/src/arguments/generated/registry-sets.ts +18 -8
  259. package/src/arguments/generated/registry.ts +27 -4
  260. package/src/arguments/generated/resource-paths.ts +3 -0
  261. package/src/arguments/generated/resources.ts +6 -0
  262. package/src/arguments/generated/util/effect.ts +107 -3
  263. package/src/arguments/generated/util/particle.ts +80 -0
  264. package/src/arguments/generated/util/slot.ts +1 -103
  265. package/src/arguments/generated/util/text.ts +207 -0
  266. package/src/arguments/generated/util.ts +2 -0
  267. package/src/arguments/generated/world/block/decorated_pot.ts +3 -5
  268. package/src/arguments/generated/world/block/furnace.ts +4 -0
  269. package/src/arguments/generated/world/block/potent_sulfur.ts +11 -0
  270. package/src/arguments/generated/world/block/test_instance_block.ts +48 -1
  271. package/src/arguments/generated/world/block/vault.ts +62 -0
  272. package/src/arguments/generated/world/component/block.ts +7 -0
  273. package/src/arguments/generated/world/component/item.ts +28 -5
  274. package/src/arguments/generated/world/component/predicate.ts +6 -0
  275. package/src/arguments/generated/world/component.ts +4 -1
  276. package/src/arguments/generated/world/entity/boat.ts +18 -1
  277. package/src/arguments/generated/world/entity/display.ts +35 -0
  278. package/src/arguments/generated/world/entity/mob/breedable/chicken.ts +1 -1
  279. package/src/arguments/generated/world/entity/mob/breedable/cow.ts +1 -1
  280. package/src/arguments/generated/world/entity/mob/breedable/saddled.ts +1 -1
  281. package/src/arguments/generated/world/entity/mob/breedable/tamable.ts +1 -1
  282. package/src/arguments/generated/world/entity/mob/copper_golem.ts +3 -3
  283. package/src/arguments/generated/world/entity/mob/happy_ghast.ts +6 -0
  284. package/src/arguments/generated/world/entity/mob/player.ts +21 -0
  285. package/src/arguments/generated/world/entity/mob/shulker.ts +2 -2
  286. package/src/arguments/generated/world/entity/mob/slime.ts +22 -2
  287. package/src/arguments/generated/world/entity/mob.ts +53 -7
  288. package/src/arguments/generated/world/item/map.ts +14 -0
  289. package/src/arguments/generated/world/item/shield.ts +27 -0
  290. package/src/core/resources/datapack/decoratedPotPattern.ts +47 -0
  291. package/src/core/resources/datapack/index.ts +3 -0
  292. package/src/core/resources/datapack/slotSource.ts +47 -0
  293. package/src/core/resources/datapack/sulfurCubeArchetype.ts +47 -0
  294. package/src/pack/pack.ts +33 -0
  295. package/src/sandstone.ts +24 -0
@@ -45,11 +45,66 @@ export type MobEffectInstance = {
45
45
  * Level I having value 0. Defaults to 0.
46
46
  *
47
47
  * Value:
48
- * Range: 0..
48
+ * *either*
49
+ *
50
+ * *item 0*
51
+ *
52
+ * *or*
53
+ *
54
+ * Range: 0..255
55
+ */
56
+ amplifier?: (NBTByte | NBTInt<{
57
+ min: 0;
58
+ }>);
59
+ /**
60
+ * Duration of the effect in ticks. Infinite is represented by `-1`.
61
+ *
62
+ * Value:
63
+ * *either*
64
+ *
65
+ * *item 0*
66
+ *
67
+ * *or*
68
+ *
69
+ * Range: 1..
70
+ */
71
+ duration?: (-1 | NBTInt<{
72
+ min: 1;
73
+ }>);
74
+ /**
75
+ * Whether the effect appears as a HUD icon in addition to in the inventory GUI (same behavior as beacons when `true`). Defaults to `false`.
76
+ */
77
+ ambient?: boolean;
78
+ /**
79
+ * Defaults to `true`.
80
+ */
81
+ show_particles?: boolean;
82
+ /**
83
+ * Whether the effect appears in the inventory GUI. Defaults to `true`
84
+ */
85
+ show_icon?: boolean;
86
+ /**
87
+ * A lower amplifier effect of the same type.
88
+ */
89
+ hidden_effect?: MobEffectInstance;
90
+ };
91
+ export type ModernMobEffect = {
92
+ id: Registry['minecraft:mob_effect'];
93
+ /**
94
+ * Level I having value 0. Defaults to 0.
95
+ *
96
+ * Value:
97
+ * *either*
98
+ *
99
+ * *item 0*
100
+ *
101
+ * *or*
102
+ *
103
+ * Range: 0..255
49
104
  */
50
- amplifier?: NBTByte<{
105
+ amplifier?: (NBTByte | NBTInt<{
51
106
  min: 0;
52
- }>;
107
+ }>);
53
108
  /**
54
109
  * Duration of the effect in ticks. Infinite is represented by `-1`.
55
110
  *
@@ -82,3 +137,50 @@ export type MobEffectInstance = {
82
137
  */
83
138
  hidden_effect?: MobEffectInstance;
84
139
  };
140
+ export type OldMobEffect = {
141
+ Id?: EffectId;
142
+ /**
143
+ * Value:
144
+ * *either*
145
+ *
146
+ * *item 0*
147
+ *
148
+ * *or*
149
+ *
150
+ * Range: 0..255
151
+ */
152
+ Amplifier?: (NBTByte | NBTInt<{
153
+ min: 0;
154
+ }>);
155
+ /**
156
+ * Duration of the effect in ticks. Infinite is represented by `-1`.
157
+ *
158
+ * Value:
159
+ * *either*
160
+ *
161
+ * Range: 1..
162
+ *
163
+ * *or*
164
+ *
165
+ * *item 1*
166
+ */
167
+ Duration?: (NBTInt<{
168
+ min: 1;
169
+ }> | -1);
170
+ /**
171
+ * Whether particles are semi-transparent. (like with a Beacon)
172
+ */
173
+ Ambient?: boolean;
174
+ /**
175
+ * Whether particles should be shown.
176
+ */
177
+ ShowParticles?: boolean;
178
+ /**
179
+ * Whether the effect icon should be shown.
180
+ */
181
+ ShowIcon?: boolean;
182
+ /**
183
+ * A lower amplifier effect of the same type.
184
+ */
185
+ HiddenEffect?: MobEffectInstance;
186
+ };
@@ -54,6 +54,32 @@ export type EntityEffectParticle = {
54
54
  export type FlashParticle = {
55
55
  color: TranslucentParticle;
56
56
  };
57
+ export type GeyserBaseParticle = {
58
+ /**
59
+ * Scales the particle size and its burst impulse.
60
+ *
61
+ * Value:
62
+ * Range: 1..
63
+ */
64
+ water_blocks: NBTInt<{
65
+ min: 1;
66
+ }>;
67
+ /**
68
+ * Scales the initial burst impulse
69
+ */
70
+ burst_impulse_base: NBTFloat;
71
+ };
72
+ export type GeyserParticle = {
73
+ /**
74
+ * Scales the particle size and its burst impulse.
75
+ *
76
+ * Value:
77
+ * Range: 1..
78
+ */
79
+ water_blocks: NBTInt<{
80
+ min: 1;
81
+ }>;
82
+ };
57
83
  export type ItemParticle = {
58
84
  item: ItemStackTemplate;
59
85
  };
@@ -75,6 +101,39 @@ export type LegacyTranslucentParticle = NBTList<NBTFloat, {
75
101
  min: 4;
76
102
  max: 4;
77
103
  }>;
104
+ export type OldDustParticle = {
105
+ r: NBTFloat;
106
+ g: NBTFloat;
107
+ b: NBTFloat;
108
+ /**
109
+ * Value:
110
+ * Range: 0.01..4
111
+ */
112
+ scale: NBTFloat<{
113
+ leftExclusive: false;
114
+ rightExclusive: false;
115
+ min: 0;
116
+ }>;
117
+ };
118
+ export type OldDustTransition = {
119
+ fromColor: DustColor;
120
+ toColor: DustColor;
121
+ /**
122
+ * Value:
123
+ * Range: 0.01..4
124
+ */
125
+ scale: NBTFloat<{
126
+ leftExclusive: false;
127
+ rightExclusive: false;
128
+ min: 0;
129
+ }>;
130
+ };
131
+ export type OldEntityEffect = {
132
+ r: NBTFloat;
133
+ g: NBTFloat;
134
+ b: NBTFloat;
135
+ a: NBTFloat;
136
+ };
78
137
  export type Particle = NonNullable<({
79
138
  [S in Extract<Registry['minecraft:particle_type'], string>]?: ({
80
139
  type: S;
@@ -165,6 +224,14 @@ type ParticleDispatcherMap = {
165
224
  'minecraft:falling_dust': ParticleFallingDust;
166
225
  'flash': ParticleFlash;
167
226
  'minecraft:flash': ParticleFlash;
227
+ 'geyser': ParticleGeyser;
228
+ 'minecraft:geyser': ParticleGeyser;
229
+ 'geyser_base': ParticleGeyserBase;
230
+ 'minecraft:geyser_base': ParticleGeyserBase;
231
+ 'geyser_plume': ParticleGeyserPlume;
232
+ 'minecraft:geyser_plume': ParticleGeyserPlume;
233
+ 'geyser_poof': ParticleGeyserPoof;
234
+ 'minecraft:geyser_poof': ParticleGeyserPoof;
168
235
  'instant_effect': ParticleInstantEffect;
169
236
  'minecraft:instant_effect': ParticleInstantEffect;
170
237
  'item': ParticleItem;
@@ -181,7 +248,7 @@ type ParticleDispatcherMap = {
181
248
  'minecraft:vibration': ParticleVibration;
182
249
  };
183
250
  type ParticleKeys = keyof ParticleDispatcherMap;
184
- type ParticleFallback = (ParticleBlock | ParticleBlockCrumble | ParticleBlockMarker | ParticleDragonBreath | ParticleDust | ParticleDustColorTransition | ParticleDustPillar | ParticleEffect | ParticleEntityEffect | ParticleFallingDust | ParticleFlash | ParticleInstantEffect | ParticleItem | ParticleSculkCharge | ParticleShriek | ParticleTintedLeaves | ParticleTrail | ParticleVibration | ParticleFallbackType);
251
+ type ParticleFallback = (ParticleBlock | ParticleBlockCrumble | ParticleBlockMarker | ParticleDragonBreath | ParticleDust | ParticleDustColorTransition | ParticleDustPillar | ParticleEffect | ParticleEntityEffect | ParticleFallingDust | ParticleFlash | ParticleGeyser | ParticleGeyserBase | ParticleGeyserPlume | ParticleGeyserPoof | ParticleInstantEffect | ParticleItem | ParticleSculkCharge | ParticleShriek | ParticleTintedLeaves | ParticleTrail | ParticleVibration | ParticleFallbackType);
185
252
  export type ParticleFallbackType = Record<string, never>;
186
253
  type ParticleNoneType = NBTObject;
187
254
  type ParticleBlock = BlockParticle;
@@ -195,6 +262,10 @@ type ParticleEffect = EffectParticle;
195
262
  type ParticleEntityEffect = EntityEffectParticle;
196
263
  type ParticleFallingDust = BlockParticle;
197
264
  type ParticleFlash = FlashParticle;
265
+ type ParticleGeyser = GeyserParticle;
266
+ type ParticleGeyserBase = GeyserBaseParticle;
267
+ type ParticleGeyserPlume = GeyserParticle;
268
+ type ParticleGeyserPoof = GeyserBaseParticle;
198
269
  type ParticleInstantEffect = EffectParticle;
199
270
  type ParticleItem = ItemParticle;
200
271
  type ParticleSculkCharge = SculkChargeParticle;
@@ -1,93 +1,10 @@
1
- import type { ItemPredicate } from "../data/advancement/predicate.js";
2
- import type { BlockEntityTarget, EntityTarget } from "../data/loot.js";
3
- import type { ContainerComponents } from "../data/loot/function.js";
4
- import type { Registry } from "../registry.js";
5
1
  import type { ItemStack } from "../world/item.js";
6
- import type { ENTITY_SLOTS } from "../../index.js";
7
- import type { NBTObject, RootNBT } from "../../nbt.js";
8
- import type { LiteralUnion, NBTInt } from "../../../../index.js";
9
- export type ContentsSlotSource = {
10
- /**
11
- * The slots to search.
12
- */
13
- slot_source: SlotSource;
14
- /**
15
- * If an item targeted by `slot_source` has this container component, selects all items inside.
16
- *
17
- * Value:
18
- *
19
- * - Container(`container`)
20
- * - BundleContents(`bundle_contents`)
21
- * - ChargedProjectiles(`charged_projectiles`)
22
- */
23
- component: (ContainerComponents | `minecraft:${ContainerComponents}`);
24
- };
2
+ import type { NBTObject } from "../../nbt.js";
25
3
  export type EquipmentSlot = ('mainhand' | 'offhand' | 'head' | 'chest' | 'legs' | 'feet' | 'body' | 'saddle');
26
4
  export type EquipmentSlotGroup = ('mainhand' | 'offhand' | 'head' | 'chest' | 'legs' | 'feet' | 'hand' | 'armor' | 'any' | 'body' | 'saddle');
27
- export type FilterSlotSource = {
28
- slot_source: SlotSource;
29
- item_filter: ItemPredicate;
30
- };
31
- export type GroupSlotSource = {
32
- terms: Array<SlotSource>;
33
- };
34
- export type LimitCountSlotSource = {
35
- slot_source: SlotSource;
36
- /**
37
- * Value:
38
- * Range: 1..
39
- */
40
- limit: NBTInt<{
41
- min: 1;
42
- }>;
43
- };
44
- export type RangeSlotSource = {
45
- /**
46
- * Value:
47
- * *either*
48
- *
49
- *
50
- *
51
- * *or*
52
- *
53
- * *item 1*
54
- */
55
- source: (EntityTarget | BlockEntityTarget);
56
- slots: LiteralUnion<ENTITY_SLOTS>;
57
- };
58
- export type SlotSource = (TypedSlotSource | Array<TypedSlotSource>);
59
5
  export type SlottedItem<T extends NBTObject> = (ItemStack & {
60
6
  /**
61
7
  * Inventory slot the item is in
62
8
  */
63
9
  Slot?: T;
64
10
  });
65
- export type TypedSlotSource = NonNullable<({
66
- [S in Extract<Registry['minecraft:slot_source_type'], string>]?: ({
67
- type: S;
68
- } & (S extends keyof SymbolSlotSource ? SymbolSlotSource[S] : RootNBT));
69
- }[Registry['minecraft:slot_source_type']])>;
70
- type SlotSourceDispatcherMap = {
71
- 'contents': SlotSourceContents;
72
- 'minecraft:contents': SlotSourceContents;
73
- 'empty': SlotSourceEmpty;
74
- 'minecraft:empty': SlotSourceEmpty;
75
- 'filtered': SlotSourceFiltered;
76
- 'minecraft:filtered': SlotSourceFiltered;
77
- 'group': SlotSourceGroup;
78
- 'minecraft:group': SlotSourceGroup;
79
- 'limit_slots': SlotSourceLimitSlots;
80
- 'minecraft:limit_slots': SlotSourceLimitSlots;
81
- 'slot_range': SlotSourceSlotRange;
82
- 'minecraft:slot_range': SlotSourceSlotRange;
83
- };
84
- type SlotSourceKeys = keyof SlotSourceDispatcherMap;
85
- type SlotSourceFallback = (SlotSourceContents | SlotSourceEmpty | SlotSourceFiltered | SlotSourceGroup | SlotSourceLimitSlots | SlotSourceSlotRange);
86
- type SlotSourceContents = ContentsSlotSource;
87
- type SlotSourceEmpty = Record<string, never>;
88
- type SlotSourceFiltered = FilterSlotSource;
89
- type SlotSourceGroup = GroupSlotSource;
90
- type SlotSourceLimitSlots = LimitCountSlotSource;
91
- type SlotSourceSlotRange = RangeSlotSource;
92
- export type SymbolSlotSource<CASE extends 'map' | 'keys' | '%fallback' | '%none' | '%unknown' = 'map'> = CASE extends 'map' ? SlotSourceDispatcherMap : CASE extends 'keys' ? SlotSourceKeys : CASE extends '%fallback' ? SlotSourceFallback : never;
93
- export {};
@@ -3,10 +3,17 @@ import type { SymbolMcdocCustomEvent } from "../dispatcher.js";
3
3
  import type { Registry } from "../registry.js";
4
4
  import type { Profile } from "./avatar.js";
5
5
  import type { RGBA } from "./color.js";
6
+ import type { DataComponentPatch } from "../world/component.js";
6
7
  import type { ItemStack } from "../world/item.js";
7
8
  import type { Coordinates, MultipleEntitiesArgument } from "../../index.js";
8
9
  import type { RootNBT } from "../../nbt.js";
9
10
  import type { AtlasClass, DataPointClass, DialogClass, FontClass, NBTInt, NBTList, ObjectiveClass, Score, TextureClass } from "../../../../index.js";
11
+ export type BlockNbtText = ({
12
+ block: Coordinates;
13
+ nbt: `${any}${string}` | DataPointClass;
14
+ source?: 'block';
15
+ type?: 'nbt';
16
+ } & TextNbtBase);
10
17
  export type ChangePage = {
11
18
  /**
12
19
  * The page number to go to.
@@ -51,6 +58,57 @@ export type CustomAction = NonNullable<({
51
58
  payload?: (S extends keyof SymbolMcdocCustomEvent ? SymbolMcdocCustomEvent[S] : SymbolMcdocCustomEvent<'%unknown'>);
52
59
  };
53
60
  }[`${string}:${string}`])>;
61
+ export type EntityHoverContent = {
62
+ type: Registry['minecraft:entity_type'];
63
+ /**
64
+ * Value:
65
+ * *either*
66
+ *
67
+ * List length range: 4
68
+ *
69
+ * *or*
70
+ *
71
+ * *item 1*
72
+ */
73
+ id: (NBTList<NBTInt, {
74
+ leftExclusive: false;
75
+ rightExclusive: false;
76
+ min: 4;
77
+ max: 4;
78
+ }> | string);
79
+ name?: Text;
80
+ };
81
+ export type EntityHoverValue = {
82
+ name?: string;
83
+ type?: string;
84
+ id?: string;
85
+ };
86
+ export type EntityNbtText = ({
87
+ entity: MultipleEntitiesArgument;
88
+ nbt: `${any}${string}` | DataPointClass;
89
+ source?: 'entity';
90
+ type?: 'nbt';
91
+ } & TextNbtBase);
92
+ export type EntityTooltipInfo = {
93
+ id: Registry['minecraft:entity_type'];
94
+ /**
95
+ * Value:
96
+ * *either*
97
+ *
98
+ * List length range: 4
99
+ *
100
+ * *or*
101
+ *
102
+ * *item 1*
103
+ */
104
+ uuid: (NBTList<NBTInt, {
105
+ leftExclusive: false;
106
+ rightExclusive: false;
107
+ min: 4;
108
+ max: 4;
109
+ }> | string);
110
+ name?: Text;
111
+ };
54
112
  export type HoverEvent = NonNullable<({
55
113
  [S in Extract<HoverEventAction, string>]?: ({
56
114
  /**
@@ -64,7 +122,84 @@ export type HoverEvent = NonNullable<({
64
122
  } & (S extends keyof SymbolHoverEvent ? SymbolHoverEvent[S] : RootNBT));
65
123
  }[HoverEventAction])>;
66
124
  export type HoverEventAction = ('show_text' | 'show_item' | 'show_entity');
67
- export type Keybind = ('key.advancements' | 'key.attack' | 'key.back' | 'key.chat' | 'key.command' | 'key.debug.clearChat' | 'key.debug.copyLocation' | 'key.debug.copyRecreateCommand' | 'key.debug.crash' | 'key.debug.debugOptions' | 'key.debug.dumpDynamicTextures' | 'key.debug.dumpVersion' | 'key.debug.focusPause' | 'key.debug.fpsCharts' | 'key.debug.lightmapTexture' | 'key.debug.modifier' | 'key.debug.networkCharts' | 'key.debug.overlay' | 'key.debug.profiling' | 'key.debug.profilingChart' | 'key.debug.reloadChunk' | 'key.debug.reloadResourcePacks' | 'key.debug.showAdvancedTooltips' | 'key.debug.showChunkBorders' | 'key.debug.showHitboxes' | 'key.debug.spectate' | 'key.debug.switchGameMode' | 'key.drop' | 'key.forward' | 'key.fullscreen' | 'key.hotbar.1' | 'key.hotbar.2' | 'key.hotbar.3' | 'key.hotbar.4' | 'key.hotbar.5' | 'key.hotbar.6' | 'key.hotbar.7' | 'key.hotbar.8' | 'key.hotbar.9' | 'key.inventory' | 'key.jump' | 'key.left' | 'key.loadToolbarActivator' | 'key.pickItem' | 'key.playerlist' | 'key.quickActions' | 'key.right' | 'key.saveToolbarActivator' | 'key.screenshot' | 'key.smoothCamera' | 'key.sneak' | 'key.spectatorHotbar' | 'key.spectatorOutlines' | 'key.sprint' | 'key.swapOffhand' | 'key.toggleGui' | 'key.togglePerspective' | 'key.toggleSpectatorShaderEffects' | 'key.use');
125
+ export type ItemHoverContent = {
126
+ id: Registry['minecraft:item'];
127
+ count?: NBTInt;
128
+ components?: DataComponentPatch;
129
+ };
130
+ export type Keybind = ('key.advancements' | 'key.attack' | 'key.back' | 'key.chat' | 'key.command' | 'key.debug.clearChat' | 'key.debug.copyLocation' | 'key.debug.copyRecreateCommand' | 'key.debug.crash' | 'key.debug.debugOptions' | 'key.debug.dumpDynamicTextures' | 'key.debug.dumpVersion' | 'key.debug.focusPause' | 'key.debug.fpsCharts' | 'key.debug.lightmapTexture' | 'key.debug.modifier' | 'key.debug.networkCharts' | 'key.debug.overlay' | 'key.debug.profiling' | 'key.debug.profilingChart' | 'key.debug.reloadChunk' | 'key.debug.reloadResourcePacks' | 'key.debug.showAdvancedTooltips' | 'key.debug.showChunkBorders' | 'key.debug.showHitboxes' | 'key.debug.spectate' | 'key.debug.switchGameMode' | 'key.drop' | 'key.forward' | 'key.friends' | 'key.fullscreen' | 'key.hotbar.1' | 'key.hotbar.2' | 'key.hotbar.3' | 'key.hotbar.4' | 'key.hotbar.5' | 'key.hotbar.6' | 'key.hotbar.7' | 'key.hotbar.8' | 'key.hotbar.9' | 'key.inventory' | 'key.jump' | 'key.left' | 'key.loadToolbarActivator' | 'key.pickItem' | 'key.playerlist' | 'key.quickActions' | 'key.right' | 'key.saveToolbarActivator' | 'key.screenshot' | 'key.smoothCamera' | 'key.sneak' | 'key.spectatorHotbar' | 'key.spectatorOutlines' | 'key.sprint' | 'key.swapOffhand' | 'key.toggleGui' | 'key.togglePerspective' | 'key.toggleSpectatorShaderEffects' | 'key.use');
131
+ export type KeybindText = ({
132
+ /**
133
+ * Value:
134
+ *
135
+ * - Advancements(`key.advancements`)
136
+ * - Attack(`key.attack`)
137
+ * - Back(`key.back`)
138
+ * - Chat(`key.chat`)
139
+ * - Command(`key.command`)
140
+ * - DebugClearChat(`key.debug.clearChat`)
141
+ * - DebugCopyLocation(`key.debug.copyLocation`)
142
+ * - DebugCopyRecreateCommand(`key.debug.copyRecreateCommand`)
143
+ * - DebugCrash(`key.debug.crash`)
144
+ * - DebugOptionsMenu(`key.debug.debugOptions`)
145
+ * - DebugDumpDynamicTextures(`key.debug.dumpDynamicTextures`)
146
+ * - DebugDumpVersion(`key.debug.dumpVersion`)
147
+ * - DebugFocusPause(`key.debug.focusPause`)
148
+ * - DebugFpsCharts(`key.debug.fpsCharts`)
149
+ * - DebugLightmapTexture(`key.debug.lightmapTexture`)
150
+ * - DebugModifier(`key.debug.modifier`)
151
+ * - DebugNetworkCharts(`key.debug.networkCharts`)
152
+ * - DebugOverlay(`key.debug.overlay`)
153
+ * - DebugProfiling(`key.debug.profiling`)
154
+ * - DebugProfilingChart(`key.debug.profilingChart`)
155
+ * - DebugReloadChunk(`key.debug.reloadChunk`)
156
+ * - DebugReloadResourcePacks(`key.debug.reloadResourcePacks`)
157
+ * - DebugShowAdvancedTooltips(`key.debug.showAdvancedTooltips`)
158
+ * - DebugShowChunkBorders(`key.debug.showChunkBorders`)
159
+ * - DebugShowHitboxes(`key.debug.showHitboxes`)
160
+ * - DebugSpectate(`key.debug.spectate`)
161
+ * - DebugSwitchGameMode(`key.debug.switchGameMode`)
162
+ * - Drop(`key.drop`)
163
+ * - Forward(`key.forward`)
164
+ * - Friends(`key.friends`)
165
+ * - Fullscreen(`key.fullscreen`)
166
+ * - Hotbar1(`key.hotbar.1`)
167
+ * - Hotbar2(`key.hotbar.2`)
168
+ * - Hotbar3(`key.hotbar.3`)
169
+ * - Hotbar4(`key.hotbar.4`)
170
+ * - Hotbar5(`key.hotbar.5`)
171
+ * - Hotbar6(`key.hotbar.6`)
172
+ * - Hotbar7(`key.hotbar.7`)
173
+ * - Hotbar8(`key.hotbar.8`)
174
+ * - Hotbar9(`key.hotbar.9`)
175
+ * - Inventory(`key.inventory`)
176
+ * - Jump(`key.jump`)
177
+ * - Left(`key.left`)
178
+ * - LoadToolbarActivator(`key.loadToolbarActivator`)
179
+ * - PickItem(`key.pickItem`)
180
+ * - Playerlist(`key.playerlist`)
181
+ * - QuickActions(`key.quickActions`)
182
+ * - Right(`key.right`)
183
+ * - SaveToolbarActivator(`key.saveToolbarActivator`)
184
+ * - Screenshot(`key.screenshot`)
185
+ * - SmoothCamera(`key.smoothCamera`)
186
+ * - Sneak(`key.sneak`)
187
+ * - SpectatorHotbar(`key.spectatorHotbar`)
188
+ * - SpectatorOutlines(`key.spectatorOutlines`)
189
+ * - Sprint(`key.sprint`)
190
+ * - SwapOffhand(`key.swapOffhand`)
191
+ * - ToggleGui(`key.toggleGui`)
192
+ * - TogglePerspective(`key.togglePerspective`)
193
+ * - ToggleSpectatorShaderEffects(`key.toggleSpectatorShaderEffects`)
194
+ * - Use(`key.use`)
195
+ */
196
+ keybind: Keybind;
197
+ type?: 'keybind';
198
+ } & TextBase);
199
+ export type NormalText = ({
200
+ text: string;
201
+ type?: 'text';
202
+ } & TextBase);
68
203
  export type ObjectTextConfig = {
69
204
  /**
70
205
  * Used in places where object component cannot be displayed (for example, server log or narration).
@@ -74,9 +209,34 @@ export type ObjectTextConfig = {
74
209
  export type OpenUrl = {
75
210
  url: `${any}${string}` | URL;
76
211
  };
212
+ export type PlayerHeadText = ({
213
+ player: Profile;
214
+ /**
215
+ * Whether the head layer is rendered. Defaults to `true`.
216
+ */
217
+ hat?: boolean;
218
+ object?: 'player';
219
+ type?: 'object';
220
+ } & ObjectTextConfig & TextBase);
77
221
  export type RunCommand = {
78
222
  command: `${any}${string}`;
79
223
  };
224
+ export type ScoreHolder = {
225
+ objective: `${any}${string}` | ObjectiveClass;
226
+ name: `${any}${string}` | Score;
227
+ };
228
+ export type ScoreText = ({
229
+ score: {
230
+ objective: `${any}${string}` | ObjectiveClass;
231
+ name: `${any}${string}` | Score;
232
+ };
233
+ type?: 'score';
234
+ } & TextBase);
235
+ export type SelectorText = ({
236
+ selector: MultipleEntitiesArgument;
237
+ separator?: Text;
238
+ type?: 'selector';
239
+ } & TextBase);
80
240
  export type ShowDialog = {
81
241
  dialog: ((Registry['minecraft:dialog'] | DialogClass) | Dialog);
82
242
  };
@@ -125,6 +285,21 @@ export type ShowItem = ItemStack;
125
285
  export type ShowText = {
126
286
  value: Text;
127
287
  };
288
+ export type SpriteText = ({
289
+ /**
290
+ * Defaults to `minecraft:blocks`.
291
+ */
292
+ atlas?: (Registry['minecraft:atlas'] | AtlasClass);
293
+ sprite: (Registry['minecraft:texture'] | TextureClass);
294
+ object?: 'atlas';
295
+ type?: 'object';
296
+ } & ObjectTextConfig & TextBase);
297
+ export type StorageNbtText = ({
298
+ storage: `${string}:${string}`;
299
+ nbt: `${any}${string}` | DataPointClass;
300
+ source?: 'storage';
301
+ type?: 'nbt';
302
+ } & TextNbtBase);
128
303
  export type SuggestCommand = {
129
304
  command: `${any}${string}`;
130
305
  };
@@ -143,6 +318,7 @@ export type TextBase = ({
143
318
  }>;
144
319
  } & TextStyle);
145
320
  export type TextColor = ('black' | 'dark_blue' | 'dark_green' | 'dark_aqua' | 'dark_red' | 'dark_purple' | 'gold' | 'gray' | 'dark_gray' | 'blue' | 'green' | 'aqua' | 'red' | 'light_purple' | 'yellow' | 'white');
321
+ export type TextFormat = ('obfuscated' | 'bold' | 'strikethrough' | 'underline' | 'italic' | 'reset');
146
322
  export type TextNbtBase = ({
147
323
  interpret?: boolean;
148
324
  /**
@@ -211,6 +387,7 @@ export type TextObject = (({
211
387
  * - DebugSwitchGameMode(`key.debug.switchGameMode`)
212
388
  * - Drop(`key.drop`)
213
389
  * - Forward(`key.forward`)
390
+ * - Friends(`key.friends`)
214
391
  * - Fullscreen(`key.fullscreen`)
215
392
  * - Hotbar1(`key.hotbar.1`)
216
393
  * - Hotbar2(`key.hotbar.2`)
@@ -303,6 +480,19 @@ export type TextStyle = {
303
480
  click_event?: ClickEvent;
304
481
  hover_event?: HoverEvent;
305
482
  };
483
+ export type TranslatedText = ({
484
+ translate: Registry['minecraft:translation_key'];
485
+ fallback?: string;
486
+ /**
487
+ * Value:
488
+ * List length range: 1..
489
+ */
490
+ with?: NBTList<Text, {
491
+ leftExclusive: false;
492
+ min: 1;
493
+ }>;
494
+ type?: 'translatable';
495
+ } & TextBase);
306
496
  type ClickEventDispatcherMap = {
307
497
  'change_page': ClickEventChangePage;
308
498
  'minecraft:change_page': ClickEventChangePage;
@@ -39,6 +39,7 @@ export type NonEmptyWeightedList<T extends NBTObject> = NBTList<WeightedEntry<T>
39
39
  leftExclusive: false;
40
40
  min: 1;
41
41
  }>;
42
+ export type Rotation = ('none' | 'clockwise_90' | '180' | 'counterclockwise_90');
42
43
  export type WeightedEntry<T extends NBTObject> = {
43
44
  /**
44
45
  * Value:
@@ -5,18 +5,16 @@ import type { LootTableClass, NBTList, NBTLong } from "../../../../../index.js";
5
5
  export type DecoratedPot = (BlockEntity & {
6
6
  /**
7
7
  * Item ID of what was used for each side of the pot. \
8
- * Only vanilla pottery sherds have hardcoded decoration textures.
8
+ * Only vanilla pottery sherds have hardcoded decoration textures. \
9
9
  * Other items are treated like brick.
10
10
  *
11
11
  * Value:
12
- * List length range: 4
12
+ * List length range: ..4
13
13
  */
14
14
  sherds?: NBTList<Registry['minecraft:item'], {
15
- leftExclusive: false;
16
15
  rightExclusive: false;
17
- min: 4;
18
- max: 4;
19
16
  }>;
17
+ } & {
20
18
  /**
21
19
  * Loot table that will populate this container.
22
20
  */
@@ -45,3 +45,6 @@ export type Furnace = (BlockEntity & Nameable & Lockable & {
45
45
  */
46
46
  lit_total_time?: NBTShort;
47
47
  });
48
+ export type RecipesUsed = ({
49
+ [Key in Extract<Registry['minecraft:recipe'], string>]?: NBTInt;
50
+ });
@@ -0,0 +1,10 @@
1
+ import type { BlockEntity } from "./.js";
2
+ import type { NBTInt } from "../../../../../index.js";
3
+ export type PotentSulfur = (BlockEntity & {
4
+ /**
5
+ * Time in seconds until the next state switch (between dormant and erupting). \
6
+ * The timer only counts down when the potent sulfur creates a valid geyser. \
7
+ * Negative values will be replaced with a new duration of the current state.
8
+ */
9
+ countdown?: NBTInt;
10
+ });
@@ -1,8 +1,21 @@
1
- import type { Rotation } from "../../data/gametest.js";
2
1
  import type { Registry } from "../../registry.js";
2
+ import type { Rotation } from "../../util.js";
3
3
  import type { Text } from "../../util/text.js";
4
4
  import type { BlockEntity } from "./.js";
5
5
  import type { NBTIntArray, TestInstanceClass } from "../../../../../index.js";
6
+ export type ErrorMarker = {
7
+ /**
8
+ * Value:
9
+ * Array length range: 3
10
+ */
11
+ pos: NBTIntArray<{
12
+ leftExclusive: false;
13
+ rightExclusive: false;
14
+ min: 3;
15
+ max: 3;
16
+ }>;
17
+ text: Text;
18
+ };
6
19
  export type TestInstanceBlock = (BlockEntity & {
7
20
  data?: {
8
21
  test?: (Registry['minecraft:test_instance'] | TestInstanceClass);
@@ -50,4 +63,36 @@ export type TestInstanceBlock = (BlockEntity & {
50
63
  text: Text;
51
64
  }>;
52
65
  });
66
+ export type TestInstanceBlockData = {
67
+ test?: (Registry['minecraft:test_instance'] | TestInstanceClass);
68
+ /**
69
+ * Value:
70
+ * Array length range: 3
71
+ */
72
+ size: NBTIntArray<{
73
+ leftExclusive: false;
74
+ rightExclusive: false;
75
+ min: 3;
76
+ max: 3;
77
+ }>;
78
+ /**
79
+ * Value:
80
+ *
81
+ * - None(`none`)
82
+ * - Clockwise90(`clockwise_90`)
83
+ * - Clockwise180(`180`)
84
+ * - CounterClockwise90(`counterclockwise_90`)
85
+ */
86
+ rotation: Rotation;
87
+ ignore_entities: boolean;
88
+ /**
89
+ * Value:
90
+ *
91
+ * - Cleared(`cleared`)
92
+ * - Running(`running`)
93
+ * - Finished(`finished`)
94
+ */
95
+ status: TestInstanceBlockStatus;
96
+ error_message?: Text;
97
+ };
53
98
  export type TestInstanceBlockStatus = ('cleared' | 'running' | 'finished');