event-app-api
Version:
Package for easy access to Event App API
594 lines (593 loc) • 13.5 kB
TypeScript
import { Attendee } from "../attendee/types";
import { Address } from "../types";
export type UrlType = "internal" | "external";
export type VideoType = "vimeo" | "youtube" | "zoom" | "jitsi";
export type GroupType = "profile" | "session" | "exhibition" | "stream" | "post" | "event" | "document" | "meeting";
export declare const GROUP_STYLE: ({
"": string;
"1"?: undefined;
"2"?: undefined;
"3"?: undefined;
} | {
"1": string;
""?: undefined;
"2"?: undefined;
"3"?: undefined;
} | {
"2": string;
""?: undefined;
"1"?: undefined;
"3"?: undefined;
} | {
"3": string;
""?: undefined;
"1"?: undefined;
"2"?: undefined;
})[];
export type EventVisibility = "public" | "private" | "event";
export type ExhibitionInput = {
id?: string;
event: string;
name: string;
slug: string;
assigned_to: string;
video_type: string;
video_source: string;
visibility: EventVisibility;
type: ExhibitionType;
priority: number;
tags: string[];
picture: File | string;
location: string;
sessions_list: string[];
exhibitors: string[];
documents_list: string[];
products_list: string[];
company_name: string;
company_size: string;
company_about: string;
company_logo: File | string;
company_industry: string;
company_type_of_business: string;
address_country: string;
address_street: string;
address_city: string;
address_postal_code: string;
contact_website1: string;
contact_email: string;
contact_phone: string;
contact_facebook: string;
contact_twitter: string;
contact_linkedin: string;
contact_xing: string;
published: string;
order: number;
};
export type ZoomParams = {
passWord: string;
email?: string;
name?: string;
leaveUrl: string;
role: number;
meeting: number;
youtubeId?: string;
account?: string;
};
export type Event = {
id: string;
name: string;
slug: string;
start_date: string;
end_date: string;
timezone: string;
language: string;
type: string;
images: EventImageType;
published: number;
description: string;
invited_managers: unknown;
address: Address;
contact: {
xing: string;
email: string;
phone: string;
mobile: string;
twitter: string;
facebook: string;
instagram: string;
website1: string;
website2: string;
linkedin: string;
};
promotion: unknown;
design: Design;
onboarding_questions?: Question[];
streaming: unknown;
tags: string[];
links: {
rel: string;
uri: string;
}[];
coffeeCodes: string;
badge_setting: BadgeSetting;
workshop_planning: WorkshopPlanning;
account: string;
advertisement: Advertisement;
menu: {
items: MenuItemType[];
};
video: {
type: VideoType;
reference: string;
};
attendee?: string;
open_date?: string;
location?: EventLocation;
};
export type Advertisement = {
centerEnabled: boolean;
centerImageBig: string;
centerImageMedium: string;
centerImageSmall: string;
centerUrl: string;
centerUrlType: UrlType;
lobbyEnabled: boolean;
lobbyImageBig: string;
lobbyImageMedium: string;
lobbyImageSmall: string;
lobbyUrl: string;
lobbyUrlType: UrlType;
menuEnabled: boolean;
menuImageBig: string;
menuImageMedium: string;
menuImageSmall: string;
menuUrl: string;
menuUrlType: UrlType;
wallEnabled: boolean;
wallImageBig: string;
wallImageMedium: string;
wallImageSmall: string;
wallUrl: string;
wallUrlType: UrlType;
};
export type MenuItemType = {
name: string;
url: string;
icon: string;
translation: string;
contentUrl: string;
internalUrl: boolean;
contentTemplate: string;
childItems?: string[];
};
export type Design = {
backgroundColor: string;
backgroundDesktopImage: string;
backgroundMobileImage: string;
backgroundTabletImage: string;
headerColor: string;
headerFontColor: string;
themeColor: string;
agendaLobbyImage: string;
speakerLobbyImage: string;
expoLobbyImage: string;
advertisement: Advertisement;
video: {
type: VideoType;
reference: string;
};
};
export type Question = {
answers: Answer[];
color: string;
order: number;
question: string;
id: string;
} & string;
export type Answer = {
answer: string;
order: number;
};
export type Registration = {
confirmed_at: string;
invited_at: string;
approved_at: string;
invited_by: string;
onboarded_at: string;
attendee: string;
event: Event;
roles: string[];
onboarding_answers?: {
answers: AnswersType[];
count: number;
};
};
export type UserRegistrationsEvent = {
registration: Registration;
event: Event;
};
export type EventStream = {
id: string;
name: string;
type: string;
primary: boolean;
event: string;
config: {
host: string;
password: string;
reference: string;
};
updated_at: string;
updated_by: string;
};
export type GroupServerResponse = {
list: string[];
event: string;
id: string;
name: string;
order: number;
style: string;
type: GroupType;
};
export type TicketServerResponse = {
activated_at: string;
attendee_type: string;
code: string;
description: string;
discount_options: string[];
extra_options: string[];
included_options: string[];
hidden: number;
event: string;
id: string;
updated_at: string;
name: string;
visibility: string;
price: number;
priority: number;
onsite: number;
};
export type OptionServerResponse = {
amount: number;
description: string;
event: string;
id: string;
name: string;
price: number;
updated_at: string;
type: string;
privileged_user: string[];
};
export type DocumentType = {
id: string;
name: string;
description: string;
resource?: string;
url?: string;
tags: string[];
type: string;
size: string;
viewers: string[];
rating: unknown;
};
export type Link = {
rel: string;
uri: string;
};
export type ExhibitionType = "lp" | "pp" | "bp";
export type Exhibition = {
id: string;
name: string;
slug: string;
event: string;
assigned_to: string;
visibility: string;
type: ExhibitionType;
priority: number;
company: {
about: string;
industry: string;
logo: string;
name: string;
size: string;
thumbnail: string;
typeOfBusiness: string;
};
video: any;
sessions: string[];
exhibitors: string[];
documents: string[];
products: [];
links: Link[];
location: string;
tags: string[];
images: {
picture: string;
};
contact: {
xing: string;
email: string;
phone: string;
mobile: string;
twitter: string;
website1: string;
facebook: string;
linkedin: string;
};
address: Address;
order: number;
published: string;
};
export type RegisterEventParams = {
eventId: string;
email: string;
first_name: string;
last_name: string;
address_country: string;
company_name: string;
job_title: string;
};
type EventImageType = {
logo: string;
picture: string;
thumbnail: string;
logoTransparent: string;
};
export type EventLocation = {
id: string;
name: string;
description: string;
event: string;
marker: Address & {
latitude: number;
longitude: number;
city: string;
state: string;
street: string;
country: string;
postalCode: string;
};
visibility: string;
virtual: boolean;
images: EventImageType;
links: Link[];
type: "meeting" | "exhibition" | "session";
};
export type EventAnswerQuestion = {
order: number;
answer: string;
};
export type EventQuestion = {
color: string;
order: number;
question: string;
answers: EventAnswerQuestion[];
};
export type AnswersType = {
id: string;
answers: string[];
};
export type EventRegistration = Attendee & {
last_badge_print_at?: string;
first_check_in_at?: string;
confirmed_at?: string;
onsite?: boolean;
};
export type BadgeSetting = {
printerAddress?: string;
planning: boolean;
qrCode: boolean;
};
export type WorkshopPlanning = {
groups: boolean;
count: number;
interval: number;
rounds: number;
};
export type Account = {
id: string;
name: string;
slug: string;
is_test: boolean;
booking_enabled: boolean;
content_managers: string[];
finance_managers: string[];
owner: string;
address: Address;
images: Images;
};
export type Images = {
picture: string;
logo: string;
thumbnail: string;
};
export type StreamInput = {
event: string;
name: any;
primary: number;
type: any;
reference?: string;
};
export type Stream = {
id: string;
name: string;
type: string;
primary: boolean;
event: string;
config: StreamConfig;
links: Link[];
};
export type StreamConfig = {
host: string;
password: string;
reference: string;
};
export type EventServerResponse = {
id: string;
name: string;
slug: string;
start_date: string;
end_date: string;
location: string;
timezone: string;
language: string;
type: string;
about: string;
images: EventImageType;
video: {
type: string;
reference: string;
};
published: boolean;
visibility: string;
description: string;
address: Address;
contact: {
email: string;
mobile: string;
phone: string;
linkedin: string;
twitter: string;
xing: string;
instagram: string;
facebook: string;
website1: string;
website2: string;
};
design: {
themeColor: string;
backgroundColor: string;
headerColor: string;
headerFontColor: string;
backgroundDesktopImage: string;
backgroundMobileImage: string;
backgroundTabletImage: string;
startScreenMobileImage: string;
agendaLobbyImage: string;
speakerLobbyImage: string;
expoLobbyImage: string;
};
advertisement: Advertisement;
translation: {
languagesTranslations: string;
};
menu: any;
promotion: unknown;
onboarding_questions: Question[];
streaming: unknown;
setting: {
domain: string;
recaptcha: string;
emailDomain: string;
emailFrom: string;
emailFromName: string;
templateFormRegistration: string;
templateEmailWelcome: string;
templateEmailConfirmation: string;
sessionPromotion: boolean;
advertisement: boolean;
};
badge_setting: BadgeSetting;
workshop_planning: WorkshopPlanning;
account: string;
payment_accounts: string[];
tags: string[];
updated_at: string;
updated_by: string;
};
export type AccountInput = {
name?: string;
chat_api_user?: string;
chat_api_key?: string;
zoom_api_secret?: string;
zoom_api_key?: string;
slug?: string;
about?: string;
address_street?: string;
address_city?: string;
address_state?: string;
address_postal_code?: string;
address_country?: string;
tags?: string[];
booking_email_template?: string;
booking_pdf_templace?: string;
booking_setting_default_tax?: string;
booking_setting_currency_conversion_rate?: string;
picture?: any;
logo?: any;
};
export type Option = {
id: string;
name: string;
type: string;
price: number;
amount: number;
description: string;
};
export type Order = {
id: string;
code: string;
name: string;
price: number;
onsite: number;
assigned: any;
discount: number;
basePrice: number;
reference: string;
description: string;
attendeeType: string;
discountValue: number;
discountAvailable: boolean;
extraOptions: Option[];
includedOptions: Option[];
};
export type Invoice = {
salutation: string;
firstName: string;
lastName: string;
street: string;
city: string;
state: string;
postalCode: string;
country: string;
mobile: string;
phone: "";
email: string;
companyName: string;
poNumber: string;
vatId: string;
additionalDetails: string;
};
export type Booking = {
id: string;
code: string;
total: number;
sub_total: number;
discount_value: number;
base_price: number;
vat: number;
vat_value: number;
booking_status: string;
booking_date: string;
currency: string;
payment_method: string;
payment_status: string;
last_payment_date: string;
payment_due_date: string;
event: string;
client: string;
belong_to: string;
updated_at: string;
refund_policy: any;
invitation: {
code: any;
campaign: any;
};
attendees: any[];
tickets: string[];
options: string[];
discounts: string[];
order: Order[];
invoice: Invoice;
};
export {};