import { IStatusResponse } from "../../Base/response/status.response";
import { ICityModelAttributes } from "../entity/city.entity";
import { IEventModelAttributes } from "../entity/event.entity";
import { IPerformerModelAttributes } from "../entity/performer.entity";
import { ISessionModelAttributes } from "../entity/session.entity";
import { IVenueModelAttributes } from "../entity/venue.entity";
export interface IEventsResponse extends Array<IEventModelAttributes & {
    minPrice?: number | null;
}> {
}
export interface IEventVenueResponse extends Omit<IVenueModelAttributes, "seatPlan"> {
    city: ICityModelAttributes;
}
export interface IEventSessionResponse extends Omit<ISessionModelAttributes, "venue"> {
    venue: IEventVenueResponse;
}
export interface IEventResponse extends Omit<IEventModelAttributes, "sessions"> {
    sessions: IEventSessionResponse[];
    inYourCity: IEventSessionResponse[];
    otherCities: IEventSessionResponse[];
    performer: IPerformerModelAttributes[];
    recommended?: Array<IEventModelAttributes & {
        minPrice?: number | null;
    }>;
}
export interface IEventUpsertResponse extends IStatusResponse {
}
export interface IEventDeleteResponse extends IStatusResponse {
}
export {};
