using EnablementDAL.DTO; using GB5Shared.DTO.Framework.Login; using GB5Shared.DTO.Framework.ResponseStandard; namespace EnablementBLL.ShowSpace; // Deliberately a separate interface/class from IShowSpaceBLL — that one is admin CRUD // on MSHOWSPACE; this one answers a different question ("what is the current user's // effective subscription state") for a different caller (the "My Subscriptions" popover's // Spaces section, not the admin screens). public interface IShowSpaceSubscriptionBLL { Task> GetMySpacesAsync(LoginDTO login, CancellationToken ct); Task> SetSubscriptionAsync(int spaceId, bool isSubscribed, LoginDTO login, CancellationToken ct); // ---- Admin tooling ---- Task> GetSpaceSubscriptionOverridesAsync(int spaceId, LoginDTO login, CancellationToken ct); Task> ForceSubscriptionAsync(ForceSpaceSubscriptionDTO dto, LoginDTO login, CancellationToken ct); }