interface SeatMapResponse { data: any; success: boolean; error: boolean; message: string; status: number; } interface IMapContainerProps { event: any; mapContainerId?: string; timerMessage?: string | Node; onAddToCartSuccess?: (data: any) => void; onCountdownFinish?: any; ticketDeleteButtonContent?: string | Node; ticketInfoContent?: string | Node; } interface ISeatMapContainerProps { seatMapProps: { seatData: any; statuses: any; seatMapEvents: any; seatMapType: string | null; ticketTypeTierRelations: any; tierPrices: any; isReserving: boolean; predefinedSeats: any; isLoadingSeatMapData: boolean; }; loading?: boolean; mapContainerId?: string; } interface SeatMapResponseData { attributes: any; relationships: any[]; type: string; } interface TicketTypeTierRelationsData { ticket_type_id: string; ticket_type_deposit: string; ticket_type_max_number_of_guests: string; ticket_type_min_number_of_guests: string; ticket_type_tier_id: number; ticket_type_name: string; ticket_type_option: string; ticket_type_price: number; ticket_quantity: number; multiplier: number; sort_order: string; ticket_quantity_limit_type: string; guest_price: string; description: string | null; fee_included: boolean; } interface TicketTypeTierRelations { [key: string]: { [key: string]: TicketTypeTierRelationsData; }; } interface SeatMapDataAttributes { seatMapType: string | null; seatReservationTime: number; ticketTypeTierRelations: TicketTypeTierRelations; tierNames: { [key: string]: string; }; tierPrices: { [key: string]: string; }; seatData: string; eventSeats: EventSeat[]; predefinedSeats: any; } interface SeatMapData extends SeatMapResponseData { attributes: SeatMapDataAttributes; } interface SeatMapStatuses extends SeatMapResponseData { attributes: any; } interface SeatMapDataResponse extends SeatMapResponse { data: SeatMapData; } interface SeatMapStatusesResponse extends SeatMapResponse { data: SeatMapStatuses; } interface ISeatMapContainerProps { seatMapProps: { seatData: any; statuses: any; seatMapEvents: any; seatMapType?: string; ticketTypeTierRelations: any; isReserving: boolean; predefinedSeats: any; }; mapContainerId?: string; } interface SeatReservationData { seatId: string; tierId: string; type: string; } interface EventSeat { label: string; ticket_type_id: Array; seats: any; ticketing_engine_id: number | string; tier_id: number | string; seats: { [key: string]: number; }; } interface ITicketsSectionProps { ticketTypeTierRelations: TicketTypeTierRelations; reservedSeats: Array; handleCancelReservation: any; isAddingToCart: boolean; handleGetTicketClick: any; currencySymbol: string; handleTicketSelect: any; selectedTickets: { [seatId: string]: string }; theme?: 'light' | 'dark'; getTicketsBtnLabel?: string; contentStyle?: React.CSSProperties; isButtonScrollable?: boolean; ticketDeleteButtonContent?: string | Node; ticketInfoContent?: string | Node; tableMapEnabled?: boolean; guestCounts?: any; setGuestCounts?: any; } interface ITicketDropdownOption { ticket_type_tier_id: number | string; ticket_type_name: string; ticket_type_price: number | string; ticket_type_id: string; } interface ITicketsDropdownsData { seatId: string; tierId: string; ticketsData: Array; }