/* Options: Date: 2026-11-11 14:26:03 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetWorkspaceModulesRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class ModuleLimit implements IConvertible { String? MeterKey; int? Used; int? Allowance; bool? IsReached; ModuleLimit({this.MeterKey,this.Used,this.Allowance,this.IsReached}); ModuleLimit.fromJson(Map json) { fromMap(json); } fromMap(Map json) { MeterKey = json['MeterKey']; Used = json['Used']; Allowance = json['Allowance']; IsReached = json['IsReached']; return this; } Map toJson() => { 'MeterKey': MeterKey, 'Used': Used, 'Allowance': Allowance, 'IsReached': IsReached }; getTypeName() => "ModuleLimit"; TypeContext? context = _ctx; } class WorkspaceModuleFeature implements IConvertible { String? Key; String? Name; bool? Enabled; bool? InPack; String? Group; String? Description; bool? IsOn; bool? Entitled; String? Reason; String? ModuleKey; String? ModuleName; String? ModuleStatus; DateTime? ModuleExpiresAt; ModuleLimit? Limit; WorkspaceModuleFeature({this.Key,this.Name,this.Enabled,this.InPack,this.Group,this.Description,this.IsOn,this.Entitled,this.Reason,this.ModuleKey,this.ModuleName,this.ModuleStatus,this.ModuleExpiresAt,this.Limit}); WorkspaceModuleFeature.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Key = json['Key']; Name = json['Name']; Enabled = json['Enabled']; InPack = json['InPack']; Group = json['Group']; Description = json['Description']; IsOn = json['IsOn']; Entitled = json['Entitled']; Reason = json['Reason']; ModuleKey = json['ModuleKey']; ModuleName = json['ModuleName']; ModuleStatus = json['ModuleStatus']; ModuleExpiresAt = JsonConverters.fromJson(json['ModuleExpiresAt'],'DateTime',context!); Limit = JsonConverters.fromJson(json['Limit'],'ModuleLimit',context!); return this; } Map toJson() => { 'Key': Key, 'Name': Name, 'Enabled': Enabled, 'InPack': InPack, 'Group': Group, 'Description': Description, 'IsOn': IsOn, 'Entitled': Entitled, 'Reason': Reason, 'ModuleKey': ModuleKey, 'ModuleName': ModuleName, 'ModuleStatus': ModuleStatus, 'ModuleExpiresAt': JsonConverters.toJson(ModuleExpiresAt,'DateTime',context!), 'Limit': JsonConverters.toJson(Limit,'ModuleLimit',context!) }; getTypeName() => "WorkspaceModuleFeature"; TypeContext? context = _ctx; } class WorkspaceModule implements IConvertible { String? Key; String? Name; String? Letter; String? Color; String? Question; String? Description; List? Features = []; WorkspaceModule({this.Key,this.Name,this.Letter,this.Color,this.Question,this.Description,this.Features}); WorkspaceModule.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Key = json['Key']; Name = json['Name']; Letter = json['Letter']; Color = json['Color']; Question = json['Question']; Description = json['Description']; Features = JsonConverters.fromJson(json['Features'],'List',context!); return this; } Map toJson() => { 'Key': Key, 'Name': Name, 'Letter': Letter, 'Color': Color, 'Question': Question, 'Description': Description, 'Features': JsonConverters.toJson(Features,'List',context!) }; getTypeName() => "WorkspaceModule"; TypeContext? context = _ctx; } class WorkspaceRequestMark implements IConvertible { String? Kind; String? Key; List? Features = []; DateTime? RequestedAt; WorkspaceRequestMark({this.Kind,this.Key,this.Features,this.RequestedAt}); WorkspaceRequestMark.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Kind = json['Kind']; Key = json['Key']; Features = JsonConverters.fromJson(json['Features'],'List',context!); RequestedAt = JsonConverters.fromJson(json['RequestedAt'],'DateTime',context!); return this; } Map toJson() => { 'Kind': Kind, 'Key': Key, 'Features': JsonConverters.toJson(Features,'List',context!), 'RequestedAt': JsonConverters.toJson(RequestedAt,'DateTime',context!) }; getTypeName() => "WorkspaceRequestMark"; TypeContext? context = _ctx; } class WorkspaceModulesResponse implements IConvertible { List? Modules = []; String? PackName; List? Requests = []; ResponseStatus? ResponseStatus; WorkspaceModulesResponse({this.Modules,this.PackName,this.Requests,this.ResponseStatus}); WorkspaceModulesResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Modules = JsonConverters.fromJson(json['Modules'],'List',context!); PackName = json['PackName']; Requests = JsonConverters.fromJson(json['Requests'],'List',context!); ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Modules': JsonConverters.toJson(Modules,'List',context!), 'PackName': PackName, 'Requests': JsonConverters.toJson(Requests,'List',context!), 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "WorkspaceModulesResponse"; TypeContext? context = _ctx; } // @Route("/v1/workspace/modules", "GET,OPTIONS") class GetWorkspaceModulesRequest implements IReturn, IConvertible, IGet { GetWorkspaceModulesRequest(); GetWorkspaceModulesRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => WorkspaceModulesResponse(); getResponseTypeName() => "WorkspaceModulesResponse"; getTypeName() => "GetWorkspaceModulesRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'ModuleLimit': TypeInfo(TypeOf.Class, create:() => ModuleLimit()), 'WorkspaceModuleFeature': TypeInfo(TypeOf.Class, create:() => WorkspaceModuleFeature()), 'WorkspaceModule': TypeInfo(TypeOf.Class, create:() => WorkspaceModule()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'WorkspaceRequestMark': TypeInfo(TypeOf.Class, create:() => WorkspaceRequestMark()), 'WorkspaceModulesResponse': TypeInfo(TypeOf.Class, create:() => WorkspaceModulesResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetWorkspaceModulesRequest': TypeInfo(TypeOf.Class, create:() => GetWorkspaceModulesRequest()), });