ConsumerApi

<back to all web services

FindAdMessageRequest

Consumer
Requires Authentication
Required role:Consumer

library ConsumerApi;
import 'package:servicestack/servicestack.dart';

enum Parking
{
    StreetParking,
    ParkingGarageNearby,
}

enum PaymentOption
{
    Visa,
    MasterCard,
    AmericanExpress,
    Diners,
    Vipps,
}

enum PriceMainDish
{
    Value,
    Medium,
    High,
    FineDining,
}

enum DayOfWeek
{
    Sunday,
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday,
}

class OpenAtTimeDto implements IConvertible
{
    DayOfWeek? weekDay;
    int? hour;
    int? minute;

    OpenAtTimeDto({this.weekDay,this.hour,this.minute});
    OpenAtTimeDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        weekDay = JsonConverters.fromJson(json['weekDay'],'DayOfWeek',context!);
        hour = json['hour'];
        minute = json['minute'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'weekDay': JsonConverters.toJson(weekDay,'DayOfWeek',context!),
        'hour': hour,
        'minute': minute
    };

    getTypeName() => "OpenAtTimeDto";
    TypeContext? context = _ctx;
}

class ImageUrls implements IConvertible
{
    String? preview;
    String? small;
    String? medium;
    String? large;

    ImageUrls({this.preview,this.small,this.medium,this.large});
    ImageUrls.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        preview = json['preview'];
        small = json['small'];
        medium = json['medium'];
        large = json['large'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'preview': preview,
        'small': small,
        'medium': medium,
        'large': large
    };

    getTypeName() => "ImageUrls";
    TypeContext? context = _ctx;
}

class OpeningHour implements IConvertible
{
    int? openAtHour;
    int? openAtMinute;
    int? closeAtHour;
    int? closeAtMinute;

    OpeningHour({this.openAtHour,this.openAtMinute,this.closeAtHour,this.closeAtMinute});
    OpeningHour.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        openAtHour = json['openAtHour'];
        openAtMinute = json['openAtMinute'];
        closeAtHour = json['closeAtHour'];
        closeAtMinute = json['closeAtMinute'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'openAtHour': openAtHour,
        'openAtMinute': openAtMinute,
        'closeAtHour': closeAtHour,
        'closeAtMinute': closeAtMinute
    };

    getTypeName() => "OpeningHour";
    TypeContext? context = _ctx;
}

class WeeklyOpeningHours implements IConvertible
{
    OpeningHour? monday;
    OpeningHour? tuesday;
    OpeningHour? wednesday;
    OpeningHour? thursday;
    OpeningHour? friday;
    OpeningHour? saturday;
    OpeningHour? sunday;

    WeeklyOpeningHours({this.monday,this.tuesday,this.wednesday,this.thursday,this.friday,this.saturday,this.sunday});
    WeeklyOpeningHours.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        monday = JsonConverters.fromJson(json['monday'],'OpeningHour',context!);
        tuesday = JsonConverters.fromJson(json['tuesday'],'OpeningHour',context!);
        wednesday = JsonConverters.fromJson(json['wednesday'],'OpeningHour',context!);
        thursday = JsonConverters.fromJson(json['thursday'],'OpeningHour',context!);
        friday = JsonConverters.fromJson(json['friday'],'OpeningHour',context!);
        saturday = JsonConverters.fromJson(json['saturday'],'OpeningHour',context!);
        sunday = JsonConverters.fromJson(json['sunday'],'OpeningHour',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'monday': JsonConverters.toJson(monday,'OpeningHour',context!),
        'tuesday': JsonConverters.toJson(tuesday,'OpeningHour',context!),
        'wednesday': JsonConverters.toJson(wednesday,'OpeningHour',context!),
        'thursday': JsonConverters.toJson(thursday,'OpeningHour',context!),
        'friday': JsonConverters.toJson(friday,'OpeningHour',context!),
        'saturday': JsonConverters.toJson(saturday,'OpeningHour',context!),
        'sunday': JsonConverters.toJson(sunday,'OpeningHour',context!)
    };

    getTypeName() => "WeeklyOpeningHours";
    TypeContext? context = _ctx;
}

class OpeningHours implements IConvertible
{
    WeeklyOpeningHours? weekly;

    OpeningHours({this.weekly});
    OpeningHours.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        weekly = JsonConverters.fromJson(json['weekly'],'WeeklyOpeningHours',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'weekly': JsonConverters.toJson(weekly,'WeeklyOpeningHours',context!)
    };

    getTypeName() => "OpeningHours";
    TypeContext? context = _ctx;
}

enum PlaceType
{
    Mall,
    Regular,
}

class PriceMainDishApiDto implements IConvertible
{
    String? title;
    PriceMainDish? slug;

    PriceMainDishApiDto({this.title,this.slug});
    PriceMainDishApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        title = json['title'];
        slug = JsonConverters.fromJson(json['slug'],'PriceMainDish',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'title': title,
        'slug': JsonConverters.toJson(slug,'PriceMainDish',context!)
    };

    getTypeName() => "PriceMainDishApiDto";
    TypeContext? context = _ctx;
}

class TimeZoneDto implements IConvertible
{
    Duration? baseUtcOffset;
    String? daylightName;
    String? displayName;
    String? id;
    String? standardName;
    bool? supportsDaylightSavingTime;

