001package net.minecraft.item.crafting;
002
003import net.minecraft.inventory.InventoryCrafting;
004import net.minecraft.item.ItemStack;
005import net.minecraft.world.World;
006
007public interface IRecipe
008{
009    /**
010     * Used to check if a recipe matches current crafting inventory
011     */
012    boolean matches(InventoryCrafting inventorycrafting, World world);
013
014    /**
015     * Returns an Item that is the result of this recipe
016     */
017    ItemStack getCraftingResult(InventoryCrafting inventorycrafting);
018
019    /**
020     * Returns the size of the recipe area
021     */
022    int getRecipeSize();
023
024    ItemStack getRecipeOutput();
025}