2023-02-27 20:45:40 +00:00
|
|
|
import type { DestinationCalendar } from "@prisma/client";
|
2022-04-14 21:25:24 +00:00
|
|
|
|
2022-08-11 00:53:05 +00:00
|
|
|
import type {
|
|
|
|
AdditionalInformation,
|
|
|
|
CalendarEvent,
|
|
|
|
ConferenceData,
|
|
|
|
Person,
|
|
|
|
VideoCallData,
|
|
|
|
} from "@calcom/types/Calendar";
|
2022-04-14 21:25:24 +00:00
|
|
|
|
|
|
|
class CalendarEventClass implements CalendarEvent {
|
|
|
|
type!: string;
|
|
|
|
title!: string;
|
|
|
|
startTime!: string;
|
|
|
|
endTime!: string;
|
|
|
|
organizer!: Person;
|
|
|
|
attendees!: Person[];
|
|
|
|
description?: string | null;
|
2023-02-27 20:45:40 +00:00
|
|
|
team?: { name: string; members: Person[] };
|
2022-04-14 21:25:24 +00:00
|
|
|
location?: string | null;
|
|
|
|
conferenceData?: ConferenceData;
|
2022-06-06 19:49:00 +00:00
|
|
|
additionalInformation?: AdditionalInformation;
|
2022-04-14 21:25:24 +00:00
|
|
|
uid?: string | null;
|
2022-08-11 00:53:05 +00:00
|
|
|
videoCallData?: VideoCallData;
|
2022-04-14 21:25:24 +00:00
|
|
|
paymentInfo?: any;
|
|
|
|
destinationCalendar?: DestinationCalendar | null;
|
|
|
|
cancellationReason?: string | null;
|
|
|
|
rejectionReason?: string | null;
|
|
|
|
hideCalendarNotes?: boolean;
|
2022-04-28 15:05:29 +00:00
|
|
|
additionalNotes?: string | null | undefined;
|
2022-05-05 21:16:25 +00:00
|
|
|
recurrence?: string;
|
2022-04-14 21:25:24 +00:00
|
|
|
|
|
|
|
constructor(initProps?: CalendarEvent) {
|
|
|
|
// If more parameters are given we update this
|
|
|
|
Object.assign(this, initProps);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export { CalendarEventClass };
|