    TimeZoneDto({this.baseUtcOffset,this.daylightName,this.displayName,this.id,this.standardName,this.supportsDaylightSavingTime});
    TimeZoneDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        baseUtcOffset = JsonConverters.fromJson(json['baseUtcOffset'],'Duration',context!);
        daylightName = json['daylightName'];
        displayName = json['displayName'];
        id = json['id'];
        standardName = json['standardName'];
        supportsDaylightSavingTime = json['supportsDaylightSavingTime'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'baseUtcOffset': JsonConverters.toJson(baseUtcOffset,'Duration',context!),
        'daylightName': daylightName,
        'displayName': displayName,
        'id': id,
        'standardName': standardName,
        'supportsDaylightSavingTime': supportsDaylightSavingTime
    };

    getTypeName() => "TimeZoneDto";
    TypeContext? context = _ctx;
}

class PlaceContact implements IConvertible
{
    String? phone;
    String? email;
    String? website;
    String? webShop;

    PlaceContact({this.phone,this.email,this.website,this.webShop});
    PlaceContact.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        phone = json['phone'];
        email = json['email'];
        website = json['website'];
        webShop = json['webShop'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'phone': phone,
        'email': email,
        'website': website,
        'webShop': webShop
    };

    getTypeName() => "PlaceContact";
    TypeContext? context = _ctx;
}

class PlaceAddress implements IConvertible
{
    String? street;
    String? postalCode;
    String? region;
    String? countryCode;

    PlaceAddress({this.street,this.postalCode,this.region,this.countryCode});
    PlaceAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        street = json['street'];
        postalCode = json['postalCode'];
        region = json['region'];
        countryCode = json['countryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'street': street,
        'postalCode': postalCode,
        'region': region,
        'countryCode': countryCode
    };

    getTypeName() => "PlaceAddress";
    TypeContext? context = _ctx;
}

class CategoryTreeApiDto implements IConvertible
{
    String? name;
    String? slug;
    String? absoluteSlug;
    String? imageUrl;
    String? allImageUrl;
    String? iconImageUrl;
    int? position;
    List<CategoryTreeApiDto>? children = [];

    CategoryTreeApiDto({this.name,this.slug,this.absoluteSlug,this.imageUrl,this.allImageUrl,this.iconImageUrl,this.position,this.children});
    CategoryTreeApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        slug = json['slug'];
        absoluteSlug = json['absoluteSlug'];
        imageUrl = json['imageUrl'];
        allImageUrl = json['allImageUrl'];
        iconImageUrl = json['iconImageUrl'];
        position = json['position'];
        children = JsonConverters.fromJson(json['children'],'List<CategoryTreeApiDto>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'slug': slug,
        'absoluteSlug': absoluteSlug,
        'imageUrl': imageUrl,
        'allImageUrl': allImageUrl,
        'iconImageUrl': iconImageUrl,
        'position': position,
        'children': JsonConverters.toJson(children,'List<CategoryTreeApiDto>',context!)
    };

    getTypeName() => "CategoryTreeApiDto";
    TypeContext? context = _ctx;
}

class WearPriceProfileEsDto implements IConvertible
{
    String? slug;
    String? label;

    WearPriceProfileEsDto({this.slug,this.label});
    WearPriceProfileEsDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        slug = json['slug'];
        label = json['label'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'slug': slug,
        'label': label
    };

    getTypeName() => "WearPriceProfileEsDto";
    TypeContext? context = _ctx;
}

class BrandApiDto implements IConvertible
{
    String? name;

    BrandApiDto({this.name});
    BrandApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name
    };

    getTypeName() => "BrandApiDto";
    TypeContext? context = _ctx;
}

class PlaceCustomBrandApiDto implements IConvertible
{
    String? name;

    PlaceCustomBrandApiDto({this.name});
    PlaceCustomBrandApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name
    };

    getTypeName() => "PlaceCustomBrandApiDto";
    TypeContext? context = _ctx;
}

class PlaceSelectedBrandApiDto implements IConvertible
{
    BrandApiDto? brand;
    List<String>? categoryAbsoluteSlugs = [];
    PlaceCustomBrandApiDto? placeCustomBrand;

    PlaceSelectedBrandApiDto({this.brand,this.categoryAbsoluteSlugs,this.placeCustomBrand});
    PlaceSelectedBrandApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        brand = JsonConverters.fromJson(json['brand'],'BrandApiDto',context!);
        categoryAbsoluteSlugs = JsonConverters.fromJson(json['categoryAbsoluteSlugs'],'List<String>',context!);
        placeCustomBrand = JsonConverters.fromJson(json['placeCustomBrand'],'PlaceCustomBrandApiDto',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'brand': JsonConverters.toJson(brand,'BrandApiDto',context!),
        'categoryAbsoluteSlugs': JsonConverters.toJson(categoryAbsoluteSlugs,'List<String>',context!),
        'placeCustomBrand': JsonConverters.toJson(placeCustomBrand,'PlaceCustomBrandApiDto',context!)
    };

    getTypeName() => "PlaceSelectedBrandApiDto";
    TypeContext? context = _ctx;
}

