using UnityEngine.Events;

namespace Genesis.POISystem
{
    public interface IInteractablePOI
    {
        public POIData Data { get; }

        public UnityEvent<IInteractablePOI> OnStartPointingEvent { get; }

        public UnityEvent<IInteractablePOI> OnStopPointingEvent { get; }

        public UnityEvent<IInteractablePOI> OnSelectedEvent { get; }

        public UnityEvent<IInteractablePOI> OnDeselectedEvent { get; }

        public void StartPointing();

        public void StopPointing();

        public void Select();

        public void Deselect();
    }
}