using Models; using System.Collections.Immutable; namespace Services { /// /// This service handles the recipes created by an account /// public interface IAccountOwnedRecipesService { /// /// This service's bound account /// public Account Account { get; } /// /// Upload a new recipe, ensuring the recipe's owner matches the service's bound account user. /// /// The recipe to upload /// true if the recipe could be uploaded, false instead public bool UploadRecipe(Recipe recipe); /// /// Removes a recipe /// /// The informations about the recipe to remove /// true if the recipe could be removed, false instead public bool RemoveRecipe(RecipeInfo info); /// /// The living recipes created by this account. /// If the user removes a recipe (using ) it'll no longer apear in the /// next invocations of this recipe /// /// the list of all the living recipes of the account public ImmutableList GetAccountRecipes(); } }