class PlaceBasicApiDto implements IConvertible
{
    int? id;
    String? guid;
    String? overview;
    String? name;
    double? longitude;
    double? latitude;
    bool? claimed;
    String? organizationNumber;
    String? countryCode;
    OpeningHours? openingHours;
    bool? wheelchairAccessible;
    bool? wifi;
    bool? outdoorSeating;
    bool? saveFoodAndMoney;
    PlaceType? placeType;
    PriceMainDishApiDto? priceMainDish;
    TimeZoneDto? timeZoneDto;
    int? businessId;
    PlaceContact? contact;
    PlaceAddress? address;
    List<CategoryTreeApiDto>? categories = [];
    ImageUrls? logoUrl;
    ImageUrls? imageUrl;
    List<WearPriceProfileEsDto>? wearPriceProfiles = [];
    List<PlaceSelectedBrandApiDto>? brands = [];
    String? floor;

    PlaceBasicApiDto({this.id,this.guid,this.overview,this.name,this.longitude,this.latitude,this.claimed,this.organizationNumber,this.countryCode,this.openingHours,this.wheelchairAccessible,this.wifi,this.outdoorSeating,this.saveFoodAndMoney,this.placeType,this.priceMainDish,this.timeZoneDto,this.businessId,this.contact,this.address,this.categories,this.logoUrl,this.imageUrl,this.wearPriceProfiles,this.brands,this.floor});
    PlaceBasicApiDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        guid = json['guid'];
        overview = json['overview'];
        name = json['name'];
        longitude = JsonConverters.toDouble(json['longitude']);
        latitude = JsonConverters.toDouble(json['latitude']);
        claimed = json['claimed'];
        organizationNumber = json['organizationNumber'];
        countryCode = json['countryCode'];
        openingHours = JsonConverters.fromJson(json['openingHours'],'OpeningHours',context!);
        wheelchairAccessible = json['wheelchairAccessible'];
        wifi = json['wifi'];
        outdoorSeating = json['outdoorSeating'];
        saveFoodAndMoney = json['saveFoodAndMoney'];
        placeType = JsonConverters.fromJson(json['placeType'],'PlaceType',context!);
        priceMainDish = JsonConverters.fromJson(json['priceMainDish'],'PriceMainDishApiDto',context!);
        timeZoneDto = JsonConverters.fromJson(json['timeZoneDto'],'TimeZoneDto',context!);
        businessId = json['businessId'];
        contact = JsonConverters.fromJson(json['contact'],'PlaceContact',context!);
        address = JsonConverters.fromJson(json['address'],'PlaceAddress',context!);
        categories = JsonConverters.fromJson(json['categories'],'List<CategoryTreeApiDto>',context!);
        logoUrl = JsonConverters.fromJson(json['logoUrl'],'ImageUrls',context!);
        imageUrl = JsonConverters.fromJson(json['imageUrl'],'ImageUrls',context!);
        wearPriceProfiles = JsonConverters.fromJson(json['wearPriceProfiles'],'List<WearPriceProfileEsDto>',context!);
        brands = JsonConverters.fromJson(json['brands'],'List<PlaceSelectedBrandApiDto>',context!);
        floor = json['floor'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'guid': guid,
        'overview': overview,
        'name': name,
        'longitude': longitude,
        'latitude': latitude,
        'claimed': claimed,
        'organizationNumber': organizationNumber,
        'countryCode': countryCode,
        'openingHours': JsonConverters.toJson(openingHours,'OpeningHours',context!),
        'wheelchairAccessible': wheelchairAccessible,
        'wifi': wifi,
        'outdoorSeating': outdoorSeating,
        'saveFoodAndMoney': saveFoodAndMoney,
        'placeType': JsonConverters.toJson(placeType,'PlaceType',context!),
        'priceMainDish': JsonConverters.toJson(priceMainDish,'PriceMainDishApiDto',context!),
        'timeZoneDto': JsonConverters.toJson(timeZoneDto,'TimeZoneDto',context!),
        'businessId': businessId,
        'contact': JsonConverters.toJson(contact,'PlaceContact',context!),
        'address': JsonConverters.toJson(address,'PlaceAddress',context!),
        'categories': JsonConverters.toJson(categories,'List<CategoryTreeApiDto>',context!),
        'logoUrl': JsonConverters.toJson(logoUrl,'ImageUrls',context!),
        'imageUrl': JsonConverters.toJson(imageUrl,'ImageUrls',context!),
        'wearPriceProfiles': JsonConverters.toJson(wearPriceProfiles,'List<WearPriceProfileEsDto>',context!),
        'brands': JsonConverters.toJson(brands,'List<PlaceSelectedBrandApiDto>',context!),
        'floor': floor
    };

    getTypeName() => "PlaceBasicApiDto";
    TypeContext? context = _ctx;
}

class AdMessageDetailsBase implements IConvertible
{
    String? description;
    List<String>? moreInformation = [];

    AdMessageDetailsBase({this.description,this.moreInformation});
    AdMessageDetailsBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        description = json['description'];
        moreInformation = JsonConverters.fromJson(json['moreInformation'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'description': description,
        'moreInformation': JsonConverters.toJson(moreInformation,'List<String>',context!)
    };

    getTypeName() => "AdMessageDetailsBase";
    TypeContext? context = _ctx;
}

class AdMessageDetailsPercentageDiscountOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsPercentageDiscountOnAllMerchandise({this.value});
    AdMessageDetailsPercentageDiscountOnAllMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsPercentageDiscountOnAllMerchandise";
    TypeContext? context = _ctx;
}

class AdMessageDetailsPercentageDiscountRangeOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? start;
    double? stop;

    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise({this.start,this.stop});
    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        start = JsonConverters.toDouble(json['start']);
        stop = JsonConverters.toDouble(json['stop']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'start': start,
        'stop': stop
    });

    getTypeName() => "AdMessageDetailsPercentageDiscountRangeOnAllMerchandise";
    TypeContext? context = _ctx;
}

class AdMessageDetailsPercentageDiscountOnSelectedMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsPercentageDiscountOnSelectedMerchandise({this.value});
    AdMessageDetailsPercentageDiscountOnSelectedMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsPercentageDiscountOnSelectedMerchandise";
    TypeContext? context = _ctx;
}

class AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise({this.value});
    AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise";
    TypeContext? context = _ctx;
}

class AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise extends AdMessageDetailsBase implements IConvertible
{
    double? start;
    double? stop;

    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise({this.start,this.stop});
    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        start = JsonConverters.toDouble(json['start']);
        stop = JsonConverters.toDouble(json['stop']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'start': start,
        'stop': stop
    });

    getTypeName() => "AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTotalAmountOverXgivesYdiscount extends AdMessageDetailsBase implements IConvertible
{
    double? ifTotalAmountMoreThanX;
    double? thenYouGetDiscountPercentageY;

    AdMessageDetailsTotalAmountOverXgivesYdiscount({this.ifTotalAmountMoreThanX,this.thenYouGetDiscountPercentageY});
    AdMessageDetailsTotalAmountOverXgivesYdiscount.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ifTotalAmountMoreThanX = JsonConverters.toDouble(json['ifTotalAmountMoreThanX']);
        thenYouGetDiscountPercentageY = JsonConverters.toDouble(json['thenYouGetDiscountPercentageY']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ifTotalAmountMoreThanX': ifTotalAmountMoreThanX,
        'thenYouGetDiscountPercentageY': thenYouGetDiscountPercentageY
    });

    getTypeName() => "AdMessageDetailsTotalAmountOverXgivesYdiscount";
    TypeContext? context = _ctx;
}

class AdMessageDetailsXforYdiscount extends AdMessageDetailsBase implements IConvertible
{
    int? ifYouBuyX;
    int? thenYouGetY;

    AdMessageDetailsXforYdiscount({this.ifYouBuyX,this.thenYouGetY});
    AdMessageDetailsXforYdiscount.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        ifYouBuyX = json['ifYouBuyX'];
        thenYouGetY = json['thenYouGetY'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'ifYouBuyX': ifYouBuyX,
        'thenYouGetY': thenYouGetY
    });

    getTypeName() => "AdMessageDetailsXforYdiscount";
    TypeContext? context = _ctx;
}

class AdMessageDetailsNewArrivals extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsNewArrivals();
    AdMessageDetailsNewArrivals.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsNewArrivals";
    TypeContext? context = _ctx;
}

class AdMessageDetailsFreetext extends AdMessageDetailsBase implements IConvertible
{
    String? title;

    AdMessageDetailsFreetext({this.title});
    AdMessageDetailsFreetext.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        title = json['title'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'title': title
    });

    getTypeName() => "AdMessageDetailsFreetext";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTodaysBreakFastOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsTodaysBreakFastOffer({this.value});
    AdMessageDetailsTodaysBreakFastOffer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsTodaysBreakFastOffer";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTodaysLunchOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsTodaysLunchOffer({this.value});
    AdMessageDetailsTodaysLunchOffer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsTodaysLunchOffer";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTodaysDinnerOffer extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsTodaysDinnerOffer({this.value});
    AdMessageDetailsTodaysDinnerOffer.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsTodaysDinnerOffer";
    TypeContext? context = _ctx;
}

class AdMessageDetailsSaveFoodAndMoney extends AdMessageDetailsBase implements IConvertible
{
    double? value;

    AdMessageDetailsSaveFoodAndMoney({this.value});
    AdMessageDetailsSaveFoodAndMoney.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        value = JsonConverters.toDouble(json['value']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'value': value
    });

    getTypeName() => "AdMessageDetailsSaveFoodAndMoney";
    TypeContext? context = _ctx;
}

class AdMessageDetailsPercentageOffYourFoodBill extends AdMessageDetailsBase implements IConvertible
{
    double? percentage;

    AdMessageDetailsPercentageOffYourFoodBill({this.percentage});
    AdMessageDetailsPercentageOffYourFoodBill.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        percentage = JsonConverters.toDouble(json['percentage']);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'percentage': percentage
    });

    getTypeName() => "AdMessageDetailsPercentageOffYourFoodBill";
    TypeContext? context = _ctx;
}

class AdMessageDetailsHappyHour extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsHappyHour();
    AdMessageDetailsHappyHour.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsHappyHour";
    TypeContext? context = _ctx;
}

class AdMessageDetailsSomeFreeTablesLeftToday extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsSomeFreeTablesLeftToday();
    AdMessageDetailsSomeFreeTablesLeftToday.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsSomeFreeTablesLeftToday";
    TypeContext? context = _ctx;
}

class AdMessageDetailsTwoDishesForThePriceOfOne extends AdMessageDetailsBase implements IConvertible
{
    AdMessageDetailsTwoDishesForThePriceOfOne();
    AdMessageDetailsTwoDishesForThePriceOfOne.fromJson(Map<String, dynamic> json) : super.fromJson(json);
    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson();
    getTypeName() => "AdMessageDetailsTwoDishesForThePriceOfOne";
    TypeContext? context = _ctx;
}

