UNPKG

event-app-api

Version:

Package for easy access to Event App API

92 lines (91 loc) 3.14 kB
import { ACTION_CATEGORY, ACTION_NAME, ACTION_RESOURCE_NAME } from "../constants/api"; export type ObjectValue<T extends Record<string, unknown>> = T[keyof T]; export type ValidAttendeeAction = ObjectValue<typeof ATTENDEE_ACTION>; export declare const ATTENDEE_ACTION: { readonly VIEW_PROFILE: "view-profile"; readonly DOWNLOAD_CLICK: "download-click"; readonly CONTACT_CLICK_CHAT: "contact-click-chat"; readonly CONTACT_CLICK_GROUP_CHAT: "contact-click-group-chat"; readonly CONTACT_CLICK_PIN: "contact-click-pin"; readonly CONTACT_CLICK_UNPIN: "contact-click-unpin"; readonly WEBSITE_CLICK_1: "website1-click"; readonly WEBSITE_CLICK_2: "website2-click"; readonly PHONE_CLICK: "phone-click"; readonly MOBILE_CLICK: "mobile-click"; readonly EMAIL_CLICK: "email-click"; readonly SOCIAL_MEDIA_CLICK: "social-media-click"; readonly CREATE_CHAT: "create"; readonly CONTACT_CLICK_MEETING: "contact-click-meeting"; }; export type ValidExhibitionAction = ObjectValue<typeof EXHIBITION_ACTION>; export declare const EXHIBITION_ACTION: { readonly VIEW_BOOTH: "view-booth"; readonly DOWNLOAD_CLICK: "download-click"; readonly VIDEO_CLICK: "video-click"; readonly CONTACT_CLICK_CHAT: "contact-click-chat"; readonly CONTACT_CLICK_PIN: "contact-click-pin"; readonly CONTACT_CLICK_UNPIN: "contact-click-unpin"; readonly CONTACT_CLICK_MEETING: "contact-click-meeting"; readonly SESSION_CLICK: "session-click"; readonly WEBSITE_CLICK: "website-click"; readonly PHONE_CLICK: "phone-click"; readonly EMAIL_CLICK: "email-click"; readonly SOCIAL_MEDIA_CLICK: "social-media-click"; readonly SESSION_SAVED_SEAT: "session-saved-seat"; readonly PINNED_BOOTH: "pinned-booth"; readonly UNPINNED_BOOTH: "unpinned-booth"; }; export type Address = { city: string; state: string; street: string; country: string; postalCode: string; }; export type SuccessResponse = { message: string; message_code: number; status: number; }; export type BadgeConfig = { coffeeCode: string; type: "bluetooth" | "ip"; printerModel: string; qrCodeValue: string; printerPaperSize: string; }; export type ActionName = ObjectValue<typeof ACTION_NAME>; export type ActionCategory = ObjectValue<typeof ACTION_CATEGORY>; export type ActionResourceName = ObjectValue<typeof ACTION_RESOURCE_NAME>; export type ExhibitionReport = { event: string; exhibition: string; action: ActionName; category: ActionCategory; reference: string; type: string; resource: ActionResourceName; }; export type ChatReference = { initiator: string; invited: string[]; message: string; conversation: string; }; export type AttendeeReport = { event: string; action: ActionName; category: ActionCategory; reference: string | ChatReference; type: string; resource: ActionResourceName; }; export type SessionReport = { event: string; session: string; action: ActionName; category: ActionCategory; reference: string; type: any; resource: ActionResourceName; };