@serenityjs/core 0.7.1 → 0.7.2-beta-20250201214758

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.
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Logger } from '@serenityjs/logger';
2
2
  import { Connection, RaknetServerProperties, Server, Priority } from '@serenityjs/raknet';
3
3
  import Emitter, { Emitter as Emitter$1 } from '@serenityjs/emitter';
4
- import { Packet, DataPacket, PermissionLevel, LoginPacket, PlayStatusPacket, ServerToClientHandshakePacket, ClientToServerHandshakePacket, DisconnectPacket, ResourcePacksInfoPacket, ResourcePackStackPacket, ResourcePackClientResponsePacket, TextPacket, SetTimePacket, StartGamePacket, AddPlayerPacket, AddEntityPacket, RemoveEntityPacket, AddItemActorPacket, TakeItemActorPacket, MoveActorAbsolutePacket, MovePlayerPacket, RiderJumpPacket, UpdateBlockPacket, LevelEventPacket, BlockEventPacket, ActorEventPacket, UpdateAttributesPacket, InventoryTransactionPacket, SetActorLinkPacket, CompletedUsingItemPacket, MobEquipmentPacket, MobArmorEquipmentPacket, MobEffectPacket, InteractPacket, BlockPickRequestPacket, BookEditPacket, PlayerStartItemCooldownPacket, EntityPickRequestPacket, PlayerActionPacket, HurtArmorPacket, SetActorDataPacket, SetActorMotionPacket, AnimatePacket, RespawnPacket, ContainerOpenPacket, ContainerClosePacket, PlayerHotbarPacket, InventoryContentPacket, InventorySlotPacket, ContainerSetDataPacket, CraftingDataPacket, BlockActorDataPacket, LevelChunkPacket, SetCommandsEnabledPacket, ChangeDimensionPacket, SetPlayerGameTypePacket, PlayerListPacket, RequestChunkRadiusPacket, ChunkRadiusUpdatePacket, GameRulesChangedPacket, BossEventPacket, LegacyTelemetryEventPacket, AvailableCommandsPacket, CommandRequestPacket, CommandBlockUpdatePacket, CommandOutputPacket, ResourcePackDataInfoPacket, SetSpawnPositionPacket, StructureBlockUpdatePacket, SetHealthPacket, SetDifficultyPacket, DimensionDataPacket, CameraInstructionsPacket, ResourcePackChunkDataPacket, TrimDataPacket, ShowCreditsPacket, CameraPresetsPacket, ResourcePackChunkRequestPacket, UnlockedRecipesPacket, TransferPacket, PlaySoundPacket, SetTitlePacket, PlayerSkinPacket, NpcRequestPacket, OpenSignPacket, CameraShakePacket, PlayerFogPacket, ModalFormRequestPacket, ModalFormResponsePacket, ServerSettingsResponsePacket, ShowProfilePacket, RemoveObjectivePacket, SetDisplayObjectivePacket, SetScorePacket, MoveActorDeltaPacket, SetScoreboardIdentityPacket, NetworkStackLatencyPacket, AvailableActorIdentifiersPacket, SpawnParticleEffectPacket, SetLocalPlayerAsInitializedPacket, NetworkChunkPublisherUpdatePacket, BiomeDefinitionListPacket, LevelSoundEventPacket, LevelEventGenericPacket, OnScreenTextureAnimationPacket, StopSoundPacket, EmotePacket, NetworkSettingsPacket, PlayerAuthInputPacket, CreativeContentPacket, PlayerEnchantOptionsPacket, SyncActorPropertyPacket, ItemStackRequestPacket, ItemStackResponsePacket, EmoteListPacket, DebugInfoPacket, PacketViolationWarningPacket, AnimateEntityPacket, CorrectPlayerMovePredictionPacket, ClientBoundMapItemDataPacket, MapInfoRequestPacket, ItemComponentPacket, ClientBoundDebugRendererPacket, UpdateTradePacket, NpcDialoguePacket, ScriptMessagePacket, RequestPermissionsPacket, ToastRequestPacket, UpdateAbilitiesPacket, UpdateAdventureSettingsPacket, DeathInfoPacket, RequestNetworkSettingsPacket, SetPlayerInventoryOptionsPacket, SetHudPacket, AwardAchievementPacket, ClientboundCloseFormPacket, ServerboundLoadingScreenPacketPacket, UpdateClientInputLocksPacket, CurrectStructureFeaturePacket, ServerboundDiagnosticsPacket, MovementEffectPacket, DimensionType, Vector3f, GameRule, ActorFlag, AbilityIndex, MaterialRenderMethod, NetworkBlockTypeDefinition, ItemData, NetworkItemInstanceDescriptor, ContainerType, ContainerId, ItemUseMethod, NetworkItemStackDescriptor, Enchantment, BlockPosition, BlockFace, IPosition, ScoreboardIdentityType, ObjectiveSortOrder, DisplaySlotType, ModalFormType, BossEventColor, ActorDataId, DataItem, AttributeName, Attribute, DeviceOS, MemoryTier, InputMode, InteractionMode, PlayMode, HudElement, SerializedSkin, Gamemode, DisconnectReason, ContainerName, CommandPermissionLevel, ActorDamageCause, ChunkCoords, EffectType, EquipmentSlot, Rotation, Color, UpdateBlockLayerType, CompressionMethod, PackType, InventoryAction, ItemUseInventoryTransaction, ItemUseOnEntityInventoryTransaction, LoginTokens, LoginTokenData, InputData, PlayerBlockActionData, ItemStackRequestActionMineBlock } from '@serenityjs/protocol';
4
+ import { Packet, DataPacket, PermissionLevel, LoginPacket, PlayStatusPacket, ServerToClientHandshakePacket, ClientToServerHandshakePacket, DisconnectPacket, ResourcePacksInfoPacket, ResourcePackStackPacket, ResourcePackClientResponsePacket, TextPacket, SetTimePacket, StartGamePacket, AddPlayerPacket, AddEntityPacket, RemoveEntityPacket, AddItemActorPacket, TakeItemActorPacket, MoveActorAbsolutePacket, MovePlayerPacket, RiderJumpPacket, UpdateBlockPacket, LevelEventPacket, BlockEventPacket, ActorEventPacket, UpdateAttributesPacket, InventoryTransactionPacket, SetActorLinkPacket, CompletedUsingItemPacket, MobEquipmentPacket, MobArmorEquipmentPacket, MobEffectPacket, InteractPacket, BlockPickRequestPacket, BookEditPacket, PlayerStartItemCooldownPacket, EntityPickRequestPacket, PlayerActionPacket, HurtArmorPacket, SetActorDataPacket, SetActorMotionPacket, AnimatePacket, RespawnPacket, ContainerOpenPacket, ContainerClosePacket, PlayerHotbarPacket, InventoryContentPacket, InventorySlotPacket, ContainerSetDataPacket, CraftingDataPacket, BlockActorDataPacket, LevelChunkPacket, SetCommandsEnabledPacket, ChangeDimensionPacket, SetPlayerGameTypePacket, PlayerListPacket, RequestChunkRadiusPacket, ChunkRadiusUpdatePacket, GameRulesChangedPacket, BossEventPacket, LegacyTelemetryEventPacket, AvailableCommandsPacket, CommandRequestPacket, CommandBlockUpdatePacket, CommandOutputPacket, ResourcePackDataInfoPacket, SetSpawnPositionPacket, StructureBlockUpdatePacket, SetHealthPacket, SetDifficultyPacket, DimensionDataPacket, CameraInstructionsPacket, ResourcePackChunkDataPacket, TrimDataPacket, ShowCreditsPacket, CameraPresetsPacket, ResourcePackChunkRequestPacket, UnlockedRecipesPacket, TransferPacket, PlaySoundPacket, SetTitlePacket, PlayerSkinPacket, NpcRequestPacket, OpenSignPacket, CameraShakePacket, PlayerFogPacket, ModalFormRequestPacket, ModalFormResponsePacket, ServerSettingsResponsePacket, ShowProfilePacket, RemoveObjectivePacket, SetDisplayObjectivePacket, SetScorePacket, MoveActorDeltaPacket, SetScoreboardIdentityPacket, NetworkStackLatencyPacket, AvailableActorIdentifiersPacket, SpawnParticleEffectPacket, SetLocalPlayerAsInitializedPacket, NetworkChunkPublisherUpdatePacket, BiomeDefinitionListPacket, LevelSoundEventPacket, LevelEventGenericPacket, OnScreenTextureAnimationPacket, StopSoundPacket, EmotePacket, NetworkSettingsPacket, PlayerAuthInputPacket, CreativeContentPacket, PlayerEnchantOptionsPacket, SyncActorPropertyPacket, ItemStackRequestPacket, ItemStackResponsePacket, EmoteListPacket, DebugInfoPacket, PacketViolationWarningPacket, AnimateEntityPacket, CorrectPlayerMovePredictionPacket, ClientBoundMapItemDataPacket, MapInfoRequestPacket, ItemRegistryPacket, ClientBoundDebugRendererPacket, UpdateTradePacket, NpcDialoguePacket, ScriptMessagePacket, RequestPermissionsPacket, ToastRequestPacket, UpdateAbilitiesPacket, UpdateAdventureSettingsPacket, DeathInfoPacket, RequestNetworkSettingsPacket, SetPlayerInventoryOptionsPacket, SetHudPacket, AwardAchievementPacket, ClientboundCloseFormPacket, ServerboundLoadingScreenPacketPacket, UpdateClientInputLocksPacket, CurrectStructureFeaturePacket, ServerboundDiagnosticsPacket, MovementEffectPacket, DimensionType, Vector3f, GameRule, ActorFlag, AbilityIndex, MaterialRenderMethod, NetworkBlockTypeDefinition, WearableSlot, CreativeItemCategory, CreativeItemGroup, NetworkItemInstanceDescriptor, ContainerType, ContainerId, ItemUseMethod, NetworkItemStackDescriptor, Enchantment, BlockPosition, BlockFace, IPosition, ScoreboardIdentityType, ObjectiveSortOrder, DisplaySlotType, ModalFormType, BossEventColor, ActorDataId, DataItem, AttributeName, Attribute, DeviceOS, MemoryTier, InputMode, InteractionMode, PlayMode, HudElement, SerializedSkin, Gamemode, DisconnectReason, ContainerName, CommandPermissionLevel, ActorDamageCause, ChunkCoords, EffectType, EquipmentSlot, Rotation, Color, UpdateBlockLayerType, CompressionMethod, PackType, InventoryAction, ItemUseInventoryTransaction, ItemUseOnEntityInventoryTransaction, LoginTokens, LoginTokenData, InputData, PlayerBlockActionData, ItemStackRequestActionMineBlock } from '@serenityjs/protocol';
5
5
  import { BinaryStream } from '@serenityjs/binarystream';
6
6
  import { CompoundTag, TagType, StringTag, IntTag, LongTag, ByteTag, Tag, ListTag, ShortTag } from '@serenityjs/nbt';
7
7
  import { Worker as Worker$1 } from 'node:worker_threads';
@@ -3191,7 +3191,7 @@ interface NetworkEvents {
3191
3191
  NetworkPacketEvent<ClientBoundMapItemDataPacket>
3192
3192
  ];
3193
3193
  [Packet.MapInfoRequest]: [NetworkPacketEvent<MapInfoRequestPacket>];
3194
- [Packet.ItemComponent]: [NetworkPacketEvent<ItemComponentPacket>];
3194
+ [Packet.ItemRegistry]: [NetworkPacketEvent<ItemRegistryPacket>];
3195
3195
  [Packet.ClientBoundDebugRenderer]: [
3196
3196
  NetworkPacketEvent<ClientBoundDebugRendererPacket>
3197
3197
  ];
