using System.Collections.Generic;
using Wino.Core.Domain.Models.Folders;
using Wino.Core.Domain.Models.MailItem;
using Wino.Core.Domain.Models.Menus;
namespace Wino.Core.Domain.Interfaces
{
public interface IContextMenuProvider
{
///
/// Calculates and returns available folder operations for the given folder.
///
/// Folder to get actions for.
IEnumerable GetFolderContextMenuActions(IMailItemFolder folderInformation);
///
/// Calculates and returns available context menu items for selected mail items.
///
/// Current folder that asks for the menu items.
/// Selected menu items in the given folder.
IEnumerable GetMailItemContextMenuActions(IMailItemFolder folderInformation, IEnumerable selectedMailItems);
///
/// Calculates and returns available mail operations for mail rendering CommandBar.
///
/// Rendered mail item.
/// Folder that mail item belongs to.
IEnumerable GetMailItemRenderMenuActions(IMailItem mailItem, IMailItemFolder activeFolder, bool isDarkEditor);
}
}