/* Options: Date: 2025-12-06 08:55:26 SwiftVersion: 5.0 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://cochraneplus-api-dev.happen.zone //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: BackgroundLocationReceived.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/location/background", "POST") public class BackgroundLocationReceived : IReturn, IHasApiKey, Codable { public typealias Return = ApiServiceResponse public var apiKey:String public var location:LocationData required public init(){} } public class ApiServiceResponse : IServiceResponse, Codable { public var Description:String public var heading:String public var wasSuccessful:Bool //modelState:Object ignored. Type could not be extended in Swift required public init(){} } public protocol IHasApiKey { var apiKey:String { get set } } public class LocationData : Codable { public var coords:CoordsData public var extras:ExtrasData public var is_moving:Bool public var odometer:Double public var uuid:String public var activity:ActivityData public var battery:BatteryData public var timestamp:Date required public init(){} } public protocol IServiceResponse { var wasSuccessful:Bool { get set } var Description:String { get set } var heading:String { get set } } public class CoordsData : Codable { public var speed:Double public var longitude:Double public var latitude:Double public var accuracy:Double public var altitude:Double public var heading:Double required public init(){} } public class ExtrasData : Codable { public var systemUserId:Int public var deviceId:String required public init(){} } public class ActivityData : Codable { public var type:String public var confidence:Int required public init(){} } public class BatteryData : Codable { public var level:Double public var is_charging:Bool required public init(){} }