class AdMessageDetailsUnion implements IConvertible
{
    AdMessageDetailsPercentageDiscountOnAllMerchandise? percentageOnAllMerchandise;
    AdMessageDetailsPercentageDiscountRangeOnAllMerchandise? percentageRangeOnAllMerchandise;
    AdMessageDetailsPercentageDiscountOnSelectedMerchandise? percentageOnSelectedMerchandise;
    AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise? absoluteOnSelectedMerchandise;
    AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise? absoluteRangeOnAllMerchandise;
    AdMessageDetailsTotalAmountOverXgivesYdiscount? totalAmountOverXgivesYdiscount;
    AdMessageDetailsXforYdiscount? xforY;
    AdMessageDetailsNewArrivals? newArrivals;
    AdMessageDetailsFreetext? freetext;
    AdMessageDetailsTodaysBreakFastOffer? todaysBreakFastOffer;
    AdMessageDetailsTodaysLunchOffer? todaysLunchOffer;
    AdMessageDetailsTodaysDinnerOffer? todaysDinnerOffer;
    AdMessageDetailsSaveFoodAndMoney? saveFoodAndMoney;
    AdMessageDetailsPercentageOffYourFoodBill? percentageOfYourFoodBill;
    AdMessageDetailsHappyHour? happyHour;
    AdMessageDetailsSomeFreeTablesLeftToday? someFreeTablesLeftToday;
    AdMessageDetailsTwoDishesForThePriceOfOne? twoDishesForThePriceOfOne;

    AdMessageDetailsUnion({this.percentageOnAllMerchandise,this.percentageRangeOnAllMerchandise,this.percentageOnSelectedMerchandise,this.absoluteOnSelectedMerchandise,this.absoluteRangeOnAllMerchandise,this.totalAmountOverXgivesYdiscount,this.xforY,this.newArrivals,this.freetext,this.todaysBreakFastOffer,this.todaysLunchOffer,this.todaysDinnerOffer,this.saveFoodAndMoney,this.percentageOfYourFoodBill,this.happyHour,this.someFreeTablesLeftToday,this.twoDishesForThePriceOfOne});
    AdMessageDetailsUnion.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        percentageOnAllMerchandise = JsonConverters.fromJson(json['percentageOnAllMerchandise'],'AdMessageDetailsPercentageDiscountOnAllMerchandise',context!);
        percentageRangeOnAllMerchandise = JsonConverters.fromJson(json['percentageRangeOnAllMerchandise'],'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise',context!);
        percentageOnSelectedMerchandise = JsonConverters.fromJson(json['percentageOnSelectedMerchandise'],'AdMessageDetailsPercentageDiscountOnSelectedMerchandise',context!);
        absoluteOnSelectedMerchandise = JsonConverters.fromJson(json['absoluteOnSelectedMerchandise'],'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise',context!);
        absoluteRangeOnAllMerchandise = JsonConverters.fromJson(json['absoluteRangeOnAllMerchandise'],'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise',context!);
        totalAmountOverXgivesYdiscount = JsonConverters.fromJson(json['totalAmountOverXgivesYdiscount'],'AdMessageDetailsTotalAmountOverXgivesYdiscount',context!);
        xforY = JsonConverters.fromJson(json['xforY'],'AdMessageDetailsXforYdiscount',context!);
        newArrivals = JsonConverters.fromJson(json['newArrivals'],'AdMessageDetailsNewArrivals',context!);
        freetext = JsonConverters.fromJson(json['freetext'],'AdMessageDetailsFreetext',context!);
        todaysBreakFastOffer = JsonConverters.fromJson(json['todaysBreakFastOffer'],'AdMessageDetailsTodaysBreakFastOffer',context!);
        todaysLunchOffer = JsonConverters.fromJson(json['todaysLunchOffer'],'AdMessageDetailsTodaysLunchOffer',context!);
        todaysDinnerOffer = JsonConverters.fromJson(json['todaysDinnerOffer'],'AdMessageDetailsTodaysDinnerOffer',context!);
        saveFoodAndMoney = JsonConverters.fromJson(json['saveFoodAndMoney'],'AdMessageDetailsSaveFoodAndMoney',context!);
        percentageOfYourFoodBill = JsonConverters.fromJson(json['percentageOfYourFoodBill'],'AdMessageDetailsPercentageOffYourFoodBill',context!);
        happyHour = JsonConverters.fromJson(json['happyHour'],'AdMessageDetailsHappyHour',context!);
        someFreeTablesLeftToday = JsonConverters.fromJson(json['someFreeTablesLeftToday'],'AdMessageDetailsSomeFreeTablesLeftToday',context!);
        twoDishesForThePriceOfOne = JsonConverters.fromJson(json['twoDishesForThePriceOfOne'],'AdMessageDetailsTwoDishesForThePriceOfOne',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'percentageOnAllMerchandise': JsonConverters.toJson(percentageOnAllMerchandise,'AdMessageDetailsPercentageDiscountOnAllMerchandise',context!),
        'percentageRangeOnAllMerchandise': JsonConverters.toJson(percentageRangeOnAllMerchandise,'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise',context!),
        'percentageOnSelectedMerchandise': JsonConverters.toJson(percentageOnSelectedMerchandise,'AdMessageDetailsPercentageDiscountOnSelectedMerchandise',context!),
        'absoluteOnSelectedMerchandise': JsonConverters.toJson(absoluteOnSelectedMerchandise,'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise',context!),
        'absoluteRangeOnAllMerchandise': JsonConverters.toJson(absoluteRangeOnAllMerchandise,'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise',context!),
        'totalAmountOverXgivesYdiscount': JsonConverters.toJson(totalAmountOverXgivesYdiscount,'AdMessageDetailsTotalAmountOverXgivesYdiscount',context!),
        'xforY': JsonConverters.toJson(xforY,'AdMessageDetailsXforYdiscount',context!),
        'newArrivals': JsonConverters.toJson(newArrivals,'AdMessageDetailsNewArrivals',context!),
        'freetext': JsonConverters.toJson(freetext,'AdMessageDetailsFreetext',context!),
        'todaysBreakFastOffer': JsonConverters.toJson(todaysBreakFastOffer,'AdMessageDetailsTodaysBreakFastOffer',context!),
        'todaysLunchOffer': JsonConverters.toJson(todaysLunchOffer,'AdMessageDetailsTodaysLunchOffer',context!),
        'todaysDinnerOffer': JsonConverters.toJson(todaysDinnerOffer,'AdMessageDetailsTodaysDinnerOffer',context!),
        'saveFoodAndMoney': JsonConverters.toJson(saveFoodAndMoney,'AdMessageDetailsSaveFoodAndMoney',context!),
        'percentageOfYourFoodBill': JsonConverters.toJson(percentageOfYourFoodBill,'AdMessageDetailsPercentageOffYourFoodBill',context!),
        'happyHour': JsonConverters.toJson(happyHour,'AdMessageDetailsHappyHour',context!),
        'someFreeTablesLeftToday': JsonConverters.toJson(someFreeTablesLeftToday,'AdMessageDetailsSomeFreeTablesLeftToday',context!),
        'twoDishesForThePriceOfOne': JsonConverters.toJson(twoDishesForThePriceOfOne,'AdMessageDetailsTwoDishesForThePriceOfOne',context!)
    };

