2017-07-28 06:17:31 +02:00
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using Bit.Core.Models.Table;
|
2017-07-28 18:09:12 +02:00
|
|
|
|
using Bit.Core.Models.Business;
|
2017-07-28 06:17:31 +02:00
|
|
|
|
|
|
|
|
|
namespace Bit.Core.Services
|
|
|
|
|
{
|
|
|
|
|
public interface IPaymentService
|
|
|
|
|
{
|
2017-07-28 18:09:12 +02:00
|
|
|
|
Task CancelAndRecoverChargesAsync(ISubscriber subscriber);
|
2017-07-28 06:17:31 +02:00
|
|
|
|
Task PurchasePremiumAsync(User user, string paymentToken, short additionalStorageGb);
|
2017-07-28 18:09:12 +02:00
|
|
|
|
Task AdjustStorageAsync(IStorableSubscriber storableSubscriber, int additionalStorage, string storagePlanId);
|
|
|
|
|
Task CancelSubscriptionAsync(ISubscriber subscriber, bool endOfPeriod = false);
|
|
|
|
|
Task ReinstateSubscriptionAsync(ISubscriber subscriber);
|
|
|
|
|
Task<bool> UpdatePaymentMethodAsync(ISubscriber subscriber, string paymentToken);
|
|
|
|
|
Task<BillingInfo> GetBillingAsync(ISubscriber subscriber);
|
2017-07-28 06:17:31 +02:00
|
|
|
|
}
|
|
|
|
|
}
|