/* Options: Date: 2024-10-18 04:13:57 SwiftVersion: 5.0 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://digiofficeapigateway.deltares.nl/api //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: CreateDraftCorporateIdentityMail.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack public class CreateDraftCorporateIdentityMail : Outlook365Properties, IReturn { public typealias Return = CorporateIdentityMail public var registrationProfileID:String? public var values:[RegistrationValue] = [] public var processes:[Process] = [] public var documentUploadId:String? public var messageQueueId:String? public var replyEmailHtml:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case registrationProfileID case values case processes case documentUploadId case messageQueueId case replyEmailHtml } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) registrationProfileID = try container.decodeIfPresent(String.self, forKey: .registrationProfileID) values = try container.decodeIfPresent([RegistrationValue].self, forKey: .values) ?? [] processes = try container.decodeIfPresent([Process].self, forKey: .processes) ?? [] documentUploadId = try container.decodeIfPresent(String.self, forKey: .documentUploadId) messageQueueId = try container.decodeIfPresent(String.self, forKey: .messageQueueId) replyEmailHtml = try container.decodeIfPresent(String.self, forKey: .replyEmailHtml) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if registrationProfileID != nil { try container.encode(registrationProfileID, forKey: .registrationProfileID) } if values.count > 0 { try container.encode(values, forKey: .values) } if processes.count > 0 { try container.encode(processes, forKey: .processes) } if documentUploadId != nil { try container.encode(documentUploadId, forKey: .documentUploadId) } if messageQueueId != nil { try container.encode(messageQueueId, forKey: .messageQueueId) } if replyEmailHtml != nil { try container.encode(replyEmailHtml, forKey: .replyEmailHtml) } } } public class CorporateIdentityMail : Codable { public var documentId:String? public var emailHtml:String? public var isRegistered:Bool? public var documentNr:String? public var values:[RegistrationProfileFieldStateBase] = [] public var registrationProfileID:String? public var registerAutomatically:Bool? required public init(){} } public class RegistrationValue : Codable { public var key:String? public var value:String? public var shadowValue:String? required public init(){} } public class Outlook365Properties : Codable { public var pidTag:String? public var itemId:String? public var ewsUrl:String? public var token:String? required public init(){} } public class RegistrationProfileFieldStateBase : Codable { public var documentFieldID:String? public var required:Bool? public var visible:Bool? public var readonly:Bool? required public init(){} } public class Process : Codable { public var id:Int? public var title:String? public var Description:String? public var note:String? public var coordinator:String? public var urgent:Bool? public var transitions:[Transition] = [] required public init(){} } public class Transition : Codable { public var id:String? public var reason:String? public var delayDate:Date? public var delayReason:String? public var userIDs:[Int] = [] public var groupIDs:[Int] = [] required public init(){} }