using System; namespace Wino.Core.Domain.Interfaces { public interface IMenuItem { /// /// An id that this menu item holds. /// For an account, it's AccountId. /// For folder, it's FolderId. /// For merged account, it's MergedAccountId. /// Null if it's a menu item that doesn't hold any valuable entity. /// Guid? EntityId { get; } /// /// Is any of the sub items that this menu item contains selected. /// // bool IsChildSelected { get; } /// /// Whether the menu item is expanded or not. /// bool IsExpanded { get; set; } /// /// Whether the menu item is selected or not. /// bool IsSelected { get; set; } /// /// Parent menu item that contains this menu item. /// IMenuItem ParentMenuItem { get; } /// /// Recursively expand all parent menu items if parent exists, starting from parent. /// void Expand(); } }