package common.inventory;

import common.item.ItemStack;
import common.util.Facing;

public interface ISidedInventory extends IInventory
{
    int[] getSlotsForFace(Facing side);

    /**
     * Returns true if automation can insert the given item in the given slot from the given side. Args: slot, item,
     * side
     */
    boolean canInsertItem(int index, ItemStack itemStackIn, Facing direction);

    /**
     * Returns true if automation can extract the given item in the given slot from the given side. Args: slot, item,
     * side
     */
    boolean canExtractItem(int index, ItemStack stack, Facing direction);
}
