import { ISessionModelAttributes } from "../entity/session.entity";
import { IVenueModelAttributes } from "../entity/venue.entity";
import { IImageResponse } from "../../Base/response/image.response";
import { ISeatDesignData } from "./seat.response";
import { IEventModelAttributes } from "../entity/event.entity";
export interface ISessionResponse extends Omit<ISessionModelAttributes, "venue" | "event"> {
    venue: {
        _id: string;
        name?: string;
        seatPlanImage?: IImageResponse;
        venueDetailImage?: IImageResponse;
        media?: {
            images?: IImageResponse[];
        };
    } | (Pick<IVenueModelAttributes, "_id"> & Partial<Pick<IVenueModelAttributes, "name" | "seatPlanImage" | "venueDetailImage">> & {
        media?: {
            images?: IImageResponse[];
        };
    });
    event?: string | (IEventModelAttributes & {
        information?: {
            title: string;
            media: {
                images: IImageResponse[];
                thumbnail: IImageResponse;
            };
        };
    });
}
export interface ISessionDataResponse extends ISessionModelAttributes {
}
export interface ISessionSeatResponse {
    seatData: ISeatDesignData[] | null;
}
