void.cat/VoidCat/Model/Paywall/Paywall.cs

16 lines
442 B
C#
Raw Normal View History

2022-02-21 13:36:22 +00:00
namespace VoidCat.Model.Paywall;
2022-02-21 09:39:59 +00:00
public enum PaywallServices
{
None,
Strike
}
2022-02-21 12:54:57 +00:00
public abstract record PaywallConfig(PaywallServices Service, PaywallMoney Cost);
2022-02-21 13:36:22 +00:00
2022-02-21 14:32:13 +00:00
public record NoPaywallConfig() : PaywallConfig(PaywallServices.None, new PaywallMoney(0m, PaywallCurrencies.BTC));
2022-02-21 13:53:42 +00:00
public record StrikePaywallConfig(PaywallMoney Cost) : PaywallConfig(PaywallServices.Strike, Cost)
2022-02-21 13:36:22 +00:00
{
2022-02-22 14:20:31 +00:00
public string Handle { get; init; } = null!;
2022-02-21 13:36:22 +00:00
}