import { IImageResponse } from "../../Base/response/image.response";
import { IPerformerModelAttributes } from "./performer.entity";
import { ISessionModelAttributes } from "./session.entity";
import { IEventCategoryModelAttributes } from "./eventCategory.entity";
import { IUserModelAttributes } from "./user.entity";
export interface IEventModelAttributes {
    _id: string;
    information: IEventInformation;
    roles: IEventRoles;
    sessions?: (string | ISessionModelAttributes)[];
    performer?: (string | IPerformerModelAttributes)[];
    eventCategory: string | IEventCategoryModelAttributes;
    status: "approved" | "pending";
    createdBy: string | IUserModelAttributes;
    isActive?: boolean;
    deletedAt?: Date | null;
}
export interface IEventRoles {
    age_restriction: string;
    entry_requirements: string;
    prohibited_items: string[];
    additional_info: {
        parking: string;
        food_and_drinks: string;
        accessibility: string;
    };
}
export interface IEventInformation {
    title: string;
    slug: string;
    abstract: string;
    seo: {
        title: string;
        description: string;
        keywords: string[];
    };
    media: {
        images: IImageResponse[];
        thumbnail: IImageResponse;
    };
    isShowAllCities: boolean;
    suggested: string;
    mustKnow: string;
    hasSeat: boolean;
}
