package net.minecraft.world.level.chunk; import com.mojang.serialization.DataResult; import java.util.List; import java.util.Optional; import java.util.function.Consumer; import java.util.function.Predicate; import java.util.stream.LongStream; import net.minecraft.core.IdMap; import net.minecraft.network.FriendlyByteBuf; public interface PalettedContainerRO { T get(int x, int y, int z); void getAll(Consumer consumer); void write(FriendlyByteBuf buffer); int getSerializedSize(); boolean maybeHas(Predicate filter); void count(PalettedContainer.CountConsumer countConsumer); PalettedContainer copy(); PalettedContainer recreate(); PalettedContainerRO.PackedData pack(IdMap registry, PalettedContainer.Strategy strategy); public record PackedData(List paletteEntries, Optional storage) { } public interface Unpacker> { DataResult read(IdMap idMap, PalettedContainer.Strategy strategy, PalettedContainerRO.PackedData packedData); } }