This is the vanilla ingredient type. It is recommended that you use the IIngredient type whenever possible.
This type can automatically be cast from and to IIngredient, though.
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
Ingredient implements the following interfaces. That means all methods defined in these interfaces are also available in Ingredient
Return Type: IIngredient
// Ingredient.asIIngredient() as IIngredient myIngredient.asIIngredient();