event-app-api
Version:
Package for easy access to Event App API
299 lines (298 loc) • 7.45 kB
TypeScript
import { AnswersType } from "../event/types";
import { Address } from "../types";
export declare enum NOTE_TYPE {
SESSIONS = "sessions",
EXHIBITIONS = "exhibitions",
PROFILES = "profiles",
DOCUMENTS = "documents",
MEETINGS = "meetings"
}
export type Link = {
rel: string;
uri: string;
};
export type ChatAccount = {
account: string;
password: string;
email: string;
secret: string;
host: string;
chat_email: string;
chat_recipient: number;
chat_sender: number;
};
export type Attendee = {
id: string;
user: string;
event: string;
links: Link[];
salutation: string;
first_name: string;
last_name: string;
chat_recipient: number;
chat_sender: number;
activity: string;
roles: string[];
images: {
avatar: string;
picture: string;
thumbnail: string;
};
job: {
level: string;
title: string;
responsibility: string;
};
address: Address;
company: {
logo: string;
name: string;
size: string;
about: string;
industry: string;
thumbnail: string;
typeOfBusiness: string;
twitter: string;
facebook: string;
linkedin: string;
website1: string;
xing: string;
instagram: string;
investment: string;
};
tags: string[];
matches?: string[];
profile: string;
about?: string;
contact?: any;
favorites?: {
pinnedAttendees: string[];
pinnedSessions: string[];
pinnedExhibitions: string[];
pinnedDocuments: string[];
};
is_me?: boolean;
onsite?: boolean;
public_contact?: Contact;
confirmed_at: string;
onboarding_answers?: {
answers: AnswersType[];
count: number;
};
};
export type AttendeeProfile = Attendee & {
about: string;
tags: string[];
is_active: string;
email: string;
is_onboarded: boolean;
phone: string;
contact?: {
email: string;
phone: string;
mobile: string;
website1: string;
website2: string;
twitter: string;
facebook: string;
linkedin: string;
xing: string;
instagram: string;
};
setting: {
primaryLanguage: "en" | "de";
newsletterSubscription: boolean;
chat: {
sender: number;
recipient: number;
email: string;
password: string;
};
analytics: "1" | "";
advertisementNotification: "1" | "";
chatNotification: "1" | "";
eventNotification: "1" | "";
meetingNotification: "1" | "";
};
public_contact: {
xing: string;
email: string;
phone: string;
mobile: string;
twitter: string;
facebook: string;
linkedin: string;
website1: string;
website2: string;
};
onsite?: boolean;
chat?: string | {
accounts: ChatAccount[];
private_secret: string;
};
secret?: string;
type?: string;
};
export type Speaker = Attendee & {
priority: number;
};
export type GlobalFilter = {
filterLocation: string | string[];
filterNote: string | string[];
sortType: string | string[];
filterCompanySize?: string | string[];
filterRegistrationStatus?: string | string[];
filterCity?: string | string[];
filterIndustry?: string | string[];
speakerType?: string | string[];
filterCheckInAttendeeType?: string | string[];
filterCheckInStatus?: string | string[];
filterStatus?: string | string[];
filterType?: string | string[];
};
export type User = {
id: string;
email: string;
phone: string;
source: string;
email_verified_at: string;
phone_verified_at: string;
is_active: boolean;
created_at: string;
updated_at: string;
links: [
{
rel: string;
uri: string;
}
];
profile: {
data: AttendeeProfile;
};
};
export type AttendeeInput = {
id: string;
is_onboarded: number;
email: string;
salutation: string;
first_name: string;
last_name: string;
phone: string;
about: string;
avatar: string;
address_city: string;
address_state: string;
address_street: string;
address_country: string;
address_postal_code: string;
contact_xing: string;
contact_email: string;
contact_phone: string;
contact_mobile: string;
contact_twitter: string;
contact_facebook: string;
contact_linkedin: string;
contact_instagram: string;
contact_website1: string;
company_xing: string;
company_twitter: string;
company_facebook: string;
company_linkedin: string;
company_instagram: string;
company_website1: string;
contact_website2: string;
job_level: string;
public_contact_email: string;
public_contact_facebook: string;
public_contact_linkedin: string;
public_contact_mobile: string;
public_contact_phone: string;
public_contact_twitter: string;
public_contact_instagram: string;
public_contact_website1: string;
public_contact_website2: string;
public_contact_xing: string;
job_title: string;
job_responsibility: string;
company_logo: string;
company_name: string;
company_size: string;
company_about: string;
company_industry: string;
company_thumbnail: string;
company_type_of_business: string;
company_investment: string;
setting_primary_language: "en" | "de";
setting_newsletter_subscription: boolean;
setting_publicity_email: boolean;
setting_analytics: string;
setting_notification_advertisement: string;
setting_notification_event: string;
setting_notification_meeting: string;
setting_notification_chat: string;
tags: string;
};
export type FetchAuthenticationParams = {
email: string;
password: string;
};
export type AttendeeActionsType = "default" | "meeting" | "lead" | "session" | "admin" | "chat";
export type ActionOnAttendee = "meet" | "chat" | "block" | "pin" | "video" | "cancel" | "edit" | "invite" | "confirm" | "check-in" | "note";
export type NoteActionType = "edit" | "show" | "delete";
export type SuccessResponse = {
message: string;
message_code: number;
status: number;
};
export type CreateAttendeeType = {
role: "de" | "ex" | "sp";
salutation: string;
first_name: string;
last_name: string;
email: string;
company_name: string;
job_title: string;
phone_number: string;
mobile: string;
onsite: "1" | "0";
};
export type Contact = {
email: string;
mobile: string;
phone: string;
website1: string;
website2: string;
xing: string;
instagram: string;
facebook: string;
linkedin: string;
twitter: string;
};
export type Note = {
id: string;
type: string;
message: string;
reference: string;
event: string;
detail: unknown;
updateDate: string;
};
export type NoteUpdateInput = {
message: string;
detail?: unknown;
};
export type NoteInput = {
type: NOTE_TYPE;
reference: string;
event: string;
} & NoteUpdateInput;
export type UserNotification = {
id: string;
message: string;
url: string;
date: string;
viewed: string;
type: string;
event: string;
reference: string;
};