namespace HyperBooru.Services; public interface IUserStateService { public bool ShowNsfw { get; set; } public event EventHandler ShowNsfwChanged; } public class UserStateService : IUserStateService { public bool ShowNsfw { get => showNsfw; set { showNsfw = value; ShowNsfwChanged?.Invoke(this, value); } } public event EventHandler ShowNsfwChanged; private bool showNsfw = false; }