/* Options: Date: 2024-07-03 12:37:13 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: UpdateUser.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/users", "PUT") // @ApiResponse(Description="Returned if there is a validation error on the input parameters", StatusCode=400) // @ApiResponse(Description="Returned if the current user is not allowed to perform the action", StatusCode=401) // @ValidateRequest(Validator="IsAuthenticated") public class UpdateUser : IReturn, Codable { public typealias Return = UpdateUserResponse /** * The user id for your profile. */ // @ApiMember(Description="The user id for your profile.") public var userId:String? public var newEmail:String public var userProfile:UpdateCustomerProfile public var adminProfile:UpdateAdminProfile /** * The user realm for identity server. BookMore = 1, BookMoreAdmin = 2 */ // @ApiMember(Description="The user realm for identity server. BookMore = 1, BookMoreAdmin = 2 ", IsRequired=true) public var realm:KeyCloakRealm required public init(){} } public class UpdateUserResponse : Codable { //responseStatus:Object ignored. Type could not be extended in Swift /** * The user id for your profile. */ // @ApiMember(Description="The user id for your profile.", IsRequired=true) public var userId:String? public var userProfile:UserProfileResponse public var adminProfile:AdminProfile public var isSentConfirmationUpdateEmail:Bool? required public init(){} } public enum KeyCloakRealm : Int, Codable { case BookMore = 1 case BookMoreAdmin = 2 case SuperAdmin = 3 } public class UpdateCustomerProfile : Codable { public var firstname:String public var lastname:String public var phone:String public var email:String required public init(){} } public class UpdateAdminProfile : Codable { public var firstname:String public var lastname:String public var phone:String public var email:String required public init(){} } public class UserProfileResponse : Codable { public var id:String public var firstname:String public var lastname:String public var phone:String public var email:String required public init(){} } public class AdminProfile : Codable { public var companyId:String public var id:String public var firstname:String public var lastname:String public var email:String public var workerId:String public var phone:String required public init(){} }