/* Options: Date: 2024-05-02 09:24:40 SwiftVersion: 5.0 Version: 8.13 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://techstacks.io //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: GetOrganizationAdmin.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/orgs/{Id}/admin", "GET") public class GetOrganizationAdmin : IReturn, IGet, Codable { public typealias Return = GetOrganizationAdminResponse public var id:Int required public init(){} } public class GetOrganizationAdminResponse : Codable { public var labels:[OrganizationLabel] = [] public var members:[OrganizationMember] = [] public var memberInvites:[OrganizationMemberInvite] = [] public var reportedPosts:[PostReportInfo] = [] public var reportedPostComments:[PostCommentReportInfo] = [] public var responseStatus:ResponseStatus required public init(){} } public enum FlagType : String, Codable { case Violation case Spam case Abusive case Confidential case OffTopic case Other } public class OrganizationLabel : Codable { public var slug:String public var organizationId:Int public var Description:String public var color:String required public init(){} } public class OrganizationMember : Codable { public var id:Int public var organizationId:Int public var userId:Int public var userName:String public var isOwner:Bool public var isModerator:Bool public var denyAll:Bool public var denyPosts:Bool public var denyComments:Bool public var notes:String required public init(){} } public class OrganizationMemberInvite : Codable { public var id:Int public var organizationId:Int public var userId:Int public var userName:String public var dismissed:Date? required public init(){} } public class PostReportInfo : Codable { public var id:Int public var organizationId:Int public var postId:Int public var userId:Int public var userName:String public var flagType:FlagType public var reportNotes:String public var created:Date public var acknowledged:Date? public var acknowledgedBy:String public var dismissed:Date? public var dismissedBy:String public var title:String public var reportCount:Int public var createdBy:String required public init(){} } public class PostCommentReportInfo : Codable { public var id:Int public var organizationId:Int public var postId:Int public var postCommentId:Int public var userId:Int public var userName:String public var flagType:FlagType public var reportNotes:String public var created:Date public var acknowledged:Date? public var acknowledgedBy:String public var dismissed:Date? public var dismissedBy:String public var contentHtml:String public var reportCount:Int public var createdBy:String required public init(){} }