/* Options: Date: 2025-09-07 08:13:06 Version: 8.81 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://account.servicestack.net //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: QuerySubscriptions.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum SkuType { Product, PerDev, PerCore, Site, Support, Training, Register, Payment, } enum LicenseType { Free, FreeIndividual, FreeOpenSource, Indie, Business, Enterprise, TextIndie, TextBusiness, OrmLiteIndie, OrmLiteBusiness, RedisIndie, RedisBusiness, AwsIndie, AwsBusiness, Trial, Site, TextSite, RedisSite, OrmLiteSite, } class LicenseKey implements IConvertible { String? ref; String? name; LicenseType? type; int? meta; String? hash; String? halg; DateTime? expiry; LicenseKey({this.ref,this.name,this.type,this.meta,this.hash,this.halg,this.expiry}); LicenseKey.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ref = json['ref']; name = json['name']; type = JsonConverters.fromJson(json['type'],'LicenseType',context!); meta = json['meta']; hash = json['hash']; halg = json['halg']; expiry = JsonConverters.fromJson(json['expiry'],'DateTime',context!); return this; } Map toJson() => { 'ref': ref, 'name': name, 'type': JsonConverters.toJson(type,'LicenseType',context!), 'meta': meta, 'hash': hash, 'halg': halg, 'expiry': JsonConverters.toJson(expiry,'DateTime',context!) }; getTypeName() => "LicenseKey"; TypeContext? context = _ctx; } class Subscription implements IConvertible { int? id; int? customerId; String? email; int? skuId; String? skuName; SkuType? skuType; String? code; int? quantity; int? supportQuantity; int? total; bool? isPlan; bool? isRenewal; int? subscriptionDurationDays; DateTime? renewalDate; String? licenseRef; String? licenseName; String? licenseAddress; LicenseType? licenseType; DateTime? expiryDate; LicenseKey? licenseKey; String? licenseKeyText; DateTime? createdDate; DateTime? modifiedDate; DateTime? cancelledDate; String? stripeSubscriptionId; int? emailId; int? emailRenewalId; int? emailExpiredId; int? renewalSubscriptionId; String? externalRef; String? notes; String? error; Subscription({this.id,this.customerId,this.email,this.skuId,this.skuName,this.skuType,this.code,this.quantity,this.supportQuantity,this.total,this.isPlan,this.isRenewal,this.subscriptionDurationDays,this.renewalDate,this.licenseRef,this.licenseName,this.licenseAddress,this.licenseType,this.expiryDate,this.licenseKey,this.licenseKeyText,this.createdDate,this.modifiedDate,this.cancelledDate,this.stripeSubscriptionId,this.emailId,this.emailRenewalId,this.emailExpiredId,this.renewalSubscriptionId,this.externalRef,this.notes,this.error}); Subscription.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; customerId = json['customerId']; email = json['email']; skuId = json['skuId']; skuName = json['skuName']; skuType = JsonConverters.fromJson(json['skuType'],'SkuType',context!); code = json['code']; quantity = json['quantity']; supportQuantity = json['supportQuantity']; total = json['total']; isPlan = json['isPlan']; isRenewal = json['isRenewal']; subscriptionDurationDays = json['subscriptionDurationDays']; renewalDate = JsonConverters.fromJson(json['renewalDate'],'DateTime',context!); licenseRef = json['licenseRef']; licenseName = json['licenseName']; licenseAddress = json['licenseAddress']; licenseType = JsonConverters.fromJson(json['licenseType'],'LicenseType',context!); expiryDate = JsonConverters.fromJson(json['expiryDate'],'DateTime',context!); licenseKey = JsonConverters.fromJson(json['licenseKey'],'LicenseKey',context!); licenseKeyText = json['licenseKeyText']; createdDate = JsonConverters.fromJson(json['createdDate'],'DateTime',context!); modifiedDate = JsonConverters.fromJson(json['modifiedDate'],'DateTime',context!); cancelledDate = JsonConverters.fromJson(json['cancelledDate'],'DateTime',context!); stripeSubscriptionId = json['stripeSubscriptionId']; emailId = json['emailId']; emailRenewalId = json['emailRenewalId']; emailExpiredId = json['emailExpiredId']; renewalSubscriptionId = json['renewalSubscriptionId']; externalRef = json['externalRef']; notes = json['notes']; error = json['error']; return this; } Map toJson() => { 'id': id, 'customerId': customerId, 'email': email, 'skuId': skuId, 'skuName': skuName, 'skuType': JsonConverters.toJson(skuType,'SkuType',context!), 'code': code, 'quantity': quantity, 'supportQuantity': supportQuantity, 'total': total, 'isPlan': isPlan, 'isRenewal': isRenewal, 'subscriptionDurationDays': subscriptionDurationDays, 'renewalDate': JsonConverters.toJson(renewalDate,'DateTime',context!), 'licenseRef': licenseRef, 'licenseName': licenseName, 'licenseAddress': licenseAddress, 'licenseType': JsonConverters.toJson(licenseType,'LicenseType',context!), 'expiryDate': JsonConverters.toJson(expiryDate,'DateTime',context!), 'licenseKey': JsonConverters.toJson(licenseKey,'LicenseKey',context!), 'licenseKeyText': licenseKeyText, 'createdDate': JsonConverters.toJson(createdDate,'DateTime',context!), 'modifiedDate': JsonConverters.toJson(modifiedDate,'DateTime',context!), 'cancelledDate': JsonConverters.toJson(cancelledDate,'DateTime',context!), 'stripeSubscriptionId': stripeSubscriptionId, 'emailId': emailId, 'emailRenewalId': emailRenewalId, 'emailExpiredId': emailExpiredId, 'renewalSubscriptionId': renewalSubscriptionId, 'externalRef': externalRef, 'notes': notes, 'error': error }; getTypeName() => "Subscription"; TypeContext? context = _ctx; } // @Route("/query/subscriptions") // @ValidateRequest(Validator="IsAdmin") // @AutoQueryViewer(DefaultSearchField="Email", DefaultSearchType="Contains", IconUrl="material-icons:person_outline", Title="Subscriptions") class QuerySubscriptions extends QueryDb implements IReturn>, IConvertible, IGet { QuerySubscriptions(); QuerySubscriptions.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "QuerySubscriptions"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'account.servicestack.net', types: { 'SkuType': TypeInfo(TypeOf.Enum, enumValues:SkuType.values), 'LicenseType': TypeInfo(TypeOf.Enum, enumValues:LicenseType.values), 'LicenseKey': TypeInfo(TypeOf.Class, create:() => LicenseKey()), 'Subscription': TypeInfo(TypeOf.Class, create:() => Subscription()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'QuerySubscriptions': TypeInfo(TypeOf.Class, create:() => QuerySubscriptions()), 'List': TypeInfo(TypeOf.Class, create:() => []), });