using System;
using Xamarin.Forms;

namespace InABox.Mobile
{
    public abstract class MobileMenuEntry : BindableObject
    {
        private bool _isVisible;

        public Action VisibleChanged;
        
        public Action AfterClick;

        public bool IsVisible
        {
            get => _isVisible;
            set
            {
                _isVisible = value;
                VisibleChanged?.Invoke();
            } 
        }

        public abstract MobileMenuEntryType Type { get; }
        public int Index { get; set; }

    }
}