    getTypeName() => "AdMessageDetailsUnion";
    TypeContext? context = _ctx;
}

class AdMessageDto implements IConvertible
{
    int? id;
    String? guid;
    String? title;
    DateTime? startAt;
    DateTime? stopAt;
    DateTime? publishAt;
    List<ImageUrls>? imageUrls = [];
    PlaceBasicApiDto? place;
    AdMessageDetailsUnion? detailsUnion;
    int? starredCount;

    AdMessageDto({this.id,this.guid,this.title,this.startAt,this.stopAt,this.publishAt,this.imageUrls,this.place,this.detailsUnion,this.starredCount});
    AdMessageDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        guid = json['guid'];
        title = json['title'];
        startAt = JsonConverters.fromJson(json['startAt'],'DateTime',context!);
        stopAt = JsonConverters.fromJson(json['stopAt'],'DateTime',context!);
        publishAt = JsonConverters.fromJson(json['publishAt'],'DateTime',context!);
        imageUrls = JsonConverters.fromJson(json['imageUrls'],'List<ImageUrls>',context!);
        place = JsonConverters.fromJson(json['place'],'PlaceBasicApiDto',context!);
        detailsUnion = JsonConverters.fromJson(json['detailsUnion'],'AdMessageDetailsUnion',context!);
        starredCount = json['starredCount'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'guid': guid,
        'title': title,
        'startAt': JsonConverters.toJson(startAt,'DateTime',context!),
        'stopAt': JsonConverters.toJson(stopAt,'DateTime',context!),
        'publishAt': JsonConverters.toJson(publishAt,'DateTime',context!),
        'imageUrls': JsonConverters.toJson(imageUrls,'List<ImageUrls>',context!),
        'place': JsonConverters.toJson(place,'PlaceBasicApiDto',context!),
        'detailsUnion': JsonConverters.toJson(detailsUnion,'AdMessageDetailsUnion',context!),
        'starredCount': starredCount
    };

    getTypeName() => "AdMessageDto";
    TypeContext? context = _ctx;
}

enum FeatureType
{
    BarSpeciality,
    BarType,
    Cuisine,
    SaveFoodAndMoney,
    MealType,
    Menu,
    OutdoorSeating,
    Parking,
    PaymentOptions,
    PriceMainDish,
    SubCategories,
    SubCategoriesAndBrands,
    EatingSuitabilities,
    TakeAway,
    WearPriceProfile,
    WheelChairAccessible,
    Wifi,
    WebShop,
    Filtering,
}

