namespace Engine.Core;
/// 
/// Represents a behaviour that any object in the engine that might use to interact with itself or other objects. 
/// 
public interface IBehaviour : IEntity, IActive, IHasBehaviourController, IHasStateEnable
{
    /// 
    /// Event triggered when the priority of the  changes.
    /// 
    Event OnPriorityChanged { get; }
    /// 
    /// The priority of the .
    /// 
    int Priority { get; set; }
    readonly record struct PriorityChangedArguments(int PreviousPriority);
}