package mezz.jei.api.recipe.transfer; import javax.annotation.Nonnull; import java.util.Collection; /** * Helper functions for implementing an IRecipeTransferHandler */ public interface IRecipeTransferHandlerHelper { /** * Create an error with type INTERNAL. * It is recommended that you also log a message to the console. */ IRecipeTransferError createInternalError(); /** * Create an error with type USER_FACING that shows a tooltip. * * @param tooltipMessage the message to show on the tooltip for the recipe transfer button. */ IRecipeTransferError createUserErrorWithTooltip(@Nonnull String tooltipMessage); /** * Create an error with type USER_FACING that shows a tooltip and highlights missing item slots. * * @param tooltipMessage the message to show on the tooltip for the recipe transfer button. * @param missingItemSlots the slot indexes for items that are missing. Must not be empty. * Slots are indexed according to itemStackGroup.getGuiIngredients() */ IRecipeTransferError createUserErrorForSlots(@Nonnull String tooltipMessage, @Nonnull Collection<Integer> missingItemSlots); }