TypeContext _ctx = TypeContext(library: 'ConsumerApi', types: <String, TypeInfo> {
    'Parking': TypeInfo(TypeOf.Enum, enumValues:Parking.values),
    'PaymentOption': TypeInfo(TypeOf.Enum, enumValues:PaymentOption.values),
    'PriceMainDish': TypeInfo(TypeOf.Enum, enumValues:PriceMainDish.values),
    'DayOfWeek': TypeInfo(TypeOf.Enum, enumValues:DayOfWeek.values),
    'OpenAtTimeDto': TypeInfo(TypeOf.Class, create:() => OpenAtTimeDto()),
    'ImageUrls': TypeInfo(TypeOf.Class, create:() => ImageUrls()),
    'OpeningHour': TypeInfo(TypeOf.Class, create:() => OpeningHour()),
    'WeeklyOpeningHours': TypeInfo(TypeOf.Class, create:() => WeeklyOpeningHours()),
    'OpeningHours': TypeInfo(TypeOf.Class, create:() => OpeningHours()),
    'PlaceType': TypeInfo(TypeOf.Enum, enumValues:PlaceType.values),
    'PriceMainDishApiDto': TypeInfo(TypeOf.Class, create:() => PriceMainDishApiDto()),
    'TimeZoneDto': TypeInfo(TypeOf.Class, create:() => TimeZoneDto()),
    'PlaceContact': TypeInfo(TypeOf.Class, create:() => PlaceContact()),
    'PlaceAddress': TypeInfo(TypeOf.Class, create:() => PlaceAddress()),
    'CategoryTreeApiDto': TypeInfo(TypeOf.Class, create:() => CategoryTreeApiDto()),
    'List<CategoryTreeApiDto>': TypeInfo(TypeOf.Class, create:() => <CategoryTreeApiDto>[]),
    'WearPriceProfileEsDto': TypeInfo(TypeOf.Class, create:() => WearPriceProfileEsDto()),
    'BrandApiDto': TypeInfo(TypeOf.Class, create:() => BrandApiDto()),
    'PlaceCustomBrandApiDto': TypeInfo(TypeOf.Class, create:() => PlaceCustomBrandApiDto()),
    'PlaceSelectedBrandApiDto': TypeInfo(TypeOf.Class, create:() => PlaceSelectedBrandApiDto()),
    'PlaceBasicApiDto': TypeInfo(TypeOf.Class, create:() => PlaceBasicApiDto()),
    'List<WearPriceProfileEsDto>': TypeInfo(TypeOf.Class, create:() => <WearPriceProfileEsDto>[]),
    'List<PlaceSelectedBrandApiDto>': TypeInfo(TypeOf.Class, create:() => <PlaceSelectedBrandApiDto>[]),
    'AdMessageDetailsBase': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsBase()),
    'AdMessageDetailsPercentageDiscountOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountOnAllMerchandise()),
    'AdMessageDetailsPercentageDiscountRangeOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountRangeOnAllMerchandise()),
    'AdMessageDetailsPercentageDiscountOnSelectedMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageDiscountOnSelectedMerchandise()),
    'AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsAbsoluteDiscountOnSelectedMerchandise()),
    'AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsAbsoluteDiscountRangeOnAllMerchandise()),
    'AdMessageDetailsTotalAmountOverXgivesYdiscount': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTotalAmountOverXgivesYdiscount()),
    'AdMessageDetailsXforYdiscount': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsXforYdiscount()),
    'AdMessageDetailsNewArrivals': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsNewArrivals()),
    'AdMessageDetailsFreetext': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsFreetext()),
    'AdMessageDetailsTodaysBreakFastOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysBreakFastOffer()),
    'AdMessageDetailsTodaysLunchOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysLunchOffer()),
    'AdMessageDetailsTodaysDinnerOffer': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTodaysDinnerOffer()),
    'AdMessageDetailsSaveFoodAndMoney': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsSaveFoodAndMoney()),
    'AdMessageDetailsPercentageOffYourFoodBill': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsPercentageOffYourFoodBill()),
    'AdMessageDetailsHappyHour': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsHappyHour()),
    'AdMessageDetailsSomeFreeTablesLeftToday': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsSomeFreeTablesLeftToday()),
    'AdMessageDetailsTwoDishesForThePriceOfOne': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsTwoDishesForThePriceOfOne()),
    'AdMessageDetailsUnion': TypeInfo(TypeOf.Class, create:() => AdMessageDetailsUnion()),
    'AdMessageDto': TypeInfo(TypeOf.Class, create:() => AdMessageDto()),
    'List<ImageUrls>': TypeInfo(TypeOf.Class, create:() => <ImageUrls>[]),
    'FeatureType': TypeInfo(TypeOf.Enum, enumValues:FeatureType.values),
});

