/* Options: Date: 2024-12-23 11:30:38 SwiftVersion: 5.0 Version: 8.0 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://consumer-api.brovs.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: FindBoundedMapPlacesRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack public class FindBoundedMapPlacesRequest : IReturn, IGet, IPost, ICacheable, Codable { public typealias Return = FindBoundedMapPlacesResponse public var cacheVersion:Int? public var filter:QueryFilterDto public var bounds:MapBoundsDto required public init(){} } public class FindBoundedMapPlacesResponse : Codable { public var clusters:[FindBoundedMapPinCluster] = [] public var placesWithDisplayLocation:[PlaceWithDisplayLocationDto] = [] public var categoryFacetTrees:[CategoryFacetTreeDto] = [] public var adMessageCount:Int public var adMessageSaveFoodAndMoneyCount:Int? required public init(){} } public class QueryFilterDto : Codable { public var term:String public var placeGuid:String? public var adMessageGuid:String? public var categoryAbsoluteSlugs:[String] = [] public var barSpecialitySlugs:[String] = [] public var barTypeSlugs:[String] = [] public var brandNames:[String] = [] public var cuisineSlugs:[String] = [] public var mealTypeSlugs:[String] = [] public var parking:[Parking] = [] public var paymentOptions:[PaymentOption] = [] public var priceMainDishes:[PriceMainDish] = [] public var eatingSuitabilitySlugs:[String] = [] public var takeAwaySlugs:[String] = [] public var wearPriceProfileSlugs:[String] = [] public var wheelChairAccessible:Bool? public var wifi:Bool? public var outdoorSeating:Bool? public var saveFoodAndMoney:Bool? public var openAt:OpenAtTimeDto required public init(){} } public protocol ICacheable { var cacheVersion:Int? { get set } } public class MapBoundsDto : Codable { public var north:Float? public var south:Float? public var east:Float? public var west:Float? public var clusterZoomLevel:Int? required public init(){} } public class PlaceDto : Codable { public var id:Int public var guid:String public var overview:String public var name:String public var longitude:Float public var latitude:Float public var claimed:Bool public var organizationNumber:String public var countryCode:String public var placeState:String public var followersCount:Int public var openingHours:OpeningHours public var categories:[CategoryTreeDto] = [] public var featureData:[IndividualFeatureDataDto] = [] public var barSpecialities:[BarSpecialityDto] = [] public var barTypes:[BarTypeDto] = [] public var brands:[PlaceSelectedBrandDto] = [] public var cuisines:[CuisineDto] = [] public var mealTypes:[MealTypeDto] = [] public var parking:[ParkingDto] = [] public var paymentOptions:[PaymentOptionDto] = [] public var eatingSuitabilities:[EatingSuitabilityDto] = [] public var takeAways:[TakeAwayDto] = [] public var wearPriceProfiles:[WearPriceProfileDto] = [] public var menus:[MenuDto] = [] public var logoUrl:ImageUrls public var imageUrl:ImageUrls public var wheelchairAccessible:Bool? public var wifi:Bool? public var outdoorSeating:Bool? public var saveFoodAndMoney:Bool? public var placeType:PlaceType public var mall:PlaceBasicDto public var priceMainDish:PriceMainDishDto public var places:[PlaceBasicDto] = [] public var otherServices:[MallOtherServiceDto] = [] public var floor:String public var timeZoneDto:TimeZoneDto public var businessId:Int? public var contact:PlaceContact public var address:PlaceAddress required public init(){} } public class CategoryFacetTreeDto : Codable { public var name:String public var slug:String public var absoluteSlug:String public var featureTypes:[FeatureType] = [] public var type:CategoryFacetTreeType public var count:Int? public var imageUrl:String public var allImageUrl:String public var iconImageUrl:String public var position:Int public var children:[CategoryFacetTreeDto] = [] required public init(){} } public class FindBoundedMapPinCluster : Codable { public var count:Int public var latitude:Float public var longitude:Float required public init(){} } public class PlaceWithDisplayLocationDto : Codable { public var place:PlaceDto public var crowdedMapDisplayLocation:Position required public init(){} } public enum Parking : String, Codable { case StreetParking case ParkingGarageNearby } public enum PaymentOption : String, Codable { case Visa case MasterCard case AmericanExpress case Diners case Vipps } public enum PriceMainDish : String, Codable { case Value case Medium case High case FineDining } public class OpenAtTimeDto : Codable { public var weekDay:DayOfWeek public var hour:Int public var minute:Int required public init(){} } public class OpeningHours : Codable { public var weekly:WeeklyOpeningHours required public init(){} } public class CategoryTreeDto : Codable { public var name:String public var slug:String public var absoluteSlug:String public var imageUrl:String public var allImageUrl:String public var iconImageUrl:String public var position:Int public var children:[CategoryTreeDto] = [] required public init(){} } public class IndividualFeatureDataDto : Codable { public var slug:FeatureType public var label:String required public init(){} } public class BarSpecialityDto : Codable { public var slug:String public var title:String required public init(){} } public class BarTypeDto : Codable { public var slug:String public var title:String required public init(){} } public class PlaceSelectedBrandDto : Codable { public var brand:BrandDto public var categoryAbsoluteSlugs:[String] = [] public var placeCustomBrand:PlaceCustomBrandDto required public init(){} } public class CuisineDto : Codable { public var label:String public var slug:String required public init(){} } public class MealTypeDto : Codable { public var label:String public var slug:String required public init(){} } public class ParkingDto : Codable { public var label:String public var slug:Parking required public init(){} } public class PaymentOptionDto : Codable { public var label:String public var slug:PaymentOption required public init(){} } public class EatingSuitabilityDto : Codable { public var label:String public var slug:String required public init(){} } public class TakeAwayDto : Codable { public var label:String public var slug:String required public init(){} } public class WearPriceProfileDto : Codable { public var slug:String public var label:String required public init(){} } public class MenuDto : Codable { public var name:String public var url:String public var position:Int required public init(){} } public class ImageUrls : Codable { public var preview:String public var small:String public var medium:String public var large:String required public init(){} } public enum PlaceType : String, Codable { case Mall case Regular } public class PlaceBasicDto : Codable { public var id:Int public var guid:String public var overview:String public var name:String public var longitude:Float public var latitude:Float public var claimed:Bool public var organizationNumber:String public var countryCode:String public var openingHours:OpeningHours public var wheelchairAccessible:Bool? public var wifi:Bool? public var outdoorSeating:Bool? public var saveFoodAndMoney:Bool? public var placeType:PlaceType public var priceMainDish:PriceMainDishDto public var timeZoneDto:TimeZoneDto public var businessId:Int? public var contact:PlaceContact public var address:PlaceAddress public var categories:[CategoryTreeDto] = [] public var logoUrl:ImageUrls public var imageUrl:ImageUrls public var wearPriceProfiles:[WearPriceProfileDto] = [] public var brands:[PlaceSelectedBrandDto] = [] public var floor:String required public init(){} } public class PriceMainDishDto : Codable { public var title:String public var slug:PriceMainDish required public init(){} } public class MallOtherServiceDto : Codable { public var serviceName:String public var floor:String 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 PlaceAddress : Codable { public var street:String public var postalCode:String public var region:String public var countryCode:String required public init(){} } public class BrandDto : Codable { public var name:String required public init(){} } public enum FeatureType : String, Codable { case BarSpeciality case BarType case Cuisine case SaveFoodAndMoney case MealType case Menu case OutdoorSeating case Parking case PaymentOptions case PriceMainDish case SubCategories case SubCategoriesAndBrands case EatingSuitabilities case TakeAway case WearPriceProfile case WheelChairAccessible case Wifi case WebShop case Filtering } public enum CategoryFacetTreeType : String, Codable { case Parent case Selected case Available } public class Position : Codable { public var longitude:Float public var latitude:Float required public init(){} } public enum DayOfWeek : String, Codable { case Sunday case Monday case Tuesday case Wednesday case Thursday case Friday case Saturday } public class WeeklyOpeningHours : Codable { public var monday:OpeningHour public var tuesday:OpeningHour public var wednesday:OpeningHour public var thursday:OpeningHour public var friday:OpeningHour public var saturday:OpeningHour public var sunday:OpeningHour required public init(){} } public class PlaceCustomBrandDto : Codable { public var name:String required public init(){} } public class OpeningHour : Codable { public var openAtHour:Int public var openAtMinute:Int public var closeAtHour:Int public var closeAtMinute:Int required public init(){} }