package net.minecraft.world.level.block.state.properties;

interface IBlockState {
#if version >= 1.16
    public abstract String getKeyToken:getName();
#else
    public abstract String getKeyToken:a();
#endif

#if version >= 1.18
    public abstract String getValueToken:getName(Comparable value);
#else
    public abstract String getValueToken:a(Comparable value);
#endif

#if version >= 1.21.2
    public java.util.Collection getValues() {
        return instance.getPossibleValues(); // List -> Collection
    }
#elseif version >= 1.18
    public abstract java.util.Collection getValues:getPossibleValues();
#elseif version >= 1.14.4
    public abstract java.util.Collection getValues();
#elseif version >= 1.13
    public abstract java.util.Collection getValues:d();
#else
    public abstract java.util.Collection getValues:c();
#endif
}