import { Performer, PerformerCategory } from "./performers";
/**
* TickPick.API.Models.Events.SearchEventsDataFeedResponse
*/
export interface SearchEventsDataFeedResponse {
events: DataFeedEventResponse[];
featured_events: DataFeedEventResponse[];
return_code: string;
message: string;
client_message: string;
// generated by workers
favorite_performer?: Performer;
}
export type EventTag = "HotEvent" | "RisingEvent" | "FeaturedEvent";
export interface DataFeedEventResponse {
event_id: string;
display_name: string;
event_date: string;
city: string;
state: string;
event_name: string;
main_performer: Performer;
secondary_performers: Performer[];
event_tags?: EventTag[];
tags?: { type: EventTag; precedence?: number }[];
is_favorited?: boolean; // added by workers for iterable
Category: PerformerCategory;
// generated by workers
is_home_standing?: boolean;
}
export type EventInventoryStat = {
event_id: string;
count: number;
max: number;
min: number;
ave: number;
};
/**
* TickPick.API.Models.Entities.EventResponse
*/
export interface EventResponse {
event_id: string;
mid: string;
shid: string;
display_name: string;
description: string;
event_date: string;
event_date_utc: string;
city: string;
state: string;
can_post_highlights: boolean;
has_highlights: boolean;
mobile_transfer_strict: boolean;
account_transfer_strict: boolean;
has_map: boolean;
event_name: string;
event_type: string;
child_category: string;
grandchild_category: string;
main_performer: Performer;
secondary_performers: Performer[];
venue: any;
venue_configuration: any;
buy_url: string;
stats: EventInventoryStat | null;
status: string;
original_event_date: string;
allow_splits: boolean;
sms_transfer_only: boolean;
short_name: string;
event_promotions: any[];
event_tags: string[];
tags?: { type: string; precedence?: number }[];
}