/* Options: Date: 2025-12-05 04:54:10 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetVossTiers.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum ProductTypeEnum { Main, Addon, License, Usage, } enum ProductGroupTypeEnum { Optional, Included, } enum StatusEnum { Active, Terminated, } enum TypeEnum { AtSubscriptionBillingPeriodEnd, AtBindingPeriodEnd, Immediately, } // @DataContract(Name="ProductGroupTagDto") class ProductGroupTagDto implements IConvertible { // @DataMember(Name="type", IsRequired=true) TypeEnum? type; // @DataMember(Name="tag", IsRequired=true) String? tag; ProductGroupTagDto({this.type,this.tag}); ProductGroupTagDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { type = JsonConverters.fromJson(json['Type'],'TypeEnum',context!); tag = json['Tag']; return this; } Map toJson() => { 'type': JsonConverters.toJson(type,'TypeEnum',context!), 'tag': tag }; getTypeName() => "ProductGroupTagDto"; TypeContext? context = _ctx; } // @DataContract(Name="TierProductDto") class TierProductDto implements IConvertible { // @DataMember(Name="type", IsRequired=true) ProductTypeEnum? type; // @DataMember(Name="status", IsRequired=true) StatusEnum? status; // @DataMember(Name="id", IsRequired=true) String? id; // @DataMember(Name="name", IsRequired=true) String? name; // @DataMember(Name="externalId") String? externalId; // @DataMember(Name="articleNumber", IsRequired=true) String? articleNumber; TierProductDto({this.type,this.status,this.id,this.name,this.externalId,this.articleNumber}); TierProductDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { type = JsonConverters.fromJson(json['ProductType'],'ProductTypeEnum',context!); status = JsonConverters.fromJson(json['Status'],'StatusEnum',context!); id = json['Id']; name = json['Name']; externalId = json['ExternalId']; articleNumber = json['ArticleNumber']; return this; } Map toJson() => { 'type': JsonConverters.toJson(type,'ProductTypeEnum',context!), 'status': JsonConverters.toJson(status,'StatusEnum',context!), 'id': id, 'name': name, 'externalId': externalId, 'articleNumber': articleNumber }; getTypeName() => "TierProductDto"; TypeContext? context = _ctx; } // @DataContract(Name="TierProductGroupDto") class TierProductGroupDto implements IConvertible { // @DataMember(Name="productGroupType", IsRequired=true) ProductGroupTypeEnum? productGroupType; // @DataMember(Name="id", IsRequired=true) String? id; // @DataMember(Name="name", IsRequired=true) String? name; // @DataMember(Name="externalId") String? externalId; // @DataMember(Name="tags", EmitDefaultValue=false) List? tags = []; // @DataMember(Name="products", EmitDefaultValue=false) List? products = []; TierProductGroupDto({this.productGroupType,this.id,this.name,this.externalId,this.tags,this.products}); TierProductGroupDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { productGroupType = JsonConverters.fromJson(json['ProductGroupType'],'ProductGroupTypeEnum',context!); id = json['Id']; name = json['Name']; externalId = json['ExternalId']; tags = JsonConverters.fromJson(json['Tags'],'List',context!); products = JsonConverters.fromJson(json['Products'],'List',context!); return this; } Map toJson() => { 'productGroupType': JsonConverters.toJson(productGroupType,'ProductGroupTypeEnum',context!), 'id': id, 'name': name, 'externalId': externalId, 'tags': JsonConverters.toJson(tags,'List',context!), 'products': JsonConverters.toJson(products,'List',context!) }; getTypeName() => "TierProductGroupDto"; TypeContext? context = _ctx; } // @DataContract(Name="TierResult") class TierResult implements IConvertible { // @DataMember(Name="id", IsRequired=true) String? id; // @DataMember(Name="versionId", IsRequired=true) String? versionId; // @DataMember(Name="name", IsRequired=true) String? name; // @DataMember(Name="externalId") String? externalId; // @DataMember(Name="rank") int? rank; // @DataMember(Name="productGroups", EmitDefaultValue=false) List? productGroups = []; TierResult({this.id,this.versionId,this.name,this.externalId,this.rank,this.productGroups}); TierResult.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['Id']; versionId = json['VersionId']; name = json['Name']; externalId = json['ExternalId']; rank = json['Rank']; productGroups = JsonConverters.fromJson(json['ProductGroups'],'List',context!); return this; } Map toJson() => { 'id': id, 'versionId': versionId, 'name': name, 'externalId': externalId, 'rank': rank, 'productGroups': JsonConverters.toJson(productGroups,'List',context!) }; getTypeName() => "TierResult"; TypeContext? context = _ctx; } // @Route("/voss/tiers", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) class GetVossTiers implements IReturn>, IConvertible, IGet { String? PackageId; GetVossTiers({this.PackageId}); GetVossTiers.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PackageId = json['PackageId']; return this; } Map toJson() => { 'PackageId': PackageId }; createResponse() => []; getResponseTypeName() => "List"; getTypeName() => "GetVossTiers"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'testapi.bokamera.se', types: { 'ProductTypeEnum': TypeInfo(TypeOf.Enum, enumValues:ProductTypeEnum.values), 'ProductGroupTypeEnum': TypeInfo(TypeOf.Enum, enumValues:ProductGroupTypeEnum.values), 'StatusEnum': TypeInfo(TypeOf.Enum, enumValues:StatusEnum.values), 'TypeEnum': TypeInfo(TypeOf.Enum, enumValues:TypeEnum.values), 'ProductGroupTagDto': TypeInfo(TypeOf.Class, create:() => ProductGroupTagDto()), 'TierProductDto': TypeInfo(TypeOf.Class, create:() => TierProductDto()), 'TierProductGroupDto': TypeInfo(TypeOf.Class, create:() => TierProductGroupDto()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'TierResult': TypeInfo(TypeOf.Class, create:() => TierResult()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetVossTiers': TypeInfo(TypeOf.Class, create:() => GetVossTiers()), });