vanilla doesn't expose way to properly pick items from entities (and blocks on older versions) by player, so it might be worth giving API similar to this:
// though, at some point, they start exposing Block#getPickItem
@Environment(EnvType.CLIENT)
public interface PickableBlock {
net.minecraft.item.Item getPickItem();
}
@Environment(EnvType.CLIENT)
public interface PickableEntity {
net.minecraft.item.Item getPickItem();
}
vanilla doesn't expose way to properly pick items from entities (and blocks on older versions) by player, so it might be worth giving API similar to this: