using Microsoft.AspNetCore.Http; namespace ZelWiki.Library.Interfaces { public interface ISessionState { public IAccountProfile? Profile { get; set; } IQueryCollection? QueryString { get; set; } /// /// Is the current user (or anonymous) allowed to view? /// public bool CanView => true; /// /// Is the current user allowed to edit? /// public bool CanEdit { get; } /// /// Is the current user allowed to perform administrative functions? /// public bool CanAdmin { get; } /// /// Is the current user allowed to moderate content (such as delete comments, and view moderation tools)? /// public bool CanModerate { get; } /// /// Is the current user allowed to create pages? /// public bool CanCreate { get; } /// /// Is the current user allowed to delete unprotected pages? /// public bool CanDelete { get; } public DateTime LocalizeDateTime(DateTime datetime); public TimeZoneInfo GetPreferredTimeZone(); } }