@toutix/whitelabel
Version:
Toutix whitelabel React container components
107 lines • 2.79 kB
TypeScript
import { ICategoryV2 } from "@/app/dashboard/models/EventCategory";
import { ILocationV2 } from "@/app/dashboard/models/Location";
import { IOrganization } from "./Organization";
export interface IEventsResponse {
events: IEventResponse[];
}
interface IEventResponse {
DateTime: string;
Description: string;
EndTime: string;
EntryRequirement: string | null;
EventID: string;
Name: string;
cheapest_ticket_price: number;
image_url: string | null;
location: ILocationResponse;
organizer: IOrganizerResponse;
}
interface ILocationResponse {
Address: string;
Capacity: number;
LocationID: string;
Name: string;
direction_url: string | null;
latitude: string | null;
longitude: string | null;
}
interface IOrganizerResponse {
ContactInfo: string;
Name: string;
OrganizerID: string;
}
export interface IEvents {
events: IEvent[];
}
export interface IEvent {
dateTime: string;
description: string;
endTime: string;
entryRequirement: string | null;
eventID: string;
name: string;
cheapestTicketPrice: number;
imageUrl: string | null;
location: ILocation;
organizer: IOrganizer;
}
interface ILocation {
address: string;
capacity: number;
locationID: string;
name: string;
directionUrl: string | null;
latitude: string | null;
longitude: string | null;
}
interface IOrganizer {
contactInfo: string;
name: string;
organizerID: string;
}
export declare function convertEventsResponse(response: IEventsResponse): IEvents;
export declare function formatDateTime(dateTimeString: string): string;
export interface IEventV2 {
id: string;
name: string;
image: string;
eventImages?: string[];
allowResale: boolean;
startTimeStamp: string;
endTimeStamp: number;
description: string;
htmlDescription: string;
status: string;
category: ICategoryV2;
location: ILocationV2;
organization: IOrganization;
minTicketPrice: number;
maxTicketPrice: number;
hostedEventCount: number;
durationMessage: string;
createdAt: string;
updatedAt: string;
transactionFee: string;
displayPriority: number;
upcomingEvents?: IEventV2[];
isTicketSalesClosed?: boolean;
maxTicketLimit: number;
isSeatingPublished?: boolean;
seatingImage?: string;
}
export interface ICreateEvent extends IEventV2 {
startTime: string;
endTime: string;
locationId: string;
categoryId: string;
}
export declare enum EventStatus {
Published = "PUBLISHED",
Draft = "DRAFT",
SoldOut = "SOLD_OUT",
Blocked = "BLOCKED",
PendingAccept = "PENDING_ACCEPT",
PublishedAsPrivate = "PUBLISHED_AS_PRIVATE"
}
export {};
//# sourceMappingURL=Event.d.ts.map