Files
flatrender/services/identity/FlatRender.IdentitySvc/Application/Services/Interfaces/IPlanService.cs
T

16 lines
693 B
C#
Raw Normal View History

using FlatRender.IdentitySvc.Models.Requests;
using FlatRender.IdentitySvc.Models.Responses;
namespace FlatRender.IdentitySvc.Application.Services.Interfaces;
public interface IPlanService
{
Task<List<PlanResponse>> ListAsync(Guid? tenantId, string? scope);
Task<PlanResponse> GetByIdAsync(Guid planId);
Task<UserPlanResponse?> GetCurrentPlanAsync(Guid userId);
Task<PurchasePlanResponse> PurchasePlanAsync(Guid userId, Guid tenantId, PurchasePlanRequest request);
/// <summary>Cancel the current active plan. The subscription is marked cancelled
/// and will not auto-renew. Access continues until the expiry date.</summary>
Task CancelPlanAsync(Guid userId);
}