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 {};
