using GFramework.Game.Abstractions.Setting;
namespace GFramework.Game.Setting.Events;
///
/// 表示设置重置事件
///
/// 设置节类型
public class SettingsResetEvent(T newSettings) : ISettingsChangedEvent
where T : ISettingsSection
{
///
/// 获取重置后的新设置
///
public T NewSettings { get; } = newSettings;
///
/// 获取类型化的设置实例(返回新设置)
///
public T TypedSettings => NewSettings;
///
/// 获取设置类型
///
public Type SettingsType => typeof(T);
///
/// 获取设置实例
///
public ISettingsSection Settings => NewSettings;
///
/// 获取重置时间
///
public DateTime ChangedAt { get; } = DateTime.UtcNow;
}