UNPKG

node-calendly

Version:
156 lines 4.33 kB
/****************************************** * Author : Dr. Sebastian Herden * Created On : Fri Sep 16 2022 * File : Event.ts *******************************************/ import { Cancellation } from './Cancellation'; export declare type EventDefinition = { uri: string; name: string; status: 'active' | 'canceled'; start_time: Date; end_time: Date; event_type: string; location: PhysicalLocation | OutboundCallLocation | InboundCallLocation | GoogleConferenceLocation | ZoomConferenceLocation | GoToMeetingLocation | MicrosoftTeamsConferenceLocation | WebexConferenceLocation | CustomLocation | AskInviteeLocation; invitees_counter: { total: number; active: number; limit: number; }; created_at: Date; updated_at: Date; event_memberships: [ { user: string; } ]; event_guests: [ { email: string; created_at: Date; updated_at: Date; } ]; cancellation?: Cancellation; }; /** * Information about a scheduled meeting. Provides one more method: * - fromJson: Creates an event object from a json object. * @export default * @interface CalendlyEvent * @implements {EventType} * @see https://developer.calendly.com/api-docs/504508461e486-event */ export default class CalendlyEvent implements EventDefinition { uri: string; name: string; status: 'active' | 'canceled'; start_time: Date; end_time: Date; event_type: string; location: PhysicalLocation | OutboundCallLocation | InboundCallLocation | GoogleConferenceLocation | ZoomConferenceLocation | GoToMeetingLocation | MicrosoftTeamsConferenceLocation | WebexConferenceLocation | CustomLocation | AskInviteeLocation; invitees_counter: { total: number; active: number; limit: number; }; created_at: Date; updated_at: Date; event_memberships: [ { user: string; } ]; event_guests: [ { email: string; created_at: Date; updated_at: Date; } ]; cancellation?: Cancellation; uuid: string | undefined; private constructor(); static fromJSON(event: EventDefinition): CalendlyEvent; } export declare type PhysicalLocation = { type: 'physical'; location: string; }; export declare type OutboundCallLocation = { type: 'outbound_call'; location: string; }; export declare type InboundCallLocation = { type: 'inbound_call'; location: string; }; export declare type GoogleConferenceLocation = WebConferenceLocation & { type: 'google_conference'; }; export declare type ZoomConferenceLocation = WebConferenceLocation & { type: 'zoom_conference'; data: { id: string; password: string; settings: { global_dial_in_numbers: [global_dial_in_number]; }; extra: { intl_numbers_url: string; }; }; }; export declare type GoToMeetingLocation = WebConferenceLocation & { type: 'gotomeeting'; data: { uniqueMeetingId: string; conferenceCallInfo: string; }; }; export declare type MicrosoftTeamsConferenceLocation = WebConferenceLocation & { type: 'microsoft_teams_conference'; data: { id: string; audioConferencing: { conferenceId: string; dialinUrl: string; tollNumber: string; }; }; }; export declare type WebexConferenceLocation = WebConferenceLocation & { type: 'webex_conference'; data: { id: string; password: string; telephony: { callInNumbers: [callInNumber]; }; }; }; export declare type CustomLocation = { type: 'custom'; location: string; }; export declare type AskInviteeLocation = { type: 'ask_invitee'; location: string; }; export declare type WebConferenceLocation = { status: 'initiated' | 'processing' | 'pushed' | 'failed'; join_url: string; }; export declare type global_dial_in_number = { number: string; country: string; type: string; city: string; country_name: string; }; export declare type callInNumber = { label: string; callInNumber: string; tollType: string; }; //# sourceMappingURL=Event.d.ts.map