/* Options: Date: 2025-08-05 02:04:03 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://www.asg.com.au/RestApi //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CommentsBatchUpdateRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class CommentResponse implements IConvertible { String? Key; String? Name; String? Message; DateTime? DateCreated; String? ProfilePictureUrl; String? ProfilePictureThumbnailUrl; String? Status; String? Email; String? ThreadKey; String? AuthorIpAddress; String? CustomData; double? Rating; CommentResponse({this.Key,this.Name,this.Message,this.DateCreated,this.ProfilePictureUrl,this.ProfilePictureThumbnailUrl,this.Status,this.Email,this.ThreadKey,this.AuthorIpAddress,this.CustomData,this.Rating}); CommentResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Key = json['Key']; Name = json['Name']; Message = json['Message']; DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!); ProfilePictureUrl = json['ProfilePictureUrl']; ProfilePictureThumbnailUrl = json['ProfilePictureThumbnailUrl']; Status = json['Status']; Email = json['Email']; ThreadKey = json['ThreadKey']; AuthorIpAddress = json['AuthorIpAddress']; CustomData = json['CustomData']; Rating = JsonConverters.toDouble(json['Rating']); return this; } Map toJson() => { 'Key': Key, 'Name': Name, 'Message': Message, 'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!), 'ProfilePictureUrl': ProfilePictureUrl, 'ProfilePictureThumbnailUrl': ProfilePictureThumbnailUrl, 'Status': Status, 'Email': Email, 'ThreadKey': ThreadKey, 'AuthorIpAddress': AuthorIpAddress, 'CustomData': CustomData, 'Rating': Rating }; getTypeName() => "CommentResponse"; TypeContext? context = _ctx; } class CollectionResponse implements IConvertible { int? TotalCount; List? Items; CollectionResponse({this.TotalCount,this.Items}); CollectionResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { TotalCount = json['TotalCount']; Items = JsonConverters.fromJson(json['Items'],'IEnumerable<${runtimeGenericTypeDefs(this,[0]).join(",")}>',context!); return this; } Map toJson() => { 'TotalCount': TotalCount, 'Items': JsonConverters.toJson(Items,'List',context!) }; getTypeName() => "CollectionResponse<$CommentResponse>"; TypeContext? context = _ctx; } // @Route("/comments-api/comments/list", "PUT") class CommentsBatchUpdateRequest implements IReturn>, IConvertible, IPut { List? Key; String? Status; CommentsBatchUpdateRequest({this.Key,this.Status}); CommentsBatchUpdateRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Key = JsonConverters.fromJson(json['Key'],'List',context!); Status = json['Status']; return this; } Map toJson() => { 'Key': JsonConverters.toJson(Key,'List',context!), 'Status': Status }; createResponse() => CollectionResponse(); getResponseTypeName() => "CollectionResponse"; getTypeName() => "CommentsBatchUpdateRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'www.asg.com.au', types: { 'CommentResponse': TypeInfo(TypeOf.Class, create:() => CommentResponse()), 'CollectionResponse': TypeInfo(TypeOf.Class, create:() => CollectionResponse()), 'CommentsBatchUpdateRequest': TypeInfo(TypeOf.Class, create:() => CommentsBatchUpdateRequest()), });