namespace GameCore.State; public interface IGameStateService { GameStatus CurrentStatus { get; } string CurrentLevelId { get; } IReadOnlyCollection UnlockedLevelIds { get; } void SetStatus(GameStatus newStatus); void StartGame(string startingLevelId); void UnlockLevel(string levelId); void ResetProgress(); }