namespace Engine.Core;
/// 
/// Represents an entity which can be active or not.
/// 
public interface IActive
{
    /// 
    /// Event triggered when the  state of the  changes.
    /// 
    Event OnActiveChanged { get; }
    /// 
    /// The value indicating whether the  is enabled.
    /// 
    bool IsActive { get; }
    readonly record struct ActiveChangedArguments(bool PreviousState);
}