/* Options: Date: 2025-12-06 07:04:23 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://backoffice-api.brovs.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: SearchPlaceRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/place/search", "GET") public class SearchPlaceRequest : IReturn, IGet, Codable { public typealias Return = SearchPlaceResponse public var query:String? public var size:Int? public var offset:Int? required public init(){} } public class SearchPlaceResponse : Codable { public var places:[BackofficePlaceDto] = [] public var total:Int? public var size:Int? public var offset:Int? required public init(){} } public class PlaceAddress : Codable { public var street:String? public var postalCode:String? public var region:String? public var countryCode:String? required public init(){} } public enum PlaceState : String, Codable { case Draft case Active case Paused case Archived } public class CategoryDto : Codable { public var id:Int? public var name:String? public var slug:String? public var absoluteSlug:String? public var parentId:Int? public var state:String? public var position:Int? required public init(){} } public class BackofficePlaceDto : Codable { public var id:Int? public var guid:String? public var name:String? public var longitude:Float? public var latitude:Float? public var rootCategory:CategoryDto? public var claimed:Bool? public var organizationNumber:String? public var state:PlaceState? public var countryCode:String? public var overview:String? public var timeZoneDto:TimeZoneDto? public var businessId:Int? public var contact:PlaceContact? public var address:PlaceAddress? public var backofficeGrantedStaffAccess:[StaffDto] = [] required public init(){} } public class TimeZoneDto : Codable { @TimeSpan public var baseUtcOffset:TimeInterval? public var daylightName:String? public var displayName:String? public var id:String? public var standardName:String? public var supportsDaylightSavingTime:Bool? required public init(){} } public class PlaceContact : Codable { public var phone:String? public var email:String? public var website:String? public var webShop:String? required public init(){} } public class StaffDto : Codable { public var id:Int? public var firstName:String? public var lastName:String? public var email:String? public var role:StaffRole? public var placeId:Int? public var businessId:Int? public var userId:Int? public var placeName:String? public var businessName:String? public var mobileNumber:String? public var businessRole:BusinessRole? public var lastActiveOn:Date? required public init(){} } public enum StaffRole : String, Codable { case Owner case Admin case Regular } public enum BusinessRole : String, Codable { case Owner case Manager case Sales case Marketing case Other }