/* Options: Date: 2026-08-01 03:26:22 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: RescanSensitivityRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class DocumentShareAccessLog implements IConvertible { int? DocumentShareAccessLogId; int? DocumentShareId; String? AttachmentId; String? EventType; String? Outcome; String? DetailMessage; String? IpAddress; String? UserAgent; String? ActorUserId; String? ActorRole; DateTime? CreatedAtUtc; DocumentShareAccessLog({this.DocumentShareAccessLogId,this.DocumentShareId,this.AttachmentId,this.EventType,this.Outcome,this.DetailMessage,this.IpAddress,this.UserAgent,this.ActorUserId,this.ActorRole,this.CreatedAtUtc}); DocumentShareAccessLog.fromJson(Map json) { fromMap(json); } fromMap(Map json) { DocumentShareAccessLogId = json['DocumentShareAccessLogId']; DocumentShareId = json['DocumentShareId']; AttachmentId = json['AttachmentId']; EventType = json['EventType']; Outcome = json['Outcome']; DetailMessage = json['DetailMessage']; IpAddress = json['IpAddress']; UserAgent = json['UserAgent']; ActorUserId = json['ActorUserId']; ActorRole = json['ActorRole']; CreatedAtUtc = JsonConverters.fromJson(json['CreatedAtUtc'],'DateTime',context!); return this; } Map toJson() => { 'DocumentShareAccessLogId': DocumentShareAccessLogId, 'DocumentShareId': DocumentShareId, 'AttachmentId': AttachmentId, 'EventType': EventType, 'Outcome': Outcome, 'DetailMessage': DetailMessage, 'IpAddress': IpAddress, 'UserAgent': UserAgent, 'ActorUserId': ActorUserId, 'ActorRole': ActorRole, 'CreatedAtUtc': JsonConverters.toJson(CreatedAtUtc,'DateTime',context!) }; getTypeName() => "DocumentShareAccessLog"; TypeContext? context = _ctx; } class DocumentAccessAuditRow extends DocumentShareAccessLog implements IConvertible { String? AccessChannel; String? AttachmentName; String? ActorName; String? RecipientDisplayName; String? RecipientEmail; String? SensitivityTier; bool? IsSensitive; DocumentAccessAuditRow({this.AccessChannel,this.AttachmentName,this.ActorName,this.RecipientDisplayName,this.RecipientEmail,this.SensitivityTier,this.IsSensitive}); DocumentAccessAuditRow.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); AccessChannel = json['AccessChannel']; AttachmentName = json['AttachmentName']; ActorName = json['ActorName']; RecipientDisplayName = json['RecipientDisplayName']; RecipientEmail = json['RecipientEmail']; SensitivityTier = json['SensitivityTier']; IsSensitive = json['IsSensitive']; return this; } Map toJson() => super.toJson()..addAll({ 'AccessChannel': AccessChannel, 'AttachmentName': AttachmentName, 'ActorName': ActorName, 'RecipientDisplayName': RecipientDisplayName, 'RecipientEmail': RecipientEmail, 'SensitivityTier': SensitivityTier, 'IsSensitive': IsSensitive }); getTypeName() => "DocumentAccessAuditRow"; TypeContext? context = _ctx; } class DocumentAccessAuditResponse implements IConvertible { ResponseStatus? ResponseStatus; List? AuditLog = []; int? Total; int? PageTotal; int? Page; int? PageSize; int? Downloads; int? Views; int? Blocked; int? Documents; int? Actors; DocumentAccessAuditResponse({this.ResponseStatus,this.AuditLog,this.Total,this.PageTotal,this.Page,this.PageSize,this.Downloads,this.Views,this.Blocked,this.Documents,this.Actors}); DocumentAccessAuditResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); AuditLog = JsonConverters.fromJson(json['AuditLog'],'List',context!); Total = json['Total']; PageTotal = json['PageTotal']; Page = json['Page']; PageSize = json['PageSize']; Downloads = json['Downloads']; Views = json['Views']; Blocked = json['Blocked']; Documents = json['Documents']; Actors = json['Actors']; return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'AuditLog': JsonConverters.toJson(AuditLog,'List',context!), 'Total': Total, 'PageTotal': PageTotal, 'Page': Page, 'PageSize': PageSize, 'Downloads': Downloads, 'Views': Views, 'Blocked': Blocked, 'Documents': Documents, 'Actors': Actors }; getTypeName() => "DocumentAccessAuditResponse"; TypeContext? context = _ctx; } // @Route("/v1/audit/rescan-sensitivity", "POST,OPTIONS") class RescanSensitivityRequest implements IReturn, IConvertible, IPost { RescanSensitivityRequest(); RescanSensitivityRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => DocumentAccessAuditResponse(); getResponseTypeName() => "DocumentAccessAuditResponse"; getTypeName() => "RescanSensitivityRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'DocumentShareAccessLog': TypeInfo(TypeOf.Class, create:() => DocumentShareAccessLog()), 'DocumentAccessAuditRow': TypeInfo(TypeOf.Class, create:() => DocumentAccessAuditRow()), 'DocumentAccessAuditResponse': TypeInfo(TypeOf.Class, create:() => DocumentAccessAuditResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'RescanSensitivityRequest': TypeInfo(TypeOf.Class, create:() => RescanSensitivityRequest()), });