Dart FindAdMessageRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /jsv/reply/FindAdMessageRequest HTTP/1.1 
Host: unstable-consumer-api.brovs.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	offset: 0,
	size: 0,
	resultAt: 0001-01-01,
	filter: 
	{
		term: String,
		placeGuid: 00000000-0000-0000-0000-000000000000,
		adMessageGuid: 00000000-0000-0000-0000-000000000000,
		categoryAbsoluteSlugs: 
		[
			String
		],
		barSpecialitySlugs: 
		[
			String
		],
		barTypeSlugs: 
		[
			String
		],
		brandNames: 
		[
			String
		],
		cuisineSlugs: 
		[
			String
		],
		mealTypeSlugs: 
		[
			String
		],
		parking: 
		[
			StreetParking
		],
		paymentOptions: 
		[
			Visa
		],
		priceMainDishes: 
		[
			Value
		],
		eatingSuitabilitySlugs: 
		[
			String
		],
		takeAwaySlugs: 
		[
			String
		],
		wearPriceProfileSlugs: 
		[
			String
		],
		wheelChairAccessible: False,
		wifi: False,
		outdoorSeating: False,
		saveFoodAndMoney: False,
		openAt: 
		{
			weekDay: Sunday,
			hour: 0,
			minute: 0
		}
	},
	location: 
	{
		longitude: 0,
		latitude: 0,
		searchRadiusInKm: 0
	},
	cacheVersion: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	adMessages: 
	[
		{
			id: 0,
			title: String,
			startAt: 0001-01-01T00:00:00.0000000+00:00,
			stopAt: 0001-01-01T00:00:00.0000000+00:00,
			publishAt: 0001-01-01T00:00:00.0000000+00:00,
			imageUrls: 
			[
				{
					preview: String,
					small: String,
					medium: String,
					large: String
				}
			],
			place: 
			{
				id: 0,
				overview: String,
				name: String,
				longitude: 0,
				latitude: 0,
				claimed: False,
				organizationNumber: String,
				countryCode: String,
				openingHours: 
				{
					weekly: 
					{
						monday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						tuesday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						wednesday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						thursday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						friday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						saturday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						},
						sunday: 
						{
							openAtHour: 0,
							openAtMinute: 0,
							closeAtHour: 0,
							closeAtMinute: 0
						}
					}
				},
				wheelchairAccessible: False,
				wifi: False,
				outdoorSeating: False,
				saveFoodAndMoney: False,
				placeType: Mall,
				priceMainDish: 
				{
					title: String,
					slug: Value
				},
				timeZoneDto: 
				{
					baseUtcOffset: PT0S,
					daylightName: String,
					displayName: String,
					id: String,
					standardName: String,
					supportsDaylightSavingTime: False
				},
				businessId: 0,
				contact: 
				{
					phone: String,
					email: String,
					website: String,
					webShop: String
				},
				address: 
				{
					street: String,
					postalCode: String,
					region: String,
					countryCode: String
				},
				categories: 
				[
					{
						name: String,
						slug: String,
						absoluteSlug: String,
						imageUrl: String,
						allImageUrl: String,
						iconImageUrl: String,
						position: 0,
						children: 
						[
							{
								name: String,
								slug: String,
								absoluteSlug: String,
								imageUrl: String,
								allImageUrl: String,
								iconImageUrl: String,
								position: 0,
								children: 
								[
									{
										name: String,
										slug: String,
										absoluteSlug: String,
										imageUrl: String,
										allImageUrl: String,
										iconImageUrl: String,
										position: 0
									}
								]
							}
						]
					}
				],
				logoUrl: 
				{
					preview: String,
					small: String,
					medium: String,
					large: String
				},
				imageUrl: 
				{
					preview: String,
					small: String,
					medium: String,
					large: String
				},
				wearPriceProfiles: 
				[
					{
						slug: String,
						label: String
					}
				],
				brands: 
				[
					{
						brand: 
						{
							name: String
						},
						categoryAbsoluteSlugs: 
						[
							String
						],
						placeCustomBrand: 
						{
							name: String
						}
					}
				],
				floor: String
			},
			detailsUnion: 
			{
				percentageOnAllMerchandise: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				percentageRangeOnAllMerchandise: 
				{
					start: 0,
					stop: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				percentageOnSelectedMerchandise: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				absoluteOnSelectedMerchandise: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				absoluteRangeOnAllMerchandise: 
				{
					start: 0,
					stop: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				totalAmountOverXgivesYdiscount: 
				{
					ifTotalAmountMoreThanX: 0,
					thenYouGetDiscountPercentageY: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				xforY: 
				{
					ifYouBuyX: 0,
					thenYouGetY: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				newArrivals: 
				{
					description: String,
					moreInformation: 
					[
						String
					]
				},
				freetext: 
				{
					title: String,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				todaysBreakFastOffer: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				todaysLunchOffer: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				todaysDinnerOffer: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				saveFoodAndMoney: 
				{
					value: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				percentageOfYourFoodBill: 
				{
					percentage: 0,
					description: String,
					moreInformation: 
					[
						String
					]
				},
				happyHour: 
				{
					description: String,
					moreInformation: 
					[
						String
					]
				},
				someFreeTablesLeftToday: 
				{
					description: String,
					moreInformation: 
					[
						String
					]
				},
				twoDishesForThePriceOfOne: 
				{
					description: String,
					moreInformation: 
					[
						String
					]
				}
			},
			starredCount: 0
		}
	],
	adMessageCount: 0,
	adMessageSaveFoodAndMoneyCount: 0,
	resultAt: 0001-01-01,
	categoryFacetTrees: 
	[
		{
			name: String,
			slug: String,
			absoluteSlug: String,
			featureTypes: 
			[
				BarSpeciality
			],
			type: Parent,
			count: 0,
			imageUrl: String,
			allImageUrl: String,
			iconImageUrl: String,
			position: 0,
			children: 
			[
				{
					name: String,
					slug: String,
					absoluteSlug: String,
					featureTypes: 
					[
						BarSpeciality
					],
					type: Parent,
					count: 0,
					imageUrl: String,
					allImageUrl: String,
					iconImageUrl: String,
					position: 0,
					children: 
					[
						{
							name: String,
							slug: String,
							absoluteSlug: String,
							featureTypes: 
							[
								BarSpeciality
							],
							type: Parent,
							count: 0,
							imageUrl: String,
							allImageUrl: String,
							iconImageUrl: String,
							position: 0
						}
					]
				}
			]
		}
	]
}