/* Options: Date: 2025-12-06 05:25:05 SwiftVersion: 6.0 Version: 8.70 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.sbbet.ath.cx //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: ResolveSlipCancellation.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/cmd/slips/cancellation/resolve", "POST") public class ResolveSlipCancellation : IReturn, Codable { public typealias Return = ResponseStatus public var id:String? public var slipId:String? public var origin:Origin? public var bets:[Bet]? required public init(){} } public class Ref : Codable { public var id:String? public var val:String? required public init(){} } public class RefEx : Ref { public var data:RecordDictionary? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case data } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) data = try container.decodeIfPresent(RecordDictionary.self, forKey: .data) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if data != nil { try container.encode(data, forKey: .data) } } } 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 Origin : Codable { public var application:BettingApp? public var ip:String? public var organization:RefEx? public var region:Ref? public var locationGroup:Ref? public var location:RefEx? public var device:RefEx? public var clerk:Ref? required public init(){} } public class Bet : Codable { public var id:String? public var placementStatus:BetPlacementStatus? public var payload:[String:String]? required public init(){} } public class Bet : Codable { public var id:String? public var slipId:String? public var origin:Origin? public var bettor:Ref? public var placedAt:Date? public var productInstance:ProductInstanceRef? public var status:BetStatus? public var placementStatus:BetPlacementStatus? public var processingStatus:BetProcessingStatus? public var validity:BetValidity? public var payoutStatus:BetPayoutStatus? public var payload:RecordDictionary? public var outcome:BetOutcome? public var payinRecap:PayinRecap? public var possiblePayoutRecap:PayoutRecap? public var actualPayoutRecap:PayoutRecap? public var payoutInfo:OperationInfo? public var cancellationInfo:OperationInfo? required public init(){} } public class BettingApp : Codable { public var name:String? public var version:String? required public init(){} } public class Bet : Codable { public var betId:String? public var productInstance:ProductInstanceRef? public var status:BetStatus? public var placementStatus:BetPlacementStatus? public var processingStatus:BetProcessingStatus? public var validity:BetValidity? public var payoutStatus:BetPayoutStatus? public var payload:RecordDictionary? public var outcome:BetOutcome? public var payinRecap:PayinRecap? public var possiblePayoutRecap:PayoutRecap? public var actualPayoutRecap:PayoutRecap? public var payoutInfo:OperationInfo? public var cancellationInfo:OperationInfo? public var reversionInfo:OperationInfo? public var expirationInfo:OperationInfo? required public init(){} }