@@ -7268,9 +7268,9 @@ interface EntityEntry extends JSONLikeObject {
7268
7268
  */
7269
7269
  rotation: [number, number, number];
7270
7270
  /**
7271
- * The components attached to the entity.
7271
+ * The dynamic properties attached to the entity.
7272
7272
  */
7273
- components: Array<[string, JSONLikeValue]>;
7273
+ dynamicProperties: Array<[string, JSONLikeValue]>;
7274
7274
  /**
7275
7275
  * The traits attached to the entity.
7276
7276
  */
@@ -7322,21 +7322,21 @@ interface ItemStackEntry extends JSONLikeObject {
7322
7322
  */
7323
7323
  amount: number;
7324
7324
  /**
7325
- * The auxillary data of the item stack.
7325
+ * The metadata value of the item stack.
7326
7326
  */
7327
- auxillary: number;
7327
+ metadata: number;
7328
7328
  /**
7329
7329
  * The traits attached to the item stack.
7330
7330
  */
7331
7331
  traits: Array<string>;
7332
7332
  /**
7333
- * The components attached to the item stack.
7333
+ * The dynamic properties attached to the item stack.
7334
7334
  */
7335
- components: Array<[string, JSONLikeValue]>;
7335
+ dynamicProperties: Array<[string, JSONLikeValue]>;
7336
7336
  /**
7337
7337
  * The nbt data serialized as a base64 string.
7338
7338
  */
7339
- nbt: string;
7339
+ nbtProperties: string;
7340
7340
  }
7341
7341
  interface BlockEntry extends JSONLikeObject {
7342
7342
  /**
@@ -7356,9 +7356,9 @@ interface BlockEntry extends JSONLikeObject {
7356
7356
  */
7357
7357
  traits: Array<string>;
7358
7358
  /**
7359
- * The components attached to the block.
7359
+ * The dynamic properties attached to the block.
7360
7360
  */
7361
- components: Array<[string, JSONLikeValue]>;
7361
+ dynamicProperties: Array<[string, JSONLikeValue]>;
7362
7362
  }
7363
7363
 
7364
7364
  type ComponentRecord<T> = T & {
@@ -7627,7 +7627,7 @@ declare class BlockPermutation<T extends keyof BlockState = keyof BlockState> {
7627
7627
  /**
7628
7628
  * The network hash of the block permutation.
7629
7629
  */
7630
- readonly network: number;
7630
+ readonly networkId: number;
7631
7631
  /**
7632
7632
  * The index value of the block permutation in the block type.
7633
7633
  */
@@ -7642,22 +7642,27 @@ declare class BlockPermutation<T extends keyof BlockState = keyof BlockState> {
7642
7642
  readonly type: BlockType<T>;
7643
7643
  /**
7644
7644
  * The Molang conditional query of the block permutation.
7645
- * This is used on the client end to determine the block state and properties.
7645
+ * This is used on the client end to determine the block state and components.
7646
7646
  */
7647
7647
  readonly query: string;
7648
7648
  /**
7649
- * The vanilla properties of the block permutation. (hardness, friction, lighting, etc.s)
7650
- * This properties are active on the client end when the query condition is met.
7651
- * These properties will override any global properties of the block type.
7649
+ * The vanilla components of the block permutation. (hardness, friction, lighting, etc.s)
7650
+ * This components are active on the client end when the query condition is met.
7651
+ * These components will override any global components of the block type.
7652
+ */
7653
+ readonly components: BlockTypeComponentCollection;
7654
+ /**
7655
+ * Whether the block permutation is component based.
7656
+ * This is determined by the presence of any components in the block permutation.
7652
7657
  */
7653
- readonly properties: BlockPropertyCollection;
7658
+ get isComponentBased(): boolean;
7654
7659
  /**
7655
7660
  * Create a new block permutation.
7656
7661
  * @param network The network hash of the block permutation.
7657
7662
  * @param state The state of the block permutation.
7658
7663
  * @param type The block type of the block permutation.
7659
7664
  */
7660
- constructor(network: number, state: BlockState[T], type: BlockType<T>);
7665
+ constructor(networkId: number, state: BlockState[T], type: BlockType<T>);
7661
7666
  /**
7662
7667
  * Check if the block permutation matches the identifier and state.
7663
7668
  * @param identifier The block identifier to match.
@@ -7676,7 +7681,7 @@ declare class BlockPermutation<T extends keyof BlockState = keyof BlockState> {
7676
7681
  * @param type The block type of the block permutation.
7677
7682
  * @param state The state of the block permutation.
7678
7683
  */
7679
- static create(type: BlockType, state?: GenericBlockState, properties?: Partial<BlockPropertyCollection>): BlockPermutation;
7684
+ static create(type: BlockType, state?: GenericBlockState, components?: Partial<BlockTypeComponentCollection>): BlockPermutation;
7680
7685
  static toNbt(permutation: BlockPermutation): CompoundTag<unknown>;
7681
7686
  static fromNbt(nbt: CompoundTag<unknown>): BlockPermutation;
7682
7687
  protected static getTagType(value: unknown): TagType;
@@ -7684,27 +7689,27 @@ declare class BlockPermutation<T extends keyof BlockState = keyof BlockState> {
7684
7689
  static hash(identifier: string, state: GenericBlockState): number;
7685
7690
  }
7686
7691
 
7687
- declare class BlockProperty {
7692
+ declare class BlockTypeComponent {
7688
7693
  /**
7689
- * The component of the permutation property.
7694
+ * The component identifier of the block type.
7690
7695
  */
7691
- static readonly component: string;
7696
+ static readonly identifier: string;
7692
7697
  /**
7693
- * The component of the permutation property.
7698
+ * The component identifier of the block type.
7694
7699
  */
7695
- readonly component: string;
7700
+ readonly identifier: string;
7696
7701
  /**
7697
- * The properties of the permutation.
7702
+ * The properties collection of the block type.
7698
7703
  */
7699
- readonly properties: BlockPropertyCollection;
7704
+ readonly collection: BlockTypeComponentCollection;
7700
7705
  /**
7701
- * The block type of the permutation.
7706
+ * The block type of the component.
7702
7707
  */
7703
7708
  readonly type: BlockType;
7704
7709
  /**
7705
- * The property value of the permutation.
7710
+ * The component value of the block type.
7706
7711
  */
7707
- protected get property(): CompoundTag<unknown>;
7712
+ protected get component(): CompoundTag<unknown>;
7708
7713
  /**
7709
7714
  * Creates a new permutation property.
7710
7715
  * @param permutation The permutation of that this property will be attached to.
@@ -7712,8 +7717,8 @@ declare class BlockProperty {
7712
7717
  constructor(block: BlockType | BlockPermutation, ..._args: Array<unknown>);
7713
7718
  }
7714
7719
 
7715
- declare class BlockLightEmissionProperty extends BlockProperty {
7716
- static readonly component = "minecraft:light_emission";
7720
+ declare class BlockTypeLightEmissionComponent extends BlockTypeComponent {
7721
+ static readonly identifier = "minecraft:light_emission";
7717
7722
  /**
7718
7723
  * The amount of light that the block property will emit.
7719
7724
  */
@@ -7751,8 +7756,8 @@ interface MaterialInstanceProperties {
7751
7756
  /**
7752
7757
  * Refrence the wiki for more information: https://wiki.bedrock.dev/blocks/block-components.html#material-instances
7753
7758
  */
7754
- declare class BlockMaterialInstancesProperty extends BlockProperty {
7755
- static readonly component = "minecraft:material_instances";
7759
+ declare class BlockTypeMaterialInstancesComponent extends BlockTypeComponent {
7760
+ static readonly identifier = "minecraft:material_instances";
7756
7761
  /**
7757
7762
  * The material instances of the block.
7758
7763
  */
@@ -7775,16 +7780,16 @@ declare class BlockMaterialInstancesProperty extends BlockProperty {
7775
7780
  removeMaterialInstance(key: string): void;
7776
7781
  }
7777
7782
 
7778
- declare class BlockGeometryProperty extends BlockProperty {
7779
- static readonly component = "minecraft:geometry";
7783
+ declare class BlockTypeGeometryComponent extends BlockTypeComponent {
7784
+ static readonly identifier = "minecraft:geometry";
7780
7785
  /**
7781
7786
  * The identifier of the geometry model.
7782
7787
  */
7783
- set identifier(geometry: string);
7788
+ set model(geometry: string);
7784
7789
  /**
7785
7790
  * The identifier of the geometry model.
7786
7791
  */
7787
- get identifier(): string;
7792
+ get model(): string;
7788
7793
  /**
7789
7794
  * The culling of the geometry model.
7790
7795
  */
@@ -7798,11 +7803,11 @@ declare class BlockGeometryProperty extends BlockProperty {
7798
7803
  * @param block The block definition that this property will be attached to.
7799
7804
  * @param properties The properties of the geometry.
7800
7805
  */
7801
- constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockGeometryProperty>);
7806
+ constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockTypeGeometryComponent>);
7802
7807
  }
7803
7808
 
7804
- declare class BlockInteractableProperty extends BlockProperty {
7805
- static readonly component = "minecraft:custom_components";
7809
+ declare class BlockTypeInteractableComponent extends BlockTypeComponent {
7810
+ static readonly identifier = "minecraft:custom_components";
7806
7811
  /**
7807
7812
  * Create a new interactable property for a block definition.
7808
7813
  * @param block The block definition that this property will be attached to.
@@ -7810,8 +7815,8 @@ declare class BlockInteractableProperty extends BlockProperty {
7810
7815
  constructor(block: BlockType | BlockPermutation);
7811
7816
  }
7812
7817
 
7813
- declare class BlockHardnessProperty extends BlockProperty {
7814
- static readonly component = "minecraft:destructible_by_mining";
7818
+ declare class BlockTypeHardnessComponent extends BlockTypeComponent {
7819
+ static readonly identifier = "minecraft:destructible_by_mining";
7815
7820
  /**
7816
7821
  * The hardness of the block property.
7817
7822
  */
@@ -7828,8 +7833,8 @@ declare class BlockHardnessProperty extends BlockProperty {
7828
7833
  constructor(block: BlockType | BlockPermutation, hardness?: number);
7829
7834
  }
7830
7835
 
7831
- declare class BlockFrictionProperty extends BlockProperty {
7832
- static readonly component = "minecraft:friction";
7836
+ declare class BlockTypeFrictionComponent extends BlockTypeComponent {
7837
+ static readonly identifier = "minecraft:friction";
7833
7838
  /**
7834
7839
  * The friction of the block property.
7835
7840
  */
@@ -7846,8 +7851,8 @@ declare class BlockFrictionProperty extends BlockProperty {
7846
7851
  constructor(block: BlockType | BlockPermutation, friction?: number);
7847
7852
  }
7848
7853
 
7849
- declare class BlockCollisionBoxProperty extends BlockProperty {
7850
- static readonly component = "minecraft:collision_box";
7854
+ declare class BlockTypeCollisionBoxComponent extends BlockTypeComponent {
7855
+ static readonly identifier = "minecraft:collision_box";
7851
7856
  /**
7852
7857
  * The start position of the collision box in the block space
7853
7858
  * Default is [0, 0, 0]
@@ -7873,11 +7878,11 @@ declare class BlockCollisionBoxProperty extends BlockProperty {
7873
7878
  * @param block The block type or permutation
7874
7879
  * @param properties The collision box properties
7875
7880
  */
7876
- constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockCollisionBoxProperty>);
7881
+ constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockTypeCollisionBoxComponent>);
7877
7882
  }
7878
7883
 
7879
- declare class BlockSelectionBoxProperty extends BlockProperty {
7880
- static readonly component = "minecraft:selection_box";
7884
+ declare class BlockTypeSelectionBoxComponent extends BlockTypeComponent {
7885
+ static readonly identifier = "minecraft:selection_box";
7881
7886
  /**
7882
7887
  * The start position of the selection box in the block space
7883
7888
  * Default is [0, 0, 0]
@@ -7903,21 +7908,21 @@ declare class BlockSelectionBoxProperty extends BlockProperty {
7903
7908
  * @param block The block type or permutation
7904
7909
  * @param properties The selection box properties
7905
7910
  */
7906
- constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockSelectionBoxProperty>);
7911
+ constructor(block: BlockType | BlockPermutation, properties?: Partial<BlockTypeSelectionBoxComponent>);
7907
7912
  }
7908
7913
 
7909
- declare class BlockPropertyCollection extends CompoundTag<unknown> {
7914
+ declare class BlockTypeComponentCollection extends CompoundTag<unknown> {
7910
7915
  /**
7911
7916
  * The type of block that the properties are for.
7912
7917
  */
7913
7918
  protected readonly block: BlockType;
7914
7919
  /**
7915
- * The properties of the block.
7920
+ * The component definitions of the block type.
7916
7921
  */
7917
- readonly properties: Map<string, BlockProperty>;
7922
+ readonly entries: Map<string, BlockTypeComponent>;
7918
7923
  /**
7919
7924
  * Create a new block property collection.
7920
- * @param block
7925
+ * @param block The block type that the properties are for.
7921
7926
  */
7922
7927
  constructor(block: BlockType | BlockPermutation);
7923
7928
  /**
@@ -7925,24 +7930,24 @@ declare class BlockPropertyCollection extends CompoundTag<unknown> {
7925
7930
  * @param property The property to get.
7926
7931
  * @returns The property instance.
7927
7932
  */
7928
- get<T extends typeof BlockProperty>(property: T): InstanceType<T> | undefined;
7933
+ get<T extends typeof BlockTypeComponent>(property: T): InstanceType<T> | undefined;
7929
7934
  /**
7930
7935
  * Checks if the block has a property.
7931
7936
  * @param property The property to check.
7932
7937
  * @returns True if the block has the property, false otherwise.
7933
7938
  */
7934
- has<T extends typeof BlockProperty>(property: T): boolean;
7939
+ has<T extends typeof BlockTypeComponent>(property: T): boolean;
7935
7940
  /**
7936
7941
  * Adds a new property to the block.
7937
7942
  * @param property The property to add.
7938
7943
  * @returns The property instance.
7939
7944
  */
7940
- add<T extends typeof BlockProperty, A extends ConstructorParameters<T>[1]>(property: T, ...args: [A]): InstanceType<T>;
7945
+ add<T extends typeof BlockTypeComponent, A extends ConstructorParameters<T>[1]>(property: T, ...args: [A]): InstanceType<T>;
7941
7946
  /**
7942
7947
  * Removes a property from the block.
7943
7948
  * @param property The property to remove.
7944
7949
  */
7945
- remove<T extends typeof BlockProperty>(property: T): void;
7950
+ remove<T extends typeof BlockTypeComponent>(property: T): void;
7946
7951
  get hardness(): number;
7947
7952
  set hardness(value: number);
7948
7953
  get friction(): number;
@@ -7972,10 +7977,6 @@ declare class BlockType<T extends keyof BlockState = keyof BlockState> {
7972
7977
  * The identifier of the block type.
7973
7978
  */
7974
7979
  readonly identifier: T;
7975
- /**
7976
- * Whether the block type is custom.
7977
- */
7978
- readonly custom: boolean;
7979
7980
  /**
7980
7981
  * Whether the block type is loggable.
7981
7982
  */
@@ -7992,10 +7993,6 @@ declare class BlockType<T extends keyof BlockState = keyof BlockState> {
7992
7993
  * Whether the block type is solid.
7993
7994
  */
7994
7995
  readonly solid: boolean;
7995
- /**
7996
- * The default components of the block type.
7997
- */
7998
- readonly components: Array<string>;
7999
7996
  /**
8000
7997
  * The default tags of the block type.
8001
7998
  */
@@ -8009,15 +8006,21 @@ declare class BlockType<T extends keyof BlockState = keyof BlockState> {
8009
8006
  */
8010
8007
  readonly permutations: Array<BlockPermutation>;
8011
8008
  /**
8012
- * The vanilla properties of the block permutation. (hardness, friction, lighting, etc.)
8013
- * This properties are active on the client end when the query condition is met.
8014
- * These properties will be used gobally for all permutations, unless a permutation has a different value.
8009
+ * The nbt properties definition of the block type.
8010
+ * This contains the vanilla component definitions.
8011
+ */
8012
+ readonly properties: BlockTypeDefinition;
8013
+ /**
8014
+ * The vanilla components of the block permutation. (hardness, friction, lighting, etc.)
8015
+ * These components are active on the client-end when the query condition is met.
8016
+ * These components will be used gobally for all permutations, unless a permutation has a definition that overrides it.
8015
8017
  */
8016
- readonly properties: BlockPropertyCollection;
8018
+ get components(): BlockTypeComponentCollection;
8017
8019
  /**
8018
- * The NBT data of the custom block type.
8020
+ * Whether the block type is component based.
8021
+ * This is determined by the presence of any components in the block type.
8019
8022
  */
8020
- readonly nbt: CompoundTag<Partial<CustomBlockTypeVanillaNbt>>;
8023
+ get isComponentBased(): boolean;
8021
8024
  /**
8022
8025
  * Create a new block type.
8023
8026
  * @param identifier The identifier of the block type.
@@ -8029,7 +8032,6 @@ declare class BlockType<T extends keyof BlockState = keyof BlockState> {
8029
8032
  * @param state The state of the block type.
8030
8033
  */
8031
8034
  getPermutation(state?: BlockState[T]): BlockPermutation<T>;
8032
- isCustom(): this is CustomBlockType;
8033
8035
  /**
8034
8036
  * Gets the network definition of the block type, which is used to send the block type to the client.
8035
8037
  * @returns The network block type definition.
@@ -8047,10 +8049,6 @@ declare class BlockType<T extends keyof BlockState = keyof BlockState> {
8047
8049
 
8048
8050
  declare class CustomBlockType extends BlockType {
8049
8051
  protected static networkId: number;
8050
- /**
8051
- * Indicates that the block type is custom.
8052
- */
8053
- readonly custom = true;
8054
8052
  /**
8055
8053
  * The network ID of the custom block type.
8056
8054
  */
@@ -8064,10 +8062,10 @@ declare class CustomBlockType extends BlockType {
8064
8062
  /**
8065
8063
  * Creates a new block permutation for the block type.
8066
8064
  * @param state The state of the block. `{ [key: string]: string | number | boolean }`
8067
- * @param properties The properties of the block permutation.
8065
+ * @param components The components of the block permutation.
8068
8066
  * @returns The block permutation that was created using the state definition.
8069
8067
  */
8070
- createPermutation(state: GenericBlockState, properties?: Partial<BlockPropertyCollection>): BlockPermutation;
8068
+ createPermutation(state: GenericBlockState, components?: Partial<BlockTypeComponentCollection>): BlockPermutation;
8071
8069
  }
8072
8070
 
8073
8071
  declare class Trait {
@@ -8108,8 +8106,249 @@ declare class Trait {
8108
8106
  clone(..._arguments: Array<unknown>): Trait;
8109
8107
  }
8110
8108
 
8111
- declare class ItemTypeVanillaProperties extends CompoundTag<unknown> {
8112
- constructor();
8109
+ declare class ItemTypeComponent {
8110
+ /**
8111
+ * The component identifier of the item type.
8112
+ */
8113
+ static readonly identifier: string;
8114
+ /**
8115
+ * The component identifier of the item type.
8116
+ */
8117
+ readonly identifier: string;
8118
+ /**
8119
+ * The component collection of the item type.
8120
+ */
8121
+ protected readonly collection: ItemTypeComponentCollection;
8122
+ /**
8123
+ * The item type of the component.
8124
+ */
8125
+ protected readonly type: ItemType;
8126
+ /**
8127
+ * The component value of the item type.
8128
+ */
8129
+ protected get component(): CompoundTag<unknown>;
8130
+ /**
8131
+ * Create a new item type component definition.
8132
+ * @param type The item type of the component.
8133
+ * @param args Additional arguments for the component.
8134
+ * @returns The item type component definition.
8135
+ */
8136
+ constructor(type: ItemType, ..._args: Array<unknown>);
8137
+ }
8138
+
8139
+ declare class ItemTypeCanDestroyInCreativeComponent extends ItemTypeComponent {
8140
+ static readonly identifier = "minecraft:can_destroy_in_creative";
8141
+ /**
8142
+ * Whether the item type can destroy blocks in creative mode.
8143
+ */
8144
+ get value(): boolean;
8145
+ /**
8146
+ * Whether the item type can destroy blocks in creative mode.
8147
+ */
8148
+ set value(value: boolean);
8149
+ /**
8150
+ * Create a new can destroy in creative component for an item type.
8151
+ * @param type The item type that the component will be attached to.
8152
+ * @param value Whether the item type can destroy blocks in creative mode.
8153
+ * @returns A new can destroy in creative component.
8154
+ */
8155
+ constructor(type: ItemType, value: boolean);
8156
+ }
8157
+
8158
+ declare class ItemTypeDisplayNameComponent extends ItemTypeComponent {
8159
+ static readonly identifier = "minecraft:display_name";
8160
+ /**
8161
+ * The display name of the item type.
8162
+ */
8163
+ get value(): string;
8164
+ /**
8165
+ * The display name of the item type.
8166
+ */
8167
+ set value(value: string);
8168
+ /**
8169
+ * Create a new display name component for an item type.
8170
+ * @param type The item type that the component will be attached to.
8171
+ * @param value The display name of the item type.
8172
+ */
8173
+ constructor(type: ItemType, value?: string);
8174
+ }
8175
+
8176
+ declare class ItemTypeBlockPlacerComponent extends ItemTypeComponent {
8177
+ static readonly identifier = "minecraft:block_placer";
8178
+ /**
8179
+ * The block type that the item type will place when used.
8180
+ */
8181
+ get blockIdentifier(): BlockIdentifier | string;
8182
+ /**
8183
+ * Whether the block image should be used as the item icon.
8184
+ */
8185
+ get useBlockAsIcon(): boolean;
8186
+ /**
8187
+ * Whether the block image should be used as the item icon.
8188
+ */
8189
+ set useBlockAsIcon(value: boolean);
8190
+ /**
8191
+ * The block types that the item type can be used on.
8192
+ * If the query is empty, the item can be used on any block.
8193
+ */
8194
+ get useOn(): Array<BlockIdentifier | string>;
8195
+ /**
8196
+ * The block types that the item type can be used on.
8197
+ * If the query is empty, the item can be used on any block.
8198
+ */
8199
+ set useOn(value: Array<BlockIdentifier | string>);
8200
+ /**
8201
+ * Create a new block placer component for an item type.
8202
+ * @param type The item type that the component will be attached to.
8203
+ * @param properties The properties of the block placer component.
8204
+ */
8205
+ constructor(type: ItemType, properties?: ItemTypeBlockPlacerComponentInterface);
8206
+ }
8207
+
8208
+ declare class ItemTypeWearableComponent extends ItemTypeComponent {
8209
+ static readonly identifier = "minecraft:wearable";
8210
+ /**
8211
+ * The amount of protection that the wearable item provides.
8212
+ */
8213
+ get protection(): number;
8214
+ /**
8215
+ * The amount of protection that the wearable item provides.
8216
+ */
8217
+ set protection(value: number);
8218
+ /**
8219
+ * The slot that the wearable item can be equipped in.
8220
+ */
8221
+ get slot(): WearableSlot;
8222
+ /**
8223
+ * The slot that the wearable item can be equipped in.
8224
+ */
8225
+ set slot(value: WearableSlot);
8226
+ }
8227
+
8228
+ declare class ItemTypeMaxStackComponent extends ItemTypeComponent {
8229
+ static readonly identifier = "minecraft:max_stack_size";
8230
+ /**
8231
+ * The maximum stack size of the item type.
8232
+ */
8233
+ get value(): number;
8234
+ /**
8235
+ * The maximum stack size of the item type.
8236
+ */
8237
+ set value(value: number);
8238
+ /**
8239
+ * Create a new max stack size component for an item type.
8240
+ * @param type The item type that the component will be attached to.
8241
+ * @param value The maximum stack size of the item type.
8242
+ * @returns A new max stack size component.
8243
+ */
8244
+ constructor(type: ItemType, value?: number);
8245
+ }
8246
+
8247
+ declare class ItemTypeIconComponent extends ItemTypeComponent {
8248
+ static readonly identifier = "minecraft:icon";
8249
+ /**
8250
+ * The default texture of the item.
8251
+ */
8252
+ get value(): string;
8253
+ /**
8254
+ * The default texture of the item.
8255
+ */
8256
+ set value(value: string);
8257
+ /**
8258
+ * Creates a new icon component.
8259
+ * @param type The type of the item.
8260
+ */
8261
+ constructor(type: ItemType);
8262
+ }
8263
+
8264
+ declare class ItemTypeItemPropertiesComponent extends ItemTypeComponent {
8265
+ static readonly identifier = "item_properties";
8266
+ get component(): CompoundTag<unknown>;
8267
+ }
8268
+
8269
+ declare class ItemTypeComponentCollection extends CompoundTag<unknown> {
8270
+ /**
8271
+ * The type of item that the components are for.
8272
+ */
8273
+ protected readonly item: ItemType;
8274
+ /**
8275
+ * The component definitions of the item type.
8276
+ */
8277
+ readonly entries: Map<string, ItemTypeComponent>;
8278
+ /**
8279
+ * Create a new item component collection.
8280
+ * @param item The item type that the components are for.
8281
+ */
8282
+ constructor(item: ItemType);
8283
+ /**
8284
+ * Gets the component from the item type.
8285
+ * @param component The identifier of the component.
8286
+ * @returns The component instance.
8287
+ */
8288
+ get<T extends typeof ItemTypeComponent>(component: T): InstanceType<T>;
8289
+ /**
8290
+ * Checks if the item type has a component.
8291
+ * @param component The component to check.
8292
+ * @returns True if the item type has the component, false otherwise.
8293
+ */
8294
+ has<T extends typeof ItemTypeComponent>(component: T): boolean;
8295
+ /**
8296
+ * Adds a new component to the item type.
8297
+ * @param component The component to add.
8298
+ * @param args Additional arguments for the component.
8299
+ * @returns The component instance.
8300
+ */
8301
+ add<T extends typeof ItemTypeComponent, A extends ConstructorParameters<T>[1]>(component: T, ...args: [A]): InstanceType<T>;
8302
+ /**
8303
+ * Removes a component from the item type.
8304
+ * @param component The component to remove.
8305
+ */
8306
+ remove<T extends typeof ItemTypeComponent>(component: T): void;
8307
+ /**
8308
+ * Get all the components of the item type.
8309
+ * @returns All the components of the item type.
8310
+ */
8311
+ getAll(): Array<ItemTypeComponent>;
8312
+ /**
8313
+ * The max stack size component of the item type.
8314
+ */
8315
+ get maxStackSize(): number;
8316
+ /**
8317
+ * The max stack size component of the item type.
8318
+ */
8319
+ set maxStackSize(value: number);
8320
+ /**
8321
+ * The block placer component of the item type.
8322
+ */
8323
+ get blockPlacer(): ItemTypeBlockPlacerComponent;
8324
+ /**
8325
+ * The display name component of the item type.
8326
+ */
8327
+ get displayName(): string;
8328
+ /**
8329
+ * The display name component of the item type.
8330
+ */
8331
+ set displayName(value: string);
8332
+ /**
8333
+ * Whether the item type can destroy blocks in creative mode.
8334
+ */
8335
+ get canDestroyInCreative(): boolean;
8336
+ /**
8337
+ * Whether the item type can destroy blocks in creative mode.
8338
+ */
8339
+ set canDestroyInCreative(value: boolean);
8340
+ /**
8341
+ * The wearable component of the item type.
8342
+ */
8343
+ get wearable(): ItemTypeWearableComponent;
8344
+ /**
8345
+ * The icon component of the item type.
8346
+ */
8347
+ get icon(): string;
8348
+ /**
8349
+ * The icon component of the item type.
8350
+ */
8351
+ set icon(value: string);
8113
8352
  }
8114
8353
 
8115
8354
  declare class ItemType<T extends keyof Items = keyof Items> {
@@ -8126,13 +8365,13 @@ declare class ItemType<T extends keyof Items = keyof Items> {
8126
8365
  */
8127
8366
  readonly network: number;
8128
8367
  /**
8129
- * Whether the item type is stackable.
8368
+ * The version of the item type.
8130
8369
  */
8131
- readonly stackable: boolean;
8370
+ readonly version: number;
8132
8371
  /**
8133
- * The maximum stack size of the item type.
8372
+ * The block type of the item type.
8134
8373
  */
8135
- readonly maxAmount: number;
8374
+ readonly blockType: BlockType | null;
8136
8375
  /**
8137
8376
  * The tool type of the item type.
8138
8377
  */
@@ -8145,12 +8384,29 @@ declare class ItemType<T extends keyof Items = keyof Items> {
8145
8384
  * The tags of the item type.
8146
8385
  */
8147
8386
  readonly tags: Array<string>;
8148
- readonly nbt: CompoundTag<unknown>;
8149
- readonly properties: ItemTypeVanillaProperties;
8150
8387
  /**
8151
- * The block of the item type, if applicable.
8388
+ * The nbt properties definition of the item type.
8389
+ * This contains the vanilla component definitions.
8390
+ */
8391
+ readonly properties: CompoundTag<unknown>;
8392
+ /**
8393
+ * Whether the item type is component based.
8152
8394
  */
8153
- readonly block: Items[T];
8395
+ readonly isComponentBased: boolean;
8396
+ creativeCategory: CreativeItemCategory;
8397
+ creativeGroup: CreativeItemGroup | string;
8398
+ /**
8399
+ * The maximum stack size of the item type.
8400
+ */
8401
+ get maxAmount(): number;
8402
+ /**
8403
+ * Whether the item type is stackable.
8404
+ */
8405
+ get isStackable(): boolean;
8406
+ /**
8407
+ * The vanilla components of the item type.
8408
+ */
8409
+ get components(): ItemTypeComponentCollection;
8154
8410
  /**
8155
8411
  * Create a new item type.
8156
8412
  * @param identifier The identifier of the item type.
@@ -8182,51 +8438,80 @@ declare class ItemType<T extends keyof Items = keyof Items> {
8182
8438
  */
8183
8439
  static resolve(type: BlockType): ItemType | null;
8184
8440
  /**
8185
- * Convert the item type to item data, this is used for the protocol.
8441
+ * Convert the item type to a network instance.
8186
8442
  * @param type The item type to convert.
8443
+ * @param stackSize The stack size of the item type, default 1.
8444
+ * @param nbt The NBT of the item type, default null.
8445
+ * @returns
8187
8446
  */
8188
- static toItemData(type: ItemType): ItemData;
8189
- static toNetworkInstance(type: ItemType, stackSize?: number): NetworkItemInstanceDescriptor;
8447
+ static toNetworkInstance(type: ItemType, stackSize?: number, nbt?: CompoundTag<unknown> | null): NetworkItemInstanceDescriptor;
8190
8448
  }
8191
8449
 
8192
- declare class CreativeItem {
8450
+ declare class CustomItemType extends ItemType {
8451
+ protected static networkId: number;
8452
+ constructor(identifier: string, properties?: Partial<ItemTypeProperties>);
8453
+ }
8454
+
8455
+ declare class CreativeItemDescriptor {
8193
8456
  /**
8194
- * A collective map of creative items registered.
8457
+ * The item type of the descriptor.
8195
8458
  */
8196
- static readonly items: Map<number, CreativeItem>;
8459
+ readonly type: ItemType;
8197
8460
  /**
8198
- * The type of the creative item.
8461
+ * The network item instance descriptor.
8199
8462
  */
8200
- readonly type: ItemType;
8463
+ readonly descriptor: NetworkItemInstanceDescriptor;
8201
8464
  /**
8202
- * The metadata of the creative item.
8465
+ * Creates a new creative item descriptor.
8466
+ * @param type The item type of the descriptor.
8467
+ * @param descriptor The network item instance descriptor.
8203
8468
  */
8204
- readonly metadata: number;
8469
+ constructor(type: ItemType, descriptor?: NetworkItemInstanceDescriptor);
8470
+ }
8471
+
8472
+ declare class CreateContentGroup {
8205
8473
  /**
8206
- * The NBT of the creative item.
8474
+ * A collective registry of all creative groups.
8207
8475
  */
8208
- readonly nbt: CompoundTag<unknown>;
8476
+ static readonly groups: Map<number, CreateContentGroup>;
8209
8477
  /**
8210
- * Create a new creative item.
8211
- * @param type The type of the creative item.
8212
- * @param metadata The metadata of the creative item.
8478
+ * The identifier of the creative group.
8213
8479
  */
8214
- constructor(type: ItemType, metadata: number, nbt?: CompoundTag<unknown>);
8480
+ readonly identifier: string;
8215
8481
  /**
8216
- * Register a new creative item.
8217
- * @param type The type of the creative item.
8218
- * @param metadata The metadata of the creative item.
8482
+ * The type of the creative group.
8219
8483
  */
8220
- static register(type: ItemType, metadata: number): void;
8221
- }
8222
-
8223
- declare class CustomItemType extends ItemType {
8224
- protected static networkId: number;
8484
+ readonly category: CreativeItemCategory;
8225
8485
  /**
8226
- * Indicates that the item type is custom.
8486
+ * The icon item type of the creative group.
8227
8487
  */
8228
- readonly custom = true;
8229
- constructor(identifier: string, properties?: Partial<ItemTypeProperties>);
8488
+ readonly icon: ItemType;
8489
+ /**
8490
+ * The items of the creative group.
8491
+ */
8492
+ readonly items: Set<CreativeItemDescriptor>;
8493
+ /**
8494
+ * Creates a new creative group.
8495
+ * @param properties The properties of the creative group.
8496
+ */
8497
+ constructor(properties?: Partial<CreateContentGroup>);
8498
+ /**
8499
+ * Checks if the creative group has an item.
8500
+ * @param item The item to check.
8501
+ * @returns True if the creative group has the item, false otherwise.
8502
+ */
8503
+ hasItem(item: ItemType): boolean;
8504
+ /**
8505
+ * Registers an item to the creative group.
8506
+ * @param item The item to register.
8507
+ * @param descriptor The network item instance descriptor, if applicable.
8508
+ */
8509
+ registerItem(type: ItemType, descriptor?: NetworkItemInstanceDescriptor): CreativeItemDescriptor;
8510
+ /**
8511
+ * Unregisters an item from the creative group.
8512
+ * @param item The item to unregister.
8513
+ */
8514
+ unregisterItem(item: CreativeItemDescriptor | ItemType): void;
8230
8515
  }
8231
8516
 
8232
8517
  /**
@@ -8339,6 +8624,11 @@ declare class Container {
8339
8624
  close(player: Player): void;
8340
8625
  }
8341
8626
 
8627
+ /**
8628
+ * The default item stack properties.
8629
+ */
8630
+ declare const DefaultItemStackProperties: ItemStackProperties;
8631
+
8342
8632
  declare class ItemStackNbtMap extends Map<string, Tag> {
8343
8633
  /**
8344
8634
  * The item stack that the nbt map is attached to.
@@ -8369,7 +8659,6 @@ declare class ItemStackNbtMap extends Map<string, Tag> {
8369
8659
  protected update(): void;
8370
8660
  }
8371
8661
 
8372
- declare const DefaultItemStackProperties: ItemStackProperties;
8373
8662
  declare class ItemStack<T extends keyof Items = keyof Items> {
8374
8663
  /**
8375
8664
  * The type of the item stack.
@@ -8380,9 +8669,9 @@ declare class ItemStack<T extends keyof Items = keyof Items> {
8380
8669
  */
8381
8670
  readonly identifier: T;
8382
8671
  /**
8383
- * The components of the item stack.
8672
+ * The dynamic properties of the item stack.
8384
8673
  */
8385
- readonly components: Map<string, JSONLikeValue>;
8674
+ readonly dynamicProperties: Map<string, JSONLikeValue>;
8386
8675
  /**
8387
8676
  * The traits of the item stack.
8388
8677
  */
@@ -8392,13 +8681,13 @@ declare class ItemStack<T extends keyof Items = keyof Items> {
8392
8681
  */
8393
8682
  readonly nbt: ItemStackNbtMap;
8394
8683
  /**
8395
- * If the item stack is stackable.
8684
+ * The maximum stack size of the item stack.
8396
8685
  */
8397
- readonly stackable: boolean;
8686
+ get maxAmount(): number;
8398
8687
  /**
8399
- * The maximum stack size of the item stack.
8688
+ * If the item stack is stackable.
8400
8689
  */
8401
- readonly maxAmount: number;
8690
+ get isStackable(): boolean;
8402
8691
  /**
8403
8692
  * The world the item stack is in.
8404
8693
  */
@@ -8413,9 +8702,9 @@ declare class ItemStack<T extends keyof Items = keyof Items> {
8413
8702
  */
8414
8703
  amount: number;
8415
8704
  /**
8416
- * The auxillary data of the item stack.
8705
+ * The metadata value of the item stack.
8417
8706
  */
8418
- auxillary: number;
8707
+ metadata: number;
8419
8708
  /**
8420
8709
  * The slot of the item stack in the container.
8421
8710
  */
@@ -8424,6 +8713,10 @@ declare class ItemStack<T extends keyof Items = keyof Items> {
8424
8713
  * The slot of the item stack in the container.
8425
8714
  */
8426
8715
  set slot(value: number);
8716
+ /**
8717
+ * The components of the item stack type.
8718
+ */
8719
+ get components(): ItemTypeComponentCollection;
8427
8720
  constructor(identifier: T | ItemIdentifier | ItemType<T>, properties?: Partial<ItemStackProperties>);
8428
8721
  /**
8429
8722
  * Initializes the item stack.
@@ -8488,34 +8781,34 @@ declare class ItemStack<T extends keyof Items = keyof Items> {
8488
8781
  */
8489
8782
  addTrait<K extends typeof ItemTrait<T>>(trait: K | ItemTrait<T>, options?: ConstructorParameters<K>[1]): InstanceType<K>;
8490
8783
  /**
8491
- * Checks if the itemstack has the specified component.
8492
- * @param key The key of the component.
8493
- * @returns Whether the itemstack has the component
8784
+ * Checks if the itemstack has the specified dynamic property.
8785
+ * @param key The key of the dynamic property.
8786
+ * @returns Whether the itemstack has the dynamic property.
8494
8787
  */
8495
- hasComponent(key: string): boolean;
8788
+ hasDynamicProperty(key: string): boolean;
8496
8789
  /**
8497
- * Gets the specified component from the itemstack.
8498
- * @param key The key of the component.
8499
- * @returns The component if it exists, otherwise null
8790
+ * Gets the specified dynamic property from the itemstack.
8791
+ * @param key The key of the dynamic property.
8792
+ * @returns The dynamic property if it exists, otherwise null
8500
8793
  */
8501
- getComponent<T extends JSONLikeValue>(key: string): T | null;
8794
+ getDynamicProperty<T extends JSONLikeValue>(key: string): T | null;
8502
8795
  /**
8503
- * Removes the specified component from the itemstack.
8504
- * @param key The key of the component.
8796
+ * Removes the specified dynamic property from the itemstack.
8797
+ * @param key The key of the dynamic property.
8505
8798
  */
8506
- removeComponent(key: string): void;
8799
+ removeDynamicProperty(key: string): void;
8507
8800
  /**
8508
- * Adds a component to the itemstack.
8509
- * @param key The key of the component.
8510
- * @param value The value of the component.
8801
+ * Adds a dynamic property to the itemstack.
8802
+ * @param key The key of the dynamic property.
8803
+ * @param value The value of the dynamic property.
8511
8804
  */
8512
- addComponent<T extends JSONLikeValue>(key: string, value: T): void;
8805
+ addDynamicProperty<T extends JSONLikeValue>(key: string, value: T): void;
8513
8806
  /**
8514
- * Sets the specified component of the itemstack.
8515
- * @param key The key of the component.
8516
- * @param value The value of the component.
8807
+ * Sets the specified dynamic property of the itemstack.
8808
+ * @param key The key of the dynamic property.
8809
+ * @param value The value of the dynamic property.
8517
8810
  */
8518
- setComponent<T extends JSONLikeValue>(key: string, value: T): void;
8811
+ setDynamicProperty<T extends JSONLikeValue>(key: string, value: T): void;
8519
8812
  equals(other: ItemStack): boolean;
8520
8813
  /**
8521
8814
  * Gets the data entry for the item stack.
@@ -8563,9 +8856,14 @@ declare class ItemTrait<T extends ItemIdentifier> extends Trait {
8563
8856
  static readonly types: Array<ItemIdentifier>;
8564
8857
  /**
8565
8858
  * The item tag that this trait is compatible with by default.
8566
- * If null, the trait is not compatible with any tag.
8859
+ * If null, the trait will not attach to any item stack by default.
8567
8860
  */
8568
8861
  static readonly tag: string | null;
8862
+ /**
8863
+ * The item component that this trait is compatible with by default.
8864
+ * If null, the trait will not attach to any item stack by default.
8865
+ */
8866
+ static readonly component: string | null;
8569
8867
  /**
8570
8868
  * The item stack that this trait is attached to.
8571
8869
  */
@@ -8660,7 +8958,10 @@ declare class ItemBundleTrait<T extends ItemIdentifier> extends ItemTrait<T> {
8660
8958
  declare class ItemEquippableTrait<T extends ItemIdentifier> extends ItemTrait<T> {
8661
8959
  static readonly identifier = "equippable";
8662
8960
  static readonly tag = "minecraft:is_armor";
8961
+ static readonly component = "minecraft:wearable";
8663
8962
  onUse(player: Player, options: ItemUseOptions): ItemUseMethod | void;
8963
+ private translateWearableSlot;
8964
+ private findEquipmentSlot;
8664
8965
  }
8665
8966
 
8666
8967
  interface EnchantmentValue {
@@ -8854,7 +9155,7 @@ declare class ItemPalette {
8854
9155
  /**
8855
9156
  * The creative content for the palette.
8856
9157
  */
8857
- readonly creativeContent: Map<number, CreativeItem>;
9158
+ readonly creativeGroups: Map<number, CreateContentGroup>;
8858
9159
  /**
8859
9160
  * The registered item traits for the palette.
8860
9161
  */
@@ -8884,32 +9185,6 @@ declare class ItemPalette {
8884
9185
  resolveType(type: BlockType): ItemType | null;
8885
9186
  registerType(type: ItemType): boolean;
8886
9187
  getRegistry(identifier: ItemIdentifier): Array<typeof ItemTrait>;
8887
- /**
8888
- * Gets all creative content from the palette.
8889
- * @returns All creative content from the palette.
8890
- */
8891
- getCreativeContent(): Array<CreativeItem>;
8892
- /**
8893
- * Get creative content by index.
8894
- * @param index The index of the creative content.
8895
- * @returns The creative content by index.
8896
- */
8897
- getCreativeContentByIndex(index: number): CreativeItem | null;
8898
- /**
8899
- * Register a new creative item.
8900
- * @param type The item type to register.
8901
- * @param auxillary The auxillary data for the item.
8902
- */
8903
- registerCreativeContent(type: ItemType, auxillary?: number): void;
8904
- /**
8905
- * Unregister a creative item from the palette.
8906
- * @param index The index of the creative item to unregister.
8907
- */
8908
- unregisterCreativeContent(index: number): void;
8909
- /**
8910
- * Clear all creative content from the palette.
8911
- */
8912
- clearCreativeContent(): void;
8913
9188
  /**
8914
9189
  * Register an item trait to the palette.
8915
9190
  * @param trait The item trait to register.
@@ -8927,6 +9202,42 @@ declare class ItemPalette {
8927
9202
  * @returns The item trait from the palette.
8928
9203
  */
8929
9204
  getTrait(identifier: string): typeof ItemTrait | null;
9205
+ /**
9206
+ * Create a new creative content group.
9207
+ * @param properties The properties of the creative content group.
9208
+ * @returns The creative content group.
9209
+ */
9210
+ createContentGroup(properties?: Partial<CreateContentGroup>): CreateContentGroup;
9211
+ /**
9212
+ * Get a creative content group from the palette.
9213
+ * @param value The index or identifier of the creative content group.
9214
+ * @returns The creative content group from the palette, or null if not found.
9215
+ */
9216
+ getCreativeGroup(value: number | string | CreativeItemGroup): CreateContentGroup | null;
9217
+ /**
9218
+ * Register a creative group to the palette.
9219
+ * @param group The creative group to register.
9220
+ * @returns True if the creative group was registered, false otherwise.
9221
+ */
9222
+ registerCreativeGroup(group: CreateContentGroup): boolean;
9223
+ /**
9224
+ * Unregister a creative group from the palette.
9225
+ * @param value The index or identifier of the creative group to unregister.
9226
+ */
9227
+ unregisterCreativeGroup(value: number | string): void;
9228
+ /**
9229
+ * Get creative content by index.
9230
+ * @param index The index of the creative content.
9231
+ * @returns The creative content by index.
9232
+ */
9233
+ getCreativeContentByIndex(index: number): CreativeItemDescriptor | null;
9234
+ /**
9235
+ * Register an item for a creative content group.
9236
+ * @param group The creative content group.
9237
+ * @param type The item type to register.
9238
+ * @returns The creative content group.
9239
+ */
9240
+ registerItemForCreativeGroup(group: CreativeItemGroup, type: ItemType): void;
8930
9241
  }
8931
9242
 
8932
9243
  /**
@@ -8975,11 +9286,11 @@ declare class Block {
8975
9286
  */
8976
9287
  readonly position: BlockPosition;
8977
9288
  /**
8978
- * The components that are attached to the block.
8979
- * Components are additional data that is attached to the block and will be saved with the world database.
9289
+ * The dynamic properties that are attached to the block.
9290
+ * Dynamic properties is additional data that is attached to the block and will be saved with the world database.
8980
9291
  * These are usaully used by traits to store additional data, but can be used by other systems as well.
8981
9292
  */
8982
- readonly components: Map<string, JSONLikeValue>;
9293
+ readonly dyanamicProperties: Map<string, JSONLikeValue>;
8983
9294
  /**
8984
9295
  * The traits that are attached to the block.
8985
9296
  * Traits add additional behavior to the block and only the trait identifier will be saved with the world database.
@@ -9094,34 +9405,34 @@ declare class Block {
9094
9405
  */
9095
9406
  setPermutation(permutation: BlockPermutation, entry?: BlockEntry): void;
9096
9407
  /**
9097
- * Whether the block has the specified component.
9098
- * @param key The key of the component to check for.
9099
- * @returns Whether the block has the component.
9408
+ * Whether the block has the specified dynamic property.
9409
+ * @param key The key of the dynamic property to check for.
9410
+ * @returns Whether the block has the dynamic property.
9100
9411
  */
9101
- hasComponent(key: string): boolean;
9412
+ hasDynamicProperty(key: string): boolean;
9102
9413
  /**
9103
- * Gets the specified component from the block.
9104
- * @param key The key of the component to get from the block.
9105
- * @returns The component if it exists, otherwise null.
9414
+ * Gets the specified dynamic property from the block.
9415
+ * @param key The key of the dynamic property to get from the block.
9416
+ * @returns The dynamic property if it exists, otherwise null.
9106
9417
  */
9107
- getComponent<T extends JSONLikeObject>(key: string): T | null;
9418
+ getDynamicProperty<T extends JSONLikeObject>(key: string): T | null;
9108
9419
  /**
9109
- * Removes the specified component from the block.
9110
- * @param key The key of the component to remove.
9420
+ * Removes the specified dynamic from the block.
9421
+ * @param key The key of the dynamic to remove.
9111
9422
  */
9112
- removeComponent(key: string): void;
9423
+ removeDynamicProperty(key: string): void;
9113
9424
  /**
9114
- * Adds a component to the block.
9115
- * @param key The key of the component to add.
9116
- * @param component The component to add.
9425
+ * Adds a dynamic property to the block.
9426
+ * @param key The key of the dynamic property to add.
9427
+ * @param property The dynamic property to add.
9117
9428
  */
9118
- addComponent(key: string, component: JSONLikeObject): void;
9429
+ addDynamicProperty(key: string, property: JSONLikeObject): void;
9119
9430
  /**
9120
- * Sets the specified component to the block.
9121
- * @param key The key of the component to set.
9122
- * @param component The component to set.
9431
+ * Sets the specified dynamic property to the block.
9432
+ * @param key The key of the dynamic property to set.
9433
+ * @param property The dynamic property to set.
9123
9434
  */
9124
- setComponent<T extends JSONLikeObject>(key: string, component: T): void;
9435
+ setDynamicProperty<T extends JSONLikeObject>(key: string, property: T): void;
9125
9436
  /**
9126
9437
  * Whether the block has the specified trait.
9127
9438
  * @param trait The trait to check for
@@ -11381,9 +11692,9 @@ declare class PlayerCombatTrait extends PlayerTrait {
11381
11692
  static readonly identifier = "combat";
11382
11693
  static readonly types: EntityIdentifier[];
11383
11694
  /**
11384
- * The combat component data for the player.
11695
+ * The combat property data for the player.
11385
11696
  */
11386
- get component(): PlayerCombatComponent;
11697
+ get property(): PlayerCombatProperty;
11387
11698
  /**
11388
11699
  * The maximum reach of the player horizontally.
11389
11700
  */
@@ -11530,13 +11841,13 @@ declare class EntityInventoryTrait extends EntityTrait {
11530
11841
  */
11531
11842
  readonly container: EntityContainer;
11532
11843
  /**
11533
- * The component used to store the inventory items.
11844
+ * The dynamic property used to store the inventory items.
11534
11845
  */
11535
- get component(): ItemStorage;
11846
+ get property(): ItemStorage;
11536
11847
  /**
11537
- * The component used to store the inventory items.
11848
+ * The dynamic property used to store the inventory items.
11538
11849
  */
11539
- set component(value: ItemStorage);
11850
+ set property(value: ItemStorage);
11540
11851
  /**
11541
11852
  * The selected slot in the inventory.
11542
11853
  */
@@ -11682,13 +11993,13 @@ declare class EntityEquipmentTrait extends EntityTrait {
11682
11993
  */
11683
11994
  readonly container: EntityContainer;
11684
11995
  /**
11685
- * The component used to store the equipment items.
11996
+ * The dynamic property used to store the equipment items.
11686
11997
  */
11687
- get component(): ItemStorage;
11998
+ get property(): ItemStorage;
11688
11999
  /**
11689
- * The component used to store the equipment items.
12000
+ * The dynamic property used to store the equipment items.
11690
12001
  */
11691
- set component(value: ItemStorage);
12002
+ set property(value: ItemStorage);
11692
12003
  constructor(entity: Entity);
11693
12004
  /**
11694
12005
  * Equips the given item to given slot in the entity equipment.
@@ -11710,7 +12021,7 @@ declare class EntityEquipmentTrait extends EntityTrait {
11710
12021
  onRemove(): void;
11711
12022
  }
11712
12023
 
11713
- interface EntityNpcDialogueComponent extends JSONLikeObject {
12024
+ interface EntityNpcDialogueProperty extends JSONLikeObject {
11714
12025
  /**
11715
12026
  * The title of the npc dialogue.
11716
12027
  */
@@ -11728,13 +12039,13 @@ declare class EntityNpcTrait extends EntityTrait {
11728
12039
  static readonly identifier = "npc";
11729
12040
  static readonly types: EntityIdentifier[];
11730
12041
  /**
11731
- * The component used to store the npc dialogue form data.
12042
+ * The property used to store the npc dialogue form data.
11732
12043
  */
11733
- get component(): EntityNpcDialogueComponent;
12044
+ get property(): EntityNpcDialogueProperty;
11734
12045
  /**
11735
- * The component used to store the npc dialogue form data.
12046
+ * The property used to store the npc dialogue form data.
11736
12047
  */
11737
- set component(value: EntityNpcDialogueComponent);
12048
+ set property(value: EntityNpcDialogueProperty);
11738
12049
  /**
11739
12050
  * The title of the npc dialogue form.
11740
12051
  */
@@ -11759,7 +12070,7 @@ declare class EntityNpcTrait extends EntityTrait {
11759
12070
  * The buttons of the npc dialogue form.
11760
12071
  */
11761
12072
  set buttons(value: Array<[string, string]>);
11762
- constructor(entity: Entity, options?: Partial<EntityNpcDialogueComponent>);
12073
+ constructor(entity: Entity, options?: Partial<EntityNpcDialogueProperty>);
11763
12074
  /**
11764
12075
  * Adds a button to the npc dialogue form.
11765
12076
  * @param text The text of the button.
@@ -11840,7 +12151,7 @@ declare class Entity {
11840
12151
  /**
11841
12152
  * The components that are attached to the entity
11842
12153
  */
11843
- readonly components: Map<string, JSONLikeValue>;
12154
+ readonly dynamicProperties: Map<string, JSONLikeValue>;
11844
12155
  /**
11845
12156
  * The metadata that is attached to the entity
11846
12157
  * These values are derived from the components and traits of the entity
@@ -12028,30 +12339,30 @@ declare class Entity {
12028
12339
  * @param key The key of the component.
12029
12340
  * @returns Whether the entity has the component or not.
12030
12341
  */
12031
- hasComponent(key: string): boolean;
12342
+ hasDynamicProperty(key: string): boolean;
12032
12343
  /**
12033
12344
  * Gets the specified component from the entity.
12034
12345
  * @param key The key of the component.
12035
12346
  * @returns The component if it exists, otherwise null.
12036
12347
  */
12037
- getComponent<T extends JSONLikeObject>(key: string): T | null;
12348
+ getDynamicProperty<T extends JSONLikeObject>(key: string): T | null;
12038
12349
  /**
12039
12350
  * Removes the specified component from the entity.
12040
12351
  * @param key The key of the component.
12041
12352
  */
12042
- removeComponent(key: string): void;
12353
+ removeDynamicProperty(key: string): void;
12043
12354
  /**
12044
12355
  * Adds a component to the entity.
12045
12356
  * @param key The key of the component.
12046
12357
  * @param value The value of the component.
12047
12358
  */
12048
- addComponent<T extends JSONLikeObject>(key: string, value: T): void;
12359
+ addDynamicProperty<T extends JSONLikeObject>(key: string, value: T): void;
12049
12360
  /**
12050
12361
  * Sets the component of the entity.
12051
12362
  * @param key The key of the component.
12052
12363
  * @param value The value of the component.
12053
12364
  */
12054
- setComponent<T extends JSONLikeObject>(key: string, value: T): void;
12365
+ setDynamicProperty<T extends JSONLikeObject>(key: string, value: T): void;
12055
12366
  /**
12056
12367
  * Gets the chunk the entity is currently in.
12057
12368
  * @returns The chunk the entity is in
@@ -13862,10 +14173,10 @@ interface BlockTypeProperties {
13862
14173
  air: boolean;
13863
14174
  liquid: boolean;
13864
14175
  solid: boolean;
13865
- components: Array<string>;
13866
14176
  tags: Array<string>;
13867
14177
  drops: Array<ItemDrop>;
13868
14178
  permutations: Array<BlockPermutation>;
14179
+ properties: BlockTypeDefinition;
13869
14180
  }
13870
14181
  interface CustomBlockProperties extends BlockTypeProperties {
13871
14182
  creativeCategory: ItemCategory;
@@ -13928,22 +14239,22 @@ interface BlockDestroyOptions {
13928
14239
  */
13929
14240
  dropLoot?: boolean;
13930
14241
  }
13931
-
13932
- interface CustomBlockProperty {
13933
- name: StringTag;
13934
- enum: ListTag<ByteTag | IntTag | LongTag | StringTag>;
13935
- }
13936
- interface CustomBlockPermutation {
13937
- condition: StringTag;
13938
- }
13939
- interface CustomBlockTypeVanillaNbt {
14242
+ interface BlockTypeNbtDefinition {
13940
14243
  components: CompoundTag<unknown>;
13941
14244
  menu_category: CompoundTag<unknown>;
13942
14245
  vanilla_block_data: CompoundTag<unknown>;
13943
14246
  molangVersion: IntTag;
13944
- properties: ListTag<CompoundTag<CustomBlockProperty>>;
13945
- permutations: ListTag<CompoundTag<CustomBlockPermutation>>;
14247
+ properties: ListTag<CompoundTag<BlockTypeNbtStateDefinition>>;
14248
+ permutations: ListTag<CompoundTag<BlockTypeNbtPermutationDefinition>>;
13946
14249
  }
14250
+ interface BlockTypeNbtStateDefinition {
14251
+ name: StringTag;
14252
+ enum: ListTag<ByteTag | IntTag | LongTag | StringTag>;
14253
+ }
14254
+ interface BlockTypeNbtPermutationDefinition {
14255
+ condition: StringTag;
14256
+ }
14257
+ type BlockTypeDefinition = CompoundTag<BlockTypeNbtDefinition>;
13947
14258
 
13948
14259
  interface EntityProperties {
13949
14260
  uniqueId: bigint;
@@ -15392,16 +15703,20 @@ interface ItemUseOnEntityOptions extends ItemUseOptions {
15392
15703
  }
15393
15704
 
15394
15705
  interface ItemTypeProperties {
15395
- stackable: boolean;
15706
+ properties: CompoundTag<unknown>;
15707
+ isComponentBased: boolean;
15708
+ version: number;
15396
15709
  maxAmount: number;
15397
15710
  tool: ItemToolType;
15398
15711
  tier: ItemToolTier;
15399
15712
  tags: Array<string>;
15400
- block: BlockType | null;
15713
+ blockType: BlockType | null;
15714
+ creativeCategory: CreativeItemCategory;
15715
+ creativeGroup: CreativeItemGroup | string;
15401
15716
  }
15402
15717
  interface ItemStackProperties {
15403
15718
  amount: number;
15404
- auxillary: number;
15719
+ metadata: number;
15405
15720
  world?: World;
15406
15721
  entry?: ItemStackEntry;
15407
15722
  }
@@ -15420,6 +15735,18 @@ interface ItemStorage extends JSONLikeObject {
15420
15735
  items: Array<[number, ItemStackEntry]>;
15421
15736
  }
15422
15737
 
15738
+ interface ItemTypeBlockPlacerComponentInterface extends JSONLikeObject {
15739
+ /**
15740
+ * Whether the block image should be used as the item icon.
15741
+ */
15742
+ useBlockAsIcon: boolean;
15743
+ /**
15744
+ * The block types that the item type can be used on.
15745
+ * If the query is empty, the item can be used on any block.
15746
+ */
15747
+ useOn: Array<BlockIdentifier | string>;
15748
+ }
15749
+
15423
15750
  type CommandContext<T = NonNullable<unknown>> = {
15424
15751
  origin: Dimension | Entity;
15425
15752
  } & T;
@@ -15456,7 +15783,7 @@ interface LootEntry {
15456
15783
  function?: (itemStack: ItemStack) => ItemStack;
15457
15784
  }
15458
15785
 
15459
- interface PlayerCombatComponent extends JSONLikeObject {
15786
+ interface PlayerCombatProperty extends JSONLikeObject {
15460
15787
  /**
15461
15788
  * The maximum reach of the player horizontally.
15462
15789
  */
@@ -16104,4 +16431,4 @@ declare class Astar {
16104
16431
  private inSet;
16105
16432
  }
16106
16433
 
16107
- export { AbilityEnum, AbilityMap, type AcaciaButtonBlock, type AcaciaDoorBlock, type AcaciaDoubleSlabBlock, type AcaciaFenceGateBlock, type AcaciaHangingSignBlock, type AcaciaLeavesBlock, type AcaciaLogBlock, type AcaciaPressurePlateBlock, type AcaciaSaplingBlock, type AcaciaSlabBlock, type AcaciaStairsBlock, type AcaciaStandingSignBlock, type AcaciaTrapdoorBlock, type AcaciaWallSignBlock, type AcaciaWoodBlock, ActionForm, type ActionFormButton, type ActionFormImage, type ActivatorRailBlock, ActorFlagMap, AdminCommands, type AlliumBlock, type AmethystClusterBlock, type AndesiteDoubleSlabBlock, type AndesiteSlabBlock, type AndesiteStairsBlock, type AnvilBlock, Astar, type Attachment, AttributeMap, type AzaleaLeavesBlock, type AzaleaLeavesFloweredBlock, type AzureBluetBlock, type BambooBlock, type BambooBlockBlock, type BambooButtonBlock, type BambooDoorBlock, type BambooDoubleSlabBlock, type BambooFenceGateBlock, type BambooHangingSignBlock, type BambooLeafSize, type BambooMosaicDoubleSlabBlock, type BambooMosaicSlabBlock, type BambooMosaicStairsBlock, type BambooPressurePlateBlock, type BambooSaplingBlock, type BambooSlabBlock, type BambooStairsBlock, type BambooStalkThickness, type BambooStandingSignBlock, type BambooTrapdoorBlock, type BambooWallSignBlock, type BarrelBlock, type BasaltBlock, type BedBlock, type BedrockBlock, type BeeNestBlock, type BeehiveBlock, type BeetrootBlock, type BellBlock, type BigDripleafBlock, type BigDripleafTilt, BinaryHeap, type BinaryItem, type BirchButtonBlock, type BirchDoorBlock, type BirchDoubleSlabBlock, type BirchFenceGateBlock, type BirchHangingSignBlock, type BirchLeavesBlock, type BirchLogBlock, type BirchPressurePlateBlock, type BirchSaplingBlock, type BirchSlabBlock, type BirchStairsBlock, type BirchStandingSignBlock, type BirchTrapdoorBlock, type BirchWallSignBlock, type BirchWoodBlock, type BlackCandleBlock, type BlackCandleCakeBlock, type BlackGlazedTerracottaBlock, type BlackstoneDoubleSlabBlock, type BlackstoneSlabBlock, type BlackstoneStairsBlock, type BlackstoneWallBlock, type BlastFurnaceBlock, Block, BlockCardinalDirectionTrait, BlockCollisionBoxProperty, BlockContainer, type BlockDestroyOptions, BlockDirectionTrait, type BlockEntry, BlockEnum, BlockFacingDirection, BlockFrictionProperty, BlockGeometryProperty, BlockHardnessProperty, BlockIdentifier, BlockInteractableProperty, type BlockInteractionOptions, BlockInventoryTrait, BlockLightEmissionProperty, BlockMaterialInstancesProperty, BlockOpenBitTrait, BlockPalette, BlockPermutation, BlockPermutationUpdateSignal, BlockPillarAxisTrait, type BlockPlacementOptions, type BlockProperties, BlockProperty, BlockSelectionBoxProperty, type BlockState, BlockStorage, BlockToolType, BlockTrait, BlockTraits, BlockType, type BlockTypeProperties, BlockUpdateSignal, BlockUpperTrait, BlockUpsideDownBitTrait, BlockWeirdoDirectionTrait, type BlueCandleBlock, type BlueCandleCakeBlock, type BlueGlazedTerracottaBlock, type BlueOrchidBlock, type BoneBlockBlock, BooleanEnum, type BorderBlockBlock, Bossbar, type BrainCoralBlock, type BrainCoralBlockBlock, type BrainCoralFanBlock, type BrainCoralWallFanBlock, type BrewingStandBlock, type BrickDoubleSlabBlock, type BrickSlabBlock, type BrickStairsBlock, type BrownCandleBlock, type BrownCandleCakeBlock, type BrownGlazedTerracottaBlock, type BrownMushroomBlockBlock, type BubbleColumnBlock, type BubbleCoralBlock, type BubbleCoralBlockBlock, type BubbleCoralFanBlock, type BubbleCoralWallFanBlock, type CactusBlock, type CakeBlock, type CalibratedSculkSensorBlock, type CampfireBlock, type CandleBlock, type CandleCakeBlock, CardinalDirection, type CarrotsBlock, type CarvedPumpkinBlock, type CauldronBlock, type CauldronLiquid, type CaveVinesBlock, type CaveVinesBodyWithBerriesBlock, type CaveVinesHeadWithBerriesBlock, type ChainBlock, type ChainCommandBlockBlock, type ChemistryTableBlock, type ChemistryTableType, type CherryButtonBlock, type CherryDoorBlock, type CherryDoubleSlabBlock, type CherryFenceGateBlock, type CherryHangingSignBlock, type CherryLeavesBlock, type CherryLogBlock, type CherryPressurePlateBlock, type CherrySaplingBlock, type CherrySlabBlock, type CherryStairsBlock, type CherryStandingSignBlock, type CherryTrapdoorBlock, type CherryWallSignBlock, type CherryWoodBlock, type ChestBlock, type ChippedAnvilBlock, type ChiselType, type ChiseledBookshelfBlock, type ChiseledQuartzBlockBlock, type ChiseledRedSandstoneBlock, type ChiseledSandstoneBlock, type ChiseledStoneBricksBlock, type ChorusFlowerBlock, Chunk, ChunkReadySignal, type CobbledDeepslateDoubleSlabBlock, type CobbledDeepslateSlabBlock, type CobbledDeepslateStairsBlock, type CobbledDeepslateWallBlock, type CobblestoneDoubleSlabBlock, type CobblestoneSlabBlock, type CobblestoneWallBlock, type CocoaBlock, type ColoredTorchBpBlock, type ColoredTorchRgBlock, Command, CommandArgumentPointer, type CommandArguments, type CommandBlockBlock, type CommandCallback, type CommandContext, CommandExecutionState, type CommandOverload, CommandRegistry, type CommandRegistryCallback, type CommandResponse, Commands, CommonCommands, type ComposterBlock, ConsoleInterface, Container, type CopperBulbBlock, type CopperDoorBlock, type CopperTrapdoorBlock, type CoralColor, type CornflowerBlock, type CrackedState, type CrackedStoneBricksBlock, type CrafterBlock, CreativeItem, type CrimsonButtonBlock, type CrimsonDoorBlock, type CrimsonDoubleSlabBlock, type CrimsonFenceGateBlock, type CrimsonHangingSignBlock, type CrimsonHyphaeBlock, type CrimsonPressurePlateBlock, type CrimsonSlabBlock, type CrimsonStairsBlock, type CrimsonStandingSignBlock, type CrimsonStemBlock, type CrimsonTrapdoorBlock, type CrimsonWallSignBlock, type CustomBlockPermutation, type CustomBlockProperties, type CustomBlockProperty, CustomBlockType, type CustomBlockTypeVanillaNbt, CustomEntityType, CustomEnum, CustomItemType, type CutCopperSlabBlock, type CutCopperStairsBlock, type CutRedSandstoneBlock, type CutRedSandstoneDoubleSlabBlock, type CutRedSandstoneSlabBlock, type CutSandstoneBlock, type CutSandstoneDoubleSlabBlock, type CutSandstoneSlabBlock, type CyanCandleBlock, type CyanCandleCakeBlock, type CyanGlazedTerracottaBlock, type Damage, type DamagedAnvilBlock, type DarkOakButtonBlock, type DarkOakDoorBlock, type DarkOakDoubleSlabBlock, type DarkOakFenceGateBlock, type DarkOakHangingSignBlock, type DarkOakLeavesBlock, type DarkOakLogBlock, type DarkOakPressurePlateBlock, type DarkOakSaplingBlock, type DarkOakSlabBlock, type DarkOakStairsBlock, type DarkOakTrapdoorBlock, type DarkOakWoodBlock, type DarkPrismarineBlock, type DarkPrismarineDoubleSlabBlock, type DarkPrismarineSlabBlock, type DarkPrismarineStairsBlock, type DarkoakStandingSignBlock, type DarkoakWallSignBlock, type DaylightDetectorBlock, type DaylightDetectorInvertedBlock, type DeadBrainCoralBlock, type DeadBrainCoralBlockBlock, type DeadBrainCoralFanBlock, type DeadBrainCoralWallFanBlock, type DeadBubbleCoralBlock, type DeadBubbleCoralBlockBlock, type DeadBubbleCoralFanBlock, type DeadBubbleCoralWallFanBlock, type DeadFireCoralBlock, type DeadFireCoralBlockBlock, type DeadFireCoralFanBlock, type DeadFireCoralWallFanBlock, type DeadHornCoralBlock, type DeadHornCoralBlockBlock, type DeadHornCoralFanBlock, type DeadHornCoralWallFanBlock, type DeadTubeCoralBlock, type DeadTubeCoralBlockBlock, type DeadTubeCoralFanBlock, type DeadTubeCoralWallFanBlock, type DecoratedPotBlock, type DeepslateBlock, type DeepslateBrickDoubleSlabBlock, type DeepslateBrickSlabBlock, type DeepslateBrickStairsBlock, type DeepslateBrickWallBlock, type DeepslateTileDoubleSlabBlock, type DeepslateTileSlabBlock, type DeepslateTileStairsBlock, type DeepslateTileWallBlock, DefaultDimensionProperties, DefaultItemStackProperties, DefaultWorldProviderProperties, type DeprecatedAnvilBlock, type DetectorRailBlock, Device, DialogueForm, type DialogueFormButton, type DialogueFormProperties, Dimension, type DimensionProperties, type DioriteDoubleSlabBlock, type DioriteSlabBlock, type DioriteStairsBlock, type DispenserBlock, type DoubleCutCopperSlabBlock, type DoublePlantType, type DripstoneThickness, type DropperBlock, EffectAddSignal, EffectRemoveSignal, type EndBrickStairsBlock, type EndPortalFrameBlock, type EndRodBlock, type EndStoneBrickDoubleSlabBlock, type EndStoneBrickSlabBlock, type EnderChestBlock, Entity, EntityAirSupplyTrait, EntityAttributeTrait, EntityAttributeUpdateSignal, EntityCollisionTrait, EntityContainer, EntityDespawnedSignal, EntityDieSignal, EntityDimensionChangeSignal, type EntityEffectOptions, EntityEffectsTrait, type EntityEntry, EntityEnum, EntityEquipmentTrait, EntityFlagUpdateSignal, EntityGravityTrait, EntityHealthChangedSignal, EntityHealthTrait, EntityHitSignal, EntityHurtSignal, EntityIdentifier, EntityInteractMethod, EntityInventoryTrait, EntityInvisibilityTrait, EntityItemStackTrait, EntityLookAtPlayerTrait, EntityMetadataUpdateSignal, EntityMovementTrait, type EntityNpcDialogueComponent, EntityNpcTrait, EntityPalette, EntityPhysicsTrait, type EntityProperties, type EntityQueryOptions, EntitySpawnedSignal, EntityTrait, EntityTraitEnum, EntityTraits, EntityType, Enum, EventSignal, type ExposedCopperBulbBlock, type ExposedCopperDoorBlock, type ExposedCopperTrapdoorBlock, type ExposedCutCopperSlabBlock, type ExposedCutCopperStairsBlock, type ExposedDoubleCutCopperSlabBlock, type FarmlandBlock, type FenceGateBlock, type FernBlock, type FireBlock, type FireCoralBlock, type FireCoralBlockBlock, type FireCoralFanBlock, type FireCoralWallFanBlock, type FlowerPotBlock, type FlowerType, type FlowingLavaBlock, type FlowingWaterBlock, Form, type FormParticipant, type FormResult, type FrameBlock, type FrostedIceBlock, type FurnaceBlock, GamemodeEnum, type GenericBlockState, type GlowFrameBlock, type GlowLichenBlock, type GoldenRailBlock, type GraniteDoubleSlabBlock, type GraniteSlabBlock, type GraniteStairsBlock, type GrayCandleBlock, type GrayCandleCakeBlock, type GrayGlazedTerracottaBlock, type GreenCandleBlock, type GreenCandleCakeBlock, type GreenGlazedTerracottaBlock, type GrindstoneBlock, Handlers, type HayBlockBlock, type HeavyWeightedPressurePlateBlock, type HopperBlock, type HornCoralBlock, type HornCoralBlockBlock, type HornCoralFanBlock, type HornCoralWallFanBlock, type InfestedChiseledStoneBricksBlock, type InfestedCobblestoneBlock, type InfestedCrackedStoneBricksBlock, type InfestedDeepslateBlock, type InfestedMossyStoneBricksBlock, type InfestedStoneBlock, type InfestedStoneBricksBlock, IntegerEnum, InternalProvider, type IronDoorBlock, type IronTrapdoorBlock, ItemBundleTrait, ItemCategory, ItemDisplayTrait, ItemDrop, ItemDurabilityTrait, ItemEnchantableTrait, ItemEnum, ItemEquippableTrait, ItemFoodTrait, ItemGroup, ItemIdentifier, ItemKeepOnDieTrait, ItemLiquidContainerTrait, ItemPalette, ItemSpawnEggTrait, ItemStack, type ItemStackEntry, type ItemStackProperties, type ItemStorage, ItemSwordTrait, ItemToolTier, ItemToolType, ItemTrait, ItemTraits, ItemType, type ItemTypeProperties, type ItemUseOnBlockOptions, type ItemUseOnEntityOptions, type ItemUseOptions, type ItemWeaponComponent, ItemWeaponTrait, type Items, type JSONLikeArray, type JSONLikeObject, type JSONLikeValue, type JigsawBlock, JsonObjectEnum, type JungleButtonBlock, type JungleDoorBlock, type JungleDoubleSlabBlock, type JungleFenceGateBlock, type JungleHangingSignBlock, type JungleLeavesBlock, type JungleLogBlock, type JunglePressurePlateBlock, type JungleSaplingBlock, type JungleSlabBlock, type JungleStairsBlock, type JungleStandingSignBlock, type JungleTrapdoorBlock, type JungleWallSignBlock, type JungleWoodBlock, type KelpBlock, type LadderBlock, type LanternBlock, type LargeAmethystBudBlock, type LargeFernBlock, type LavaBlock, type LecternBlock, LevelDBProvider, type LeverBlock, type LeverDirection, type LightBlock0Block, type LightBlock10Block, type LightBlock11Block, type LightBlock12Block, type LightBlock13Block, type LightBlock14Block, type LightBlock15Block, type LightBlock1Block, type LightBlock2Block, type LightBlock3Block, type LightBlock4Block, type LightBlock5Block, type LightBlock6Block, type LightBlock7Block, type LightBlock8Block, type LightBlock9Block, type LightBlueCandleBlock, type LightBlueCandleCakeBlock, type LightBlueGlazedTerracottaBlock, type LightGrayCandleBlock, type LightGrayCandleCakeBlock, type LightWeightedPressurePlateBlock, type LightningRodBlock, type LilacBlock, type LilyOfTheValleyBlock, type LimeCandleBlock, type LimeCandleCakeBlock, type LimeGlazedTerracottaBlock, type LitBlastFurnaceBlock, type LitFurnaceBlock, type LitPumpkinBlock, type LitSmokerBlock, type LoomBlock, type LootEntry, LootPool, LootTable, type MagentaCandleBlock, type MagentaCandleCakeBlock, type MagentaGlazedTerracottaBlock, type MangroveButtonBlock, type MangroveDoorBlock, type MangroveDoubleSlabBlock, type MangroveFenceGateBlock, type MangroveHangingSignBlock, type MangroveLeavesBlock, type MangroveLogBlock, type MangrovePressurePlateBlock, type MangrovePropaguleBlock, type MangroveSlabBlock, type MangroveStairsBlock, type MangroveStandingSignBlock, type MangroveTrapdoorBlock, type MangroveWallSignBlock, type MangroveWoodBlock, type MediumAmethystBudBlock, type MelonStemBlock, MessageForm, MetadataMap, type MinecraftblockFace, type MinecraftcardinalDirection, type MinecraftfacingDirection, type MinecraftverticalHalf, ModalForm, type MonsterEggStoneType, type MossyCobblestoneDoubleSlabBlock, type MossyCobblestoneSlabBlock, type MossyCobblestoneStairsBlock, type MossyStoneBrickDoubleSlabBlock, type MossyStoneBrickSlabBlock, type MossyStoneBrickStairsBlock, type MossyStoneBricksBlock, type MudBrickDoubleSlabBlock, type MudBrickSlabBlock, type MudBrickStairsBlock, type MudBrickWallBlock, type MuddyMangroveRootsBlock, type NetherBrickDoubleSlabBlock, type NetherBrickSlabBlock, type NetherBrickStairsBlock, type NetherWartBlock, Network, NetworkBound, type NetworkEvents, NetworkHandler, type NetworkPacketEvent, type NetworkProperties, type NewLeafType, type NewLogType, Node, NodeEvaluator, type NormalStoneDoubleSlabBlock, type NormalStoneSlabBlock, type NormalStoneStairsBlock, type OakDoubleSlabBlock, type OakHangingSignBlock, type OakLeavesBlock, type OakLogBlock, type OakSaplingBlock, type OakSlabBlock, type OakStairsBlock, type OakWoodBlock, type ObserverBlock, type OchreFroglightBlock, type OrangeCandleBlock, type OrangeCandleCakeBlock, type OrangeGlazedTerracottaBlock, type OrangeTulipBlock, type Orientation, type OxeyeDaisyBlock, type OxidizedCopperBulbBlock, type OxidizedCopperDoorBlock, type OxidizedCopperTrapdoorBlock, type OxidizedCutCopperSlabBlock, type OxidizedCutCopperStairsBlock, type OxidizedDoubleCutCopperSlabBlock, type PearlescentFroglightBlock, type PeonyBlock, type PetrifiedOakDoubleSlabBlock, type PetrifiedOakSlabBlock, type PillarAxis, type PinkCandleBlock, type PinkCandleCakeBlock, type PinkGlazedTerracottaBlock, type PinkPetalsBlock, type PinkTulipBlock, type PistonArmCollisionBlock, type PistonBlock, type PitcherCropBlock, type PitcherPlantBlock, type PlaySoundOptions, Player, PlayerAbilityUpdateSignal, PlayerBreakBlockSignal, PlayerChatSignal, PlayerChunkRenderingTrait, PlayerClosedContainerSignal, type PlayerCombatComponent, PlayerCombatTrait, PlayerContainerInteractionSignal, PlayerCraftingInputTrait, PlayerCursorTrait, PlayerDropItemSignal, PlayerEntityRenderingTrait, type PlayerEntry, PlayerGamemodeChangeSignal, PlayerHungerTrait, PlayerInitializedSignal, PlayerInteractWithBlockSignal, PlayerInteractWithEntitySignal, PlayerJoinSignal, PlayerLeaveSignal, PlayerListTrait, PlayerOpenedContainerSignal, PlayerPlaceBlockSignal, type PlayerProperties, PlayerStartEmotingSignal, PlayerStartUsingItemSignal, PlayerStopEmotingSignal, PlayerStopUsingItemSignal, PlayerTrait, PlayerUseItemOnBlockSignal, PlayerUseItemOnEntitySignal, PlayerUseItemSignal, type PointedDripstoneBlock, type PolishedAndesiteDoubleSlabBlock, type PolishedAndesiteSlabBlock, type PolishedAndesiteStairsBlock, type PolishedBasaltBlock, type PolishedBlackstoneBrickDoubleSlabBlock, type PolishedBlackstoneBrickSlabBlock, type PolishedBlackstoneBrickStairsBlock, type PolishedBlackstoneBrickWallBlock, type PolishedBlackstoneButtonBlock, type PolishedBlackstoneDoubleSlabBlock, type PolishedBlackstonePressurePlateBlock, type PolishedBlackstoneSlabBlock, type PolishedBlackstoneStairsBlock, type PolishedBlackstoneWallBlock, type PolishedDeepslateDoubleSlabBlock, type PolishedDeepslateSlabBlock, type PolishedDeepslateStairsBlock, type PolishedDeepslateWallBlock, type PolishedDioriteDoubleSlabBlock, type PolishedDioriteSlabBlock, type PolishedDioriteStairsBlock, type PolishedGraniteDoubleSlabBlock, type PolishedGraniteSlabBlock, type PolishedGraniteStairsBlock, type PolishedTuffDoubleSlabBlock, type PolishedTuffSlabBlock, type PolishedTuffStairsBlock, type PolishedTuffWallBlock, type PoppyBlock, type PortalAxis, type PortalBlock, PositionEnum, type PotatoesBlock, type PoweredComparatorBlock, type PoweredRepeaterBlock, type PrismarineBlock, type PrismarineBlockType, type PrismarineBrickDoubleSlabBlock, type PrismarineBrickSlabBlock, type PrismarineBricksBlock, type PrismarineBricksStairsBlock, type PrismarineDoubleSlabBlock, type PrismarineSlabBlock, type PrismarineStairsBlock, type PumpkinBlock, type PumpkinStemBlock, type PurpleCandleBlock, type PurpleCandleCakeBlock, type PurpleGlazedTerracottaBlock, type PurpurBlockBlock, type PurpurDoubleSlabBlock, type PurpurSlabBlock, type PurpurStairsBlock, type QuartzBlockBlock, type QuartzDoubleSlabBlock, type QuartzPillarBlock, type QuartzSlabBlock, type QuartzStairsBlock, type RailBlock, type RedCandleBlock, type RedCandleCakeBlock, type RedGlazedTerracottaBlock, type RedMushroomBlockBlock, type RedNetherBrickDoubleSlabBlock, type RedNetherBrickSlabBlock, type RedNetherBrickStairsBlock, type RedSandBlock, type RedSandstoneBlock, type RedSandstoneDoubleSlabBlock, type RedSandstoneSlabBlock, type RedSandstoneStairsBlock, type RedTulipBlock, type RedstoneTorchBlock, type RedstoneWireBlock, type ReedsBlock, type RepeatingCommandBlockBlock, type ResourceManifest, ResourcePack, type ResourcePackEntry, ResourcePackManager, type ResourcePacksProperties, type RespawnAnchorBlock, type RoseBushBlock, type SandBlock, type SandStoneType, type SandType, type SandstoneBlock, type SandstoneDoubleSlabBlock, type SandstoneSlabBlock, type SandstoneStairsBlock, type SaplingType, type ScaffoldingBlock, type SculkCatalystBlock, type SculkSensorBlock, type SculkShriekerBlock, type SculkVeinBlock, type SeaGrassType, type SeaPickleBlock, type SeagrassBlock, Serenity, type SerenityProperties, ServerEvent, type ServerEvents, type ServerProperties, type SessionPacketEvent, type ShortGrassBlock, type SilverGlazedTerracottaBlock, type SkullBlock, type SmallAmethystBudBlock, type SmallDripleafBlockBlock, type SmokerBlock, type SmoothQuartzBlock, type SmoothQuartzDoubleSlabBlock, type SmoothQuartzSlabBlock, type SmoothQuartzStairsBlock, type SmoothRedSandstoneBlock, type SmoothRedSandstoneDoubleSlabBlock, type SmoothRedSandstoneSlabBlock, type SmoothRedSandstoneStairsBlock, type SmoothSandstoneBlock, type SmoothSandstoneDoubleSlabBlock, type SmoothSandstoneSlabBlock, type SmoothSandstoneStairsBlock, type SmoothStoneDoubleSlabBlock, type SmoothStoneSlabBlock, type SnifferEggBlock, type SnowLayerBlock, SoftEnum, type SoulCampfireBlock, type SoulFireBlock, type SoulLanternBlock, type SoulTorchBlock, type SpongeBlock, type SpongeType, type SpruceButtonBlock, type SpruceDoorBlock, type SpruceDoubleSlabBlock, type SpruceFenceGateBlock, type SpruceHangingSignBlock, type SpruceLeavesBlock, type SpruceLogBlock, type SprucePressurePlateBlock, type SpruceSaplingBlock, type SpruceSlabBlock, type SpruceStairsBlock, type SpruceStandingSignBlock, type SpruceTrapdoorBlock, type SpruceWallSignBlock, type SpruceWoodBlock, type StandingBannerBlock, type StandingSignBlock, type StickyPistonArmCollisionBlock, type StickyPistonBlock, type StoneBrickDoubleSlabBlock, type StoneBrickSlabBlock, type StoneBrickStairsBlock, type StoneBrickType, type StoneBricksBlock, type StoneButtonBlock, type StonePressurePlateBlock, type StoneSlabType, type StoneSlabType2, type StoneSlabType3, type StoneSlabType4, type StoneStairsBlock, type StonecutterBlockBlock, StringEnum, type StrippedAcaciaLogBlock, type StrippedAcaciaWoodBlock, type StrippedBambooBlockBlock, type StrippedBirchLogBlock, type StrippedBirchWoodBlock, type StrippedCherryLogBlock, type StrippedCherryWoodBlock, type StrippedCrimsonHyphaeBlock, type StrippedCrimsonStemBlock, type StrippedDarkOakLogBlock, type StrippedDarkOakWoodBlock, type StrippedJungleLogBlock, type StrippedJungleWoodBlock, type StrippedMangroveLogBlock, type StrippedMangroveWoodBlock, type StrippedOakLogBlock, type StrippedOakWoodBlock, type StrippedSpruceLogBlock, type StrippedSpruceWoodBlock, type StrippedWarpedHyphaeBlock, type StrippedWarpedStemBlock, type StructureBlockBlock, type StructureBlockType, type StructureVoidBlock, type StructureVoidType, SubChunk, type SunflowerBlock, SuperflatGenerator, SuperflatWorker, type SuspiciousGravelBlock, type SuspiciousSandBlock, type SweetBerryBushBlock, TagEnum, type TallGrassBlock, type TallGrassType, TargetEnum, TerrainGenerator, type TerrainGeneratorProperties, TerrainWorker, TickSchedule, TimeOfDay, TimeOpertation, type TitleDisplayOptions, type TntBlock, type TorchBlock, type TorchFacingDirection, type TorchflowerCropBlock, TraitActionEnum, type TrapdoorBlock, type TrappedChestBlock, type TrialSpawnerBlock, type TripWireBlock, type TripwireHookBlock, type TubeCoralBlock, type TubeCoralBlockBlock, type TubeCoralFanBlock, type TubeCoralWallFanBlock, type TuffBrickDoubleSlabBlock, type TuffBrickSlabBlock, type TuffBrickStairsBlock, type TuffBrickWallBlock, type TuffDoubleSlabBlock, type TuffSlabBlock, type TuffStairsBlock, type TuffWallBlock, type TurtleEggBlock, type TurtleEggCount, type TwistingVinesBlock, type UnderwaterTorchBlock, type UnlitRedstoneTorchBlock, type UnpoweredComparatorBlock, type UnpoweredRepeaterBlock, ValidEnum, type VaultBlock, type VaultState, type VerdantFroglightBlock, VerticalHalfTrait, type VineBlock, VoidGenerator, type WallBannerBlock, type WallBlockType, type WallConnectionTypeEast, type WallConnectionTypeNorth, type WallConnectionTypeSouth, type WallConnectionTypeWest, type WallSignBlock, type WarpedButtonBlock, type WarpedDoorBlock, type WarpedDoubleSlabBlock, type WarpedFenceGateBlock, type WarpedHangingSignBlock, type WarpedHyphaeBlock, type WarpedPressurePlateBlock, type WarpedSlabBlock, type WarpedStairsBlock, type WarpedStandingSignBlock, type WarpedStemBlock, type WarpedTrapdoorBlock, type WarpedWallSignBlock, type WaterBlock, type WaxedCopperBulbBlock, type WaxedCopperDoorBlock, type WaxedCopperTrapdoorBlock, type WaxedCutCopperSlabBlock, type WaxedCutCopperStairsBlock, type WaxedDoubleCutCopperSlabBlock, type WaxedExposedCopperBulbBlock, type WaxedExposedCopperDoorBlock, type WaxedExposedCopperTrapdoorBlock, type WaxedExposedCutCopperSlabBlock, type WaxedExposedCutCopperStairsBlock, type WaxedExposedDoubleCutCopperSlabBlock, type WaxedOxidizedCopperBulbBlock, type WaxedOxidizedCopperDoorBlock, type WaxedOxidizedCopperTrapdoorBlock, type WaxedOxidizedCutCopperSlabBlock, type WaxedOxidizedCutCopperStairsBlock, type WaxedOxidizedDoubleCutCopperSlabBlock, type WaxedWeatheredCopperBulbBlock, type WaxedWeatheredCopperDoorBlock, type WaxedWeatheredCopperTrapdoorBlock, type WaxedWeatheredCutCopperSlabBlock, type WaxedWeatheredCutCopperStairsBlock, type WaxedWeatheredDoubleCutCopperSlabBlock, type WeatheredCopperBulbBlock, type WeatheredCopperDoorBlock, type WeatheredCopperTrapdoorBlock, type WeatheredCutCopperSlabBlock, type WeatheredCutCopperStairsBlock, type WeatheredDoubleCutCopperSlabBlock, type WeepingVinesBlock, type WheatBlock, type WhiteCandleBlock, type WhiteCandleCakeBlock, type WhiteGlazedTerracottaBlock, type WhiteTulipBlock, type WoodenButtonBlock, type WoodenDoorBlock, type WoodenPressurePlateBlock, Worker, World, WorldEnum, WorldEvent, type WorldEventSignals, WorldInitializeSignal, type WorldProperties, WorldProvider, type WorldProviderProperties, WorldTickSignal, type YellowCandleBlock, type YellowCandleCakeBlock, type YellowGlazedTerracottaBlock, Zip };
16434
+ export { AbilityEnum, AbilityMap, type AcaciaButtonBlock, type AcaciaDoorBlock, type AcaciaDoubleSlabBlock, type AcaciaFenceGateBlock, type AcaciaHangingSignBlock, type AcaciaLeavesBlock, type AcaciaLogBlock, type AcaciaPressurePlateBlock, type AcaciaSaplingBlock, type AcaciaSlabBlock, type AcaciaStairsBlock, type AcaciaStandingSignBlock, type AcaciaTrapdoorBlock, type AcaciaWallSignBlock, type AcaciaWoodBlock, ActionForm, type ActionFormButton, type ActionFormImage, type ActivatorRailBlock, ActorFlagMap, AdminCommands, type AlliumBlock, type AmethystClusterBlock, type AndesiteDoubleSlabBlock, type AndesiteSlabBlock, type AndesiteStairsBlock, type AnvilBlock, Astar, type Attachment, AttributeMap, type AzaleaLeavesBlock, type AzaleaLeavesFloweredBlock, type AzureBluetBlock, type BambooBlock, type BambooBlockBlock, type BambooButtonBlock, type BambooDoorBlock, type BambooDoubleSlabBlock, type BambooFenceGateBlock, type BambooHangingSignBlock, type BambooLeafSize, type BambooMosaicDoubleSlabBlock, type BambooMosaicSlabBlock, type BambooMosaicStairsBlock, type BambooPressurePlateBlock, type BambooSaplingBlock, type BambooSlabBlock, type BambooStairsBlock, type BambooStalkThickness, type BambooStandingSignBlock, type BambooTrapdoorBlock, type BambooWallSignBlock, type BarrelBlock, type BasaltBlock, type BedBlock, type BedrockBlock, type BeeNestBlock, type BeehiveBlock, type BeetrootBlock, type BellBlock, type BigDripleafBlock, type BigDripleafTilt, BinaryHeap, type BinaryItem, type BirchButtonBlock, type BirchDoorBlock, type BirchDoubleSlabBlock, type BirchFenceGateBlock, type BirchHangingSignBlock, type BirchLeavesBlock, type BirchLogBlock, type BirchPressurePlateBlock, type BirchSaplingBlock, type BirchSlabBlock, type BirchStairsBlock, type BirchStandingSignBlock, type BirchTrapdoorBlock, type BirchWallSignBlock, type BirchWoodBlock, type BlackCandleBlock, type BlackCandleCakeBlock, type BlackGlazedTerracottaBlock, type BlackstoneDoubleSlabBlock, type BlackstoneSlabBlock, type BlackstoneStairsBlock, type BlackstoneWallBlock, type BlastFurnaceBlock, Block, BlockCardinalDirectionTrait, BlockContainer, type BlockDestroyOptions, BlockDirectionTrait, type BlockEntry, BlockEnum, BlockFacingDirection, BlockIdentifier, type BlockInteractionOptions, BlockInventoryTrait, BlockOpenBitTrait, BlockPalette, BlockPermutation, BlockPermutationUpdateSignal, BlockPillarAxisTrait, type BlockPlacementOptions, type BlockProperties, type BlockState, BlockStorage, BlockToolType, BlockTrait, BlockTraits, BlockType, BlockTypeCollisionBoxComponent, BlockTypeComponent, type BlockTypeDefinition, BlockTypeFrictionComponent, BlockTypeGeometryComponent, BlockTypeHardnessComponent, BlockTypeInteractableComponent, BlockTypeLightEmissionComponent, BlockTypeMaterialInstancesComponent, type BlockTypeNbtDefinition, type BlockTypeNbtPermutationDefinition, type BlockTypeNbtStateDefinition, type BlockTypeProperties, BlockTypeSelectionBoxComponent, BlockUpdateSignal, BlockUpperTrait, BlockUpsideDownBitTrait, BlockWeirdoDirectionTrait, type BlueCandleBlock, type BlueCandleCakeBlock, type BlueGlazedTerracottaBlock, type BlueOrchidBlock, type BoneBlockBlock, BooleanEnum, type BorderBlockBlock, Bossbar, type BrainCoralBlock, type BrainCoralBlockBlock, type BrainCoralFanBlock, type BrainCoralWallFanBlock, type BrewingStandBlock, type BrickDoubleSlabBlock, type BrickSlabBlock, type BrickStairsBlock, type BrownCandleBlock, type BrownCandleCakeBlock, type BrownGlazedTerracottaBlock, type BrownMushroomBlockBlock, type BubbleColumnBlock, type BubbleCoralBlock, type BubbleCoralBlockBlock, type BubbleCoralFanBlock, type BubbleCoralWallFanBlock, type CactusBlock, type CakeBlock, type CalibratedSculkSensorBlock, type CampfireBlock, type CandleBlock, type CandleCakeBlock, CardinalDirection, type CarrotsBlock, type CarvedPumpkinBlock, type CauldronBlock, type CauldronLiquid, type CaveVinesBlock, type CaveVinesBodyWithBerriesBlock, type CaveVinesHeadWithBerriesBlock, type ChainBlock, type ChainCommandBlockBlock, type ChemistryTableBlock, type ChemistryTableType, type CherryButtonBlock, type CherryDoorBlock, type CherryDoubleSlabBlock, type CherryFenceGateBlock, type CherryHangingSignBlock, type CherryLeavesBlock, type CherryLogBlock, type CherryPressurePlateBlock, type CherrySaplingBlock, type CherrySlabBlock, type CherryStairsBlock, type CherryStandingSignBlock, type CherryTrapdoorBlock, type CherryWallSignBlock, type CherryWoodBlock, type ChestBlock, type ChippedAnvilBlock, type ChiselType, type ChiseledBookshelfBlock, type ChiseledQuartzBlockBlock, type ChiseledRedSandstoneBlock, type ChiseledSandstoneBlock, type ChiseledStoneBricksBlock, type ChorusFlowerBlock, Chunk, ChunkReadySignal, type CobbledDeepslateDoubleSlabBlock, type CobbledDeepslateSlabBlock, type CobbledDeepslateStairsBlock, type CobbledDeepslateWallBlock, type CobblestoneDoubleSlabBlock, type CobblestoneSlabBlock, type CobblestoneWallBlock, type CocoaBlock, type ColoredTorchBpBlock, type ColoredTorchRgBlock, Command, CommandArgumentPointer, type CommandArguments, type CommandBlockBlock, type CommandCallback, type CommandContext, CommandExecutionState, type CommandOverload, CommandRegistry, type CommandRegistryCallback, type CommandResponse, Commands, CommonCommands, type ComposterBlock, ConsoleInterface, Container, type CopperBulbBlock, type CopperDoorBlock, type CopperTrapdoorBlock, type CoralColor, type CornflowerBlock, type CrackedState, type CrackedStoneBricksBlock, type CrafterBlock, CreateContentGroup, CreativeItemDescriptor, type CrimsonButtonBlock, type CrimsonDoorBlock, type CrimsonDoubleSlabBlock, type CrimsonFenceGateBlock, type CrimsonHangingSignBlock, type CrimsonHyphaeBlock, type CrimsonPressurePlateBlock, type CrimsonSlabBlock, type CrimsonStairsBlock, type CrimsonStandingSignBlock, type CrimsonStemBlock, type CrimsonTrapdoorBlock, type CrimsonWallSignBlock, type CustomBlockProperties, CustomBlockType, CustomEntityType, CustomEnum, CustomItemType, type CutCopperSlabBlock, type CutCopperStairsBlock, type CutRedSandstoneBlock, type CutRedSandstoneDoubleSlabBlock, type CutRedSandstoneSlabBlock, type CutSandstoneBlock, type CutSandstoneDoubleSlabBlock, type CutSandstoneSlabBlock, type CyanCandleBlock, type CyanCandleCakeBlock, type CyanGlazedTerracottaBlock, type Damage, type DamagedAnvilBlock, type DarkOakButtonBlock, type DarkOakDoorBlock, type DarkOakDoubleSlabBlock, type DarkOakFenceGateBlock, type DarkOakHangingSignBlock, type DarkOakLeavesBlock, type DarkOakLogBlock, type DarkOakPressurePlateBlock, type DarkOakSaplingBlock, type DarkOakSlabBlock, type DarkOakStairsBlock, type DarkOakTrapdoorBlock, type DarkOakWoodBlock, type DarkPrismarineBlock, type DarkPrismarineDoubleSlabBlock, type DarkPrismarineSlabBlock, type DarkPrismarineStairsBlock, type DarkoakStandingSignBlock, type DarkoakWallSignBlock, type DaylightDetectorBlock, type DaylightDetectorInvertedBlock, type DeadBrainCoralBlock, type DeadBrainCoralBlockBlock, type DeadBrainCoralFanBlock, type DeadBrainCoralWallFanBlock, type DeadBubbleCoralBlock, type DeadBubbleCoralBlockBlock, type DeadBubbleCoralFanBlock, type DeadBubbleCoralWallFanBlock, type DeadFireCoralBlock, type DeadFireCoralBlockBlock, type DeadFireCoralFanBlock, type DeadFireCoralWallFanBlock, type DeadHornCoralBlock, type DeadHornCoralBlockBlock, type DeadHornCoralFanBlock, type DeadHornCoralWallFanBlock, type DeadTubeCoralBlock, type DeadTubeCoralBlockBlock, type DeadTubeCoralFanBlock, type DeadTubeCoralWallFanBlock, type DecoratedPotBlock, type DeepslateBlock, type DeepslateBrickDoubleSlabBlock, type DeepslateBrickSlabBlock, type DeepslateBrickStairsBlock, type DeepslateBrickWallBlock, type DeepslateTileDoubleSlabBlock, type DeepslateTileSlabBlock, type DeepslateTileStairsBlock, type DeepslateTileWallBlock, DefaultDimensionProperties, DefaultItemStackProperties, DefaultWorldProviderProperties, type DeprecatedAnvilBlock, type DetectorRailBlock, Device, DialogueForm, type DialogueFormButton, type DialogueFormProperties, Dimension, type DimensionProperties, type DioriteDoubleSlabBlock, type DioriteSlabBlock, type DioriteStairsBlock, type DispenserBlock, type DoubleCutCopperSlabBlock, type DoublePlantType, type DripstoneThickness, type DropperBlock, EffectAddSignal, EffectRemoveSignal, type EndBrickStairsBlock, type EndPortalFrameBlock, type EndRodBlock, type EndStoneBrickDoubleSlabBlock, type EndStoneBrickSlabBlock, type EnderChestBlock, Entity, EntityAirSupplyTrait, EntityAttributeTrait, EntityAttributeUpdateSignal, EntityCollisionTrait, EntityContainer, EntityDespawnedSignal, EntityDieSignal, EntityDimensionChangeSignal, type EntityEffectOptions, EntityEffectsTrait, type EntityEntry, EntityEnum, EntityEquipmentTrait, EntityFlagUpdateSignal, EntityGravityTrait, EntityHealthChangedSignal, EntityHealthTrait, EntityHitSignal, EntityHurtSignal, EntityIdentifier, EntityInteractMethod, EntityInventoryTrait, EntityInvisibilityTrait, EntityItemStackTrait, EntityLookAtPlayerTrait, EntityMetadataUpdateSignal, EntityMovementTrait, type EntityNpcDialogueProperty, EntityNpcTrait, EntityPalette, EntityPhysicsTrait, type EntityProperties, type EntityQueryOptions, EntitySpawnedSignal, EntityTrait, EntityTraitEnum, EntityTraits, EntityType, Enum, EventSignal, type ExposedCopperBulbBlock, type ExposedCopperDoorBlock, type ExposedCopperTrapdoorBlock, type ExposedCutCopperSlabBlock, type ExposedCutCopperStairsBlock, type ExposedDoubleCutCopperSlabBlock, type FarmlandBlock, type FenceGateBlock, type FernBlock, type FireBlock, type FireCoralBlock, type FireCoralBlockBlock, type FireCoralFanBlock, type FireCoralWallFanBlock, type FlowerPotBlock, type FlowerType, type FlowingLavaBlock, type FlowingWaterBlock, Form, type FormParticipant, type FormResult, type FrameBlock, type FrostedIceBlock, type FurnaceBlock, GamemodeEnum, type GenericBlockState, type GlowFrameBlock, type GlowLichenBlock, type GoldenRailBlock, type GraniteDoubleSlabBlock, type GraniteSlabBlock, type GraniteStairsBlock, type GrayCandleBlock, type GrayCandleCakeBlock, type GrayGlazedTerracottaBlock, type GreenCandleBlock, type GreenCandleCakeBlock, type GreenGlazedTerracottaBlock, type GrindstoneBlock, Handlers, type HayBlockBlock, type HeavyWeightedPressurePlateBlock, type HopperBlock, type HornCoralBlock, type HornCoralBlockBlock, type HornCoralFanBlock, type HornCoralWallFanBlock, type InfestedChiseledStoneBricksBlock, type InfestedCobblestoneBlock, type InfestedCrackedStoneBricksBlock, type InfestedDeepslateBlock, type InfestedMossyStoneBricksBlock, type InfestedStoneBlock, type InfestedStoneBricksBlock, IntegerEnum, InternalProvider, type IronDoorBlock, type IronTrapdoorBlock, ItemBundleTrait, ItemCategory, ItemDisplayTrait, ItemDrop, ItemDurabilityTrait, ItemEnchantableTrait, ItemEnum, ItemEquippableTrait, ItemFoodTrait, ItemGroup, ItemIdentifier, ItemKeepOnDieTrait, ItemLiquidContainerTrait, ItemPalette, ItemSpawnEggTrait, ItemStack, type ItemStackEntry, type ItemStackProperties, type ItemStorage, ItemSwordTrait, ItemToolTier, ItemToolType, ItemTrait, ItemTraits, ItemType, ItemTypeBlockPlacerComponent, type ItemTypeBlockPlacerComponentInterface, ItemTypeCanDestroyInCreativeComponent, ItemTypeComponent, ItemTypeComponentCollection, ItemTypeDisplayNameComponent, ItemTypeIconComponent, ItemTypeItemPropertiesComponent, ItemTypeMaxStackComponent, type ItemTypeProperties, ItemTypeWearableComponent, type ItemUseOnBlockOptions, type ItemUseOnEntityOptions, type ItemUseOptions, type ItemWeaponComponent, ItemWeaponTrait, type Items, type JSONLikeArray, type JSONLikeObject, type JSONLikeValue, type JigsawBlock, JsonObjectEnum, type JungleButtonBlock, type JungleDoorBlock, type JungleDoubleSlabBlock, type JungleFenceGateBlock, type JungleHangingSignBlock, type JungleLeavesBlock, type JungleLogBlock, type JunglePressurePlateBlock, type JungleSaplingBlock, type JungleSlabBlock, type JungleStairsBlock, type JungleStandingSignBlock, type JungleTrapdoorBlock, type JungleWallSignBlock, type JungleWoodBlock, type KelpBlock, type LadderBlock, type LanternBlock, type LargeAmethystBudBlock, type LargeFernBlock, type LavaBlock, type LecternBlock, LevelDBProvider, type LeverBlock, type LeverDirection, type LightBlock0Block, type LightBlock10Block, type LightBlock11Block, type LightBlock12Block, type LightBlock13Block, type LightBlock14Block, type LightBlock15Block, type LightBlock1Block, type LightBlock2Block, type LightBlock3Block, type LightBlock4Block, type LightBlock5Block, type LightBlock6Block, type LightBlock7Block, type LightBlock8Block, type LightBlock9Block, type LightBlueCandleBlock, type LightBlueCandleCakeBlock, type LightBlueGlazedTerracottaBlock, type LightGrayCandleBlock, type LightGrayCandleCakeBlock, type LightWeightedPressurePlateBlock, type LightningRodBlock, type LilacBlock, type LilyOfTheValleyBlock, type LimeCandleBlock, type LimeCandleCakeBlock, type LimeGlazedTerracottaBlock, type LitBlastFurnaceBlock, type LitFurnaceBlock, type LitPumpkinBlock, type LitSmokerBlock, type LoomBlock, type LootEntry, LootPool, LootTable, type MagentaCandleBlock, type MagentaCandleCakeBlock, type MagentaGlazedTerracottaBlock, type MangroveButtonBlock, type MangroveDoorBlock, type MangroveDoubleSlabBlock, type MangroveFenceGateBlock, type MangroveHangingSignBlock, type MangroveLeavesBlock, type MangroveLogBlock, type MangrovePressurePlateBlock, type MangrovePropaguleBlock, type MangroveSlabBlock, type MangroveStairsBlock, type MangroveStandingSignBlock, type MangroveTrapdoorBlock, type MangroveWallSignBlock, type MangroveWoodBlock, type MediumAmethystBudBlock, type MelonStemBlock, MessageForm, MetadataMap, type MinecraftblockFace, type MinecraftcardinalDirection, type MinecraftfacingDirection, type MinecraftverticalHalf, ModalForm, type MonsterEggStoneType, type MossyCobblestoneDoubleSlabBlock, type MossyCobblestoneSlabBlock, type MossyCobblestoneStairsBlock, type MossyStoneBrickDoubleSlabBlock, type MossyStoneBrickSlabBlock, type MossyStoneBrickStairsBlock, type MossyStoneBricksBlock, type MudBrickDoubleSlabBlock, type MudBrickSlabBlock, type MudBrickStairsBlock, type MudBrickWallBlock, type MuddyMangroveRootsBlock, type NetherBrickDoubleSlabBlock, type NetherBrickSlabBlock, type NetherBrickStairsBlock, type NetherWartBlock, Network, NetworkBound, type NetworkEvents, NetworkHandler, type NetworkPacketEvent, type NetworkProperties, type NewLeafType, type NewLogType, Node, NodeEvaluator, type NormalStoneDoubleSlabBlock, type NormalStoneSlabBlock, type NormalStoneStairsBlock, type OakDoubleSlabBlock, type OakHangingSignBlock, type OakLeavesBlock, type OakLogBlock, type OakSaplingBlock, type OakSlabBlock, type OakStairsBlock, type OakWoodBlock, type ObserverBlock, type OchreFroglightBlock, type OrangeCandleBlock, type OrangeCandleCakeBlock, type OrangeGlazedTerracottaBlock, type OrangeTulipBlock, type Orientation, type OxeyeDaisyBlock, type OxidizedCopperBulbBlock, type OxidizedCopperDoorBlock, type OxidizedCopperTrapdoorBlock, type OxidizedCutCopperSlabBlock, type OxidizedCutCopperStairsBlock, type OxidizedDoubleCutCopperSlabBlock, type PearlescentFroglightBlock, type PeonyBlock, type PetrifiedOakDoubleSlabBlock, type PetrifiedOakSlabBlock, type PillarAxis, type PinkCandleBlock, type PinkCandleCakeBlock, type PinkGlazedTerracottaBlock, type PinkPetalsBlock, type PinkTulipBlock, type PistonArmCollisionBlock, type PistonBlock, type PitcherCropBlock, type PitcherPlantBlock, type PlaySoundOptions, Player, PlayerAbilityUpdateSignal, PlayerBreakBlockSignal, PlayerChatSignal, PlayerChunkRenderingTrait, PlayerClosedContainerSignal, type PlayerCombatProperty, PlayerCombatTrait, PlayerContainerInteractionSignal, PlayerCraftingInputTrait, PlayerCursorTrait, PlayerDropItemSignal, PlayerEntityRenderingTrait, type PlayerEntry, PlayerGamemodeChangeSignal, PlayerHungerTrait, PlayerInitializedSignal, PlayerInteractWithBlockSignal, PlayerInteractWithEntitySignal, PlayerJoinSignal, PlayerLeaveSignal, PlayerListTrait, PlayerOpenedContainerSignal, PlayerPlaceBlockSignal, type PlayerProperties, PlayerStartEmotingSignal, PlayerStartUsingItemSignal, PlayerStopEmotingSignal, PlayerStopUsingItemSignal, PlayerTrait, PlayerUseItemOnBlockSignal, PlayerUseItemOnEntitySignal, PlayerUseItemSignal, type PointedDripstoneBlock, type PolishedAndesiteDoubleSlabBlock, type PolishedAndesiteSlabBlock, type PolishedAndesiteStairsBlock, type PolishedBasaltBlock, type PolishedBlackstoneBrickDoubleSlabBlock, type PolishedBlackstoneBrickSlabBlock, type PolishedBlackstoneBrickStairsBlock, type PolishedBlackstoneBrickWallBlock, type PolishedBlackstoneButtonBlock, type PolishedBlackstoneDoubleSlabBlock, type PolishedBlackstonePressurePlateBlock, type PolishedBlackstoneSlabBlock, type PolishedBlackstoneStairsBlock, type PolishedBlackstoneWallBlock, type PolishedDeepslateDoubleSlabBlock, type PolishedDeepslateSlabBlock, type PolishedDeepslateStairsBlock, type PolishedDeepslateWallBlock, type PolishedDioriteDoubleSlabBlock, type PolishedDioriteSlabBlock, type PolishedDioriteStairsBlock, type PolishedGraniteDoubleSlabBlock, type PolishedGraniteSlabBlock, type PolishedGraniteStairsBlock, type PolishedTuffDoubleSlabBlock, type PolishedTuffSlabBlock, type PolishedTuffStairsBlock, type PolishedTuffWallBlock, type PoppyBlock, type PortalAxis, type PortalBlock, PositionEnum, type PotatoesBlock, type PoweredComparatorBlock, type PoweredRepeaterBlock, type PrismarineBlock, type PrismarineBlockType, type PrismarineBrickDoubleSlabBlock, type PrismarineBrickSlabBlock, type PrismarineBricksBlock, type PrismarineBricksStairsBlock, type PrismarineDoubleSlabBlock, type PrismarineSlabBlock, type PrismarineStairsBlock, type PumpkinBlock, type PumpkinStemBlock, type PurpleCandleBlock, type PurpleCandleCakeBlock, type PurpleGlazedTerracottaBlock, type PurpurBlockBlock, type PurpurDoubleSlabBlock, type PurpurSlabBlock, type PurpurStairsBlock, type QuartzBlockBlock, type QuartzDoubleSlabBlock, type QuartzPillarBlock, type QuartzSlabBlock, type QuartzStairsBlock, type RailBlock, type RedCandleBlock, type RedCandleCakeBlock, type RedGlazedTerracottaBlock, type RedMushroomBlockBlock, type RedNetherBrickDoubleSlabBlock, type RedNetherBrickSlabBlock, type RedNetherBrickStairsBlock, type RedSandBlock, type RedSandstoneBlock, type RedSandstoneDoubleSlabBlock, type RedSandstoneSlabBlock, type RedSandstoneStairsBlock, type RedTulipBlock, type RedstoneTorchBlock, type RedstoneWireBlock, type ReedsBlock, type RepeatingCommandBlockBlock, type ResourceManifest, ResourcePack, type ResourcePackEntry, ResourcePackManager, type ResourcePacksProperties, type RespawnAnchorBlock, type RoseBushBlock, type SandBlock, type SandStoneType, type SandType, type SandstoneBlock, type SandstoneDoubleSlabBlock, type SandstoneSlabBlock, type SandstoneStairsBlock, type SaplingType, type ScaffoldingBlock, type SculkCatalystBlock, type SculkSensorBlock, type SculkShriekerBlock, type SculkVeinBlock, type SeaGrassType, type SeaPickleBlock, type SeagrassBlock, Serenity, type SerenityProperties, ServerEvent, type ServerEvents, type ServerProperties, type SessionPacketEvent, type ShortGrassBlock, type SilverGlazedTerracottaBlock, type SkullBlock, type SmallAmethystBudBlock, type SmallDripleafBlockBlock, type SmokerBlock, type SmoothQuartzBlock, type SmoothQuartzDoubleSlabBlock, type SmoothQuartzSlabBlock, type SmoothQuartzStairsBlock, type SmoothRedSandstoneBlock, type SmoothRedSandstoneDoubleSlabBlock, type SmoothRedSandstoneSlabBlock, type SmoothRedSandstoneStairsBlock, type SmoothSandstoneBlock, type SmoothSandstoneDoubleSlabBlock, type SmoothSandstoneSlabBlock, type SmoothSandstoneStairsBlock, type SmoothStoneDoubleSlabBlock, type SmoothStoneSlabBlock, type SnifferEggBlock, type SnowLayerBlock, SoftEnum, type SoulCampfireBlock, type SoulFireBlock, type SoulLanternBlock, type SoulTorchBlock, type SpongeBlock, type SpongeType, type SpruceButtonBlock, type SpruceDoorBlock, type SpruceDoubleSlabBlock, type SpruceFenceGateBlock, type SpruceHangingSignBlock, type SpruceLeavesBlock, type SpruceLogBlock, type SprucePressurePlateBlock, type SpruceSaplingBlock, type SpruceSlabBlock, type SpruceStairsBlock, type SpruceStandingSignBlock, type SpruceTrapdoorBlock, type SpruceWallSignBlock, type SpruceWoodBlock, type StandingBannerBlock, type StandingSignBlock, type StickyPistonArmCollisionBlock, type StickyPistonBlock, type StoneBrickDoubleSlabBlock, type StoneBrickSlabBlock, type StoneBrickStairsBlock, type StoneBrickType, type StoneBricksBlock, type StoneButtonBlock, type StonePressurePlateBlock, type StoneSlabType, type StoneSlabType2, type StoneSlabType3, type StoneSlabType4, type StoneStairsBlock, type StonecutterBlockBlock, StringEnum, type StrippedAcaciaLogBlock, type StrippedAcaciaWoodBlock, type StrippedBambooBlockBlock, type StrippedBirchLogBlock, type StrippedBirchWoodBlock, type StrippedCherryLogBlock, type StrippedCherryWoodBlock, type StrippedCrimsonHyphaeBlock, type StrippedCrimsonStemBlock, type StrippedDarkOakLogBlock, type StrippedDarkOakWoodBlock, type StrippedJungleLogBlock, type StrippedJungleWoodBlock, type StrippedMangroveLogBlock, type StrippedMangroveWoodBlock, type StrippedOakLogBlock, type StrippedOakWoodBlock, type StrippedSpruceLogBlock, type StrippedSpruceWoodBlock, type StrippedWarpedHyphaeBlock, type StrippedWarpedStemBlock, type StructureBlockBlock, type StructureBlockType, type StructureVoidBlock, type StructureVoidType, SubChunk, type SunflowerBlock, SuperflatGenerator, SuperflatWorker, type SuspiciousGravelBlock, type SuspiciousSandBlock, type SweetBerryBushBlock, TagEnum, type TallGrassBlock, type TallGrassType, TargetEnum, TerrainGenerator, type TerrainGeneratorProperties, TerrainWorker, TickSchedule, TimeOfDay, TimeOpertation, type TitleDisplayOptions, type TntBlock, type TorchBlock, type TorchFacingDirection, type TorchflowerCropBlock, TraitActionEnum, type TrapdoorBlock, type TrappedChestBlock, type TrialSpawnerBlock, type TripWireBlock, type TripwireHookBlock, type TubeCoralBlock, type TubeCoralBlockBlock, type TubeCoralFanBlock, type TubeCoralWallFanBlock, type TuffBrickDoubleSlabBlock, type TuffBrickSlabBlock, type TuffBrickStairsBlock, type TuffBrickWallBlock, type TuffDoubleSlabBlock, type TuffSlabBlock, type TuffStairsBlock, type TuffWallBlock, type TurtleEggBlock, type TurtleEggCount, type TwistingVinesBlock, type UnderwaterTorchBlock, type UnlitRedstoneTorchBlock, type UnpoweredComparatorBlock, type UnpoweredRepeaterBlock, ValidEnum, type VaultBlock, type VaultState, type VerdantFroglightBlock, VerticalHalfTrait, type VineBlock, VoidGenerator, type WallBannerBlock, type WallBlockType, type WallConnectionTypeEast, type WallConnectionTypeNorth, type WallConnectionTypeSouth, type WallConnectionTypeWest, type WallSignBlock, type WarpedButtonBlock, type WarpedDoorBlock, type WarpedDoubleSlabBlock, type WarpedFenceGateBlock, type WarpedHangingSignBlock, type WarpedHyphaeBlock, type WarpedPressurePlateBlock, type WarpedSlabBlock, type WarpedStairsBlock, type WarpedStandingSignBlock, type WarpedStemBlock, type WarpedTrapdoorBlock, type WarpedWallSignBlock, type WaterBlock, type WaxedCopperBulbBlock, type WaxedCopperDoorBlock, type WaxedCopperTrapdoorBlock, type WaxedCutCopperSlabBlock, type WaxedCutCopperStairsBlock, type WaxedDoubleCutCopperSlabBlock, type WaxedExposedCopperBulbBlock, type WaxedExposedCopperDoorBlock, type WaxedExposedCopperTrapdoorBlock, type WaxedExposedCutCopperSlabBlock, type WaxedExposedCutCopperStairsBlock, type WaxedExposedDoubleCutCopperSlabBlock, type WaxedOxidizedCopperBulbBlock, type WaxedOxidizedCopperDoorBlock, type WaxedOxidizedCopperTrapdoorBlock, type WaxedOxidizedCutCopperSlabBlock, type WaxedOxidizedCutCopperStairsBlock, type WaxedOxidizedDoubleCutCopperSlabBlock, type WaxedWeatheredCopperBulbBlock, type WaxedWeatheredCopperDoorBlock, type WaxedWeatheredCopperTrapdoorBlock, type WaxedWeatheredCutCopperSlabBlock, type WaxedWeatheredCutCopperStairsBlock, type WaxedWeatheredDoubleCutCopperSlabBlock, type WeatheredCopperBulbBlock, type WeatheredCopperDoorBlock, type WeatheredCopperTrapdoorBlock, type WeatheredCutCopperSlabBlock, type WeatheredCutCopperStairsBlock, type WeatheredDoubleCutCopperSlabBlock, type WeepingVinesBlock, type WheatBlock, type WhiteCandleBlock, type WhiteCandleCakeBlock, type WhiteGlazedTerracottaBlock, type WhiteTulipBlock, type WoodenButtonBlock, type WoodenDoorBlock, type WoodenPressurePlateBlock, Worker, World, WorldEnum, WorldEvent, type WorldEventSignals, WorldInitializeSignal, type WorldProperties, WorldProvider, type WorldProviderProperties, WorldTickSignal, type YellowCandleBlock, type YellowCandleCakeBlock, type YellowGlazedTerracottaBlock, Zip };