/* Options: Date: 2026-11-07 03:13:30 SwiftVersion: 6.0 Version: 10.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bettor.webhop.biz //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: RegisterOrganization.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/cmd/organizations", "POST") public class RegisterOrganization : IReturn, Codable { public typealias Return = ResponseStatus public var id:String? public var name:String? public var address:Address? public var locale:Locale? public var integrationsData:RecordDictionary? public var winningsExpirationPolicy:WinningsExpirationPolicy? public var nature:OrganizationNature? public var integrations:OrganizationIntegrations? public var payoutPolicy:PayoutPolicy? required public init(){} } public class Ref : Codable { public var id:String? public var val:String? required public init(){} } public class Address : Codable { public var street:String? public var city:String? public var state:String? public var postalCode:String? public var country:Ref? public var gps:GPSCoordinates? public var data:RecordDictionary? required public init(){} } public class Locale : Codable { public var timeZone:Ref? public var currency:Ref? public var language:Ref? required public init(){} } public class RecordDictionary : List { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } public class WinningsExpirationPolicy : Codable { public var enabled:Bool? @TimeSpan public var interval:TimeInterval? required public init(){} } public enum OrganizationNature : Int, Codable { case FirstParty = 1 case Partner = 2 } public class OrganizationIntegrations : Codable { public var firstParty:IntegrationInstance? public var partner:IntegrationInstance? required public init(){} } public class PayoutPolicy : Codable { public var selfService:WalletPayoutMode? public var personal:WalletPayoutMode? required public init(){} } public class IntegrationConnection : Codable { public var url:String? public var credentialsRef:String? required public init(){} } public class GPSCoordinates : Codable { public var lat:Double? public var lng:Double? required public init(){} } public class IntegrationInstance : Codable { public var id:String? public var integrationId:String? public var wallet:IntegrationConnection? public var partnerApi:IntegrationConnection? public var slipForwardingEnabled:Bool? required public init(){} } public enum WalletPayoutMode : Int, Codable { case RealTime = 0 case BatchPayout = 1 }