Files
calendar/packages/types/CrmService.d.ts
T
Omar LópezandGitHub 7ac7a14beb refactor: improved observability for Salesforce (#18125)
* refactor: better observability for Salesforce

* Update crmManager.ts

* Update CrmService.d.ts
2024-12-11 22:57:43 +00:00

57 lines
1.3 KiB
TypeScript

import type { CalendarEvent, CalEventResponses } from "./Calendar";
export interface CrmData {
id: string;
type: string;
credentialId: number;
password?: string;
url?: string;
}
export interface ContactCreateInput {
email: string;
name: string;
}
export interface Contact {
id: string;
email: string;
ownerId?: string;
ownerEmail?: string;
recordType?: string;
}
export interface CrmEvent {
id: string;
uid?: string;
type?: string;
password?: string;
url?: string;
additionalInfo?: any;
}
export interface CRM {
createEvent: (event: CalendarEvent, contacts: Contact[]) => Promise<CrmEvent | undefined>;
updateEvent: (uid: string, event: CalendarEvent) => Promise<CrmEvent>;
deleteEvent: (uid: string) => Promise<void>;
getContacts: ({
emails,
includeOwner,
forRoundRobinSkip,
}: {
emails: string | string[];
includeOwner?: boolean;
forRoundRobinSkip?: boolean;
}) => Promise<Contact[]>;
createContacts: (
contactsToCreate: ContactCreateInput[],
organizerEmail?: string,
calEventResponses?: CalEventResponses | null
) => Promise<Contact[]>;
getAppOptions: () => any;
handleAttendeeNoShow?: (
bookingUid: string,
attendees: { email: string; noShow: boolean }[]
) => Promise<void>;
}