import { Attendee, Contact } from "../attendee/types";
import { PackageType } from "../authentication/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" | "speaker";
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;
    eventLogoPosSvg: string;
    eventLogoNegSvg: 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;
    category?: string;
};
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 GeneralUser = {
    user: string;
    profile: string;
    email: string;
    first_name: string;
    last_name: string;
};
/**
 * /accounts/{accountId}
 */
export type AccountDetails = {
    id: string;
    name: string;
    slug: string;
    is_test: boolean;
    booking_enabled: boolean;
    about: string;
    chat: {
        host: string;
        apiKey: string;
        apiUser: string;
        secret: string;
    };
    stream: {
        zoomApiKey: string;
        zoomApiSecret: string;
        zoomHost: string;
    };
    content_managers: GeneralUser[];
    finance_managers: string[];
    owner: GeneralUser;
    address: Address;
    images: Images;
    contact: Contact;
    booking_setting: {
        defaultTax: string;
        currencyConversionRate: string;
    };
    tags: string[];
    links: {
        name: string;
        url: string;
        lang: string;
    }[];
    packages: PackageType[];
};
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 OnboardingQuestionOption = {
    order: number;
    answer: string;
};
export type BookingQuestion = {
    id: string;
    question: string;
    order: number;
    required: boolean;
    answers: OnboardingQuestionOption[];
    type: string;
    style: string;
};
export declare const MENU_ITEM_TYPES: {
    readonly INTERNAL: "internal";
    readonly EXTERNAL: "external";
};
export declare const MENU_ITEM_STYLING: {
    readonly LINK: "link";
    readonly BUTTON: "button";
};
export declare const MENU_ITEM_STYLING_TYPE: readonly ["link", "button"];
export declare const DEFAULT_MENU_TYPES: {
    readonly HOME: "home";
    readonly AGENDA: "agenda";
    readonly SPEAKER: "speaker";
    readonly PARTNER: "partner";
    readonly WHO_WHY: "who-&-why";
    readonly EVENT_INFO: "event-info";
    readonly CONTENT_HUB: "content-hub";
};
export declare const DEFAULT_MENU_ITEM: readonly ["home", "agenda", "speaker", "partner", "who-&-why", "event-info", "content-hub"];
export declare const MENU_ITEM_TYPE: readonly ["home", "agenda", "speaker", "partner", "who-&-why", "event-info", "content-hub", "internal", "external"];
export type MenuItem = {
    label: string;
    level: 0 | 1;
    icon: string;
    styling: (typeof MENU_ITEM_STYLING_TYPE)[number];
    type: (typeof MENU_ITEM_TYPE)[number];
    url: string;
    order: number;
    subtitle: string;
    isDesktopDisabled: boolean;
    isMobileDisabled: boolean;
    isTabletDisabled: boolean;
};
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;
        secondaryThemeColor: 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[];
    booking_questions: BookingQuestion[];
    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;
    portfolio: string;
    website_menu: {
        id: string;
        name: string;
        type: "mainmenu" | "footermenu";
        items: MenuItem[];
    }[];
    webinar: string;
    website_content: {
        keytopics: Record<string, string | boolean | File>[];
        targetgroups: Record<string, string | boolean | File>[];
        testimonials: Record<string, string | boolean | File>[];
        whoattend: Record<string, string | boolean | File>[];
    };
};
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 type BookingDetails = {
    accepted_at: string;
    booking: {
        code: string;
        date: string;
    };
    booking_answers: {
        answers: AnswersType[];
        count: number;
    };
    booking_questions: BookingQuestion[];
    event: {
        end_date: string;
        id: string;
        name: string;
        images: {
            logo: string;
            logoTransparent: string;
            picture: string;
            thumbnail: string;
        };
        slug: string;
        start_date: string;
        timezone: string;
    };
    id: string;
    onsite: boolean;
    profile: string;
    registration: {
        about: string;
        address: {
            city: string;
            country: string;
            postalCode: string;
            state: string;
            street: string;
        };
        company: {
            about: string;
            facebook: string;
            industry: string;
            instagram: string;
            linkedin: string;
            logo: string;
            name: string;
            size: string;
            thumbnail: string;
            twitter: string;
            typeOfBusiness: string;
            website1: string;
            xing: string;
        };
        contact: {
            email: string;
            facebook: string;
            instagram: string;
            linkedin: string;
            mobile: string;
            phone: string;
            twitter: string;
            website1: string;
            website2: string;
            xing: string;
        };
        first_name: string;
        images: {
            avatar: string;
            picture: string;
            thumbnail: string;
        };
        job: {
            level: string;
            responsibility: string;
            title: string;
        };
        last_name: string;
        salutation: string;
        public_contact: {
            email: string;
            facebook: string;
            instagram: string;
            linkedin: string;
            mobile: string;
            phone: string;
            twitter: string;
            website1: string;
            website2: string;
            xing: string;
        };
    };
    roles: any[];
    ticket: {
        assigned: any;
        attendeeType: string;
        basePrice: number;
        code: string;
        description: string;
        discount: number;
        discountAvailable: boolean;
        extraOptions: any[];
        id: string;
        includedOptions: any[];
        name: string;
        onsite: boolean;
        price: number;
        reference: string;
    };
};
export type BookingsFormInput = {
    salutation: string;
    first_name: string;
    last_name: string;
    job_title: string;
    job_level: string;
    job_responsibility: string;
    company_size: string;
    company_industry: string;
    address_country: string;
    contact_email: string;
    type_of_business: string;
    invoice_full_name: string;
    company_name: string;
    vat_id: string;
    address_street: string;
    additional_details: string;
    address_postal_code: string;
    address_city: string;
    card_number: string;
    card_holder: string;
    expiry_date: string;
    cvc: string;
    contact_phone: string;
    po_number: string;
};
export type DiscountServerResponse = {
    id: string;
    name: string;
    event: string;
    code: string;
    category: string;
    value: number;
    max_ticket: number;
    min_ticket: number;
    available_quantity: number;
    used_quantity: number;
    privileged_user: string[];
    active: boolean;
    activated_at: null | string;
    valid_from: null | string;
    expire_at: null | string;
    updated_at: string;
};
export type PortfolioDesign = {
    primaryColor: string;
    secondaryColor: string;
    backgroundColor: string;
    logoPosImage: string;
    logoNegImage: string;
    backgroundDesktopImage: string;
    backgroundTabletImage: string;
    backgroundMobileImage: string;
    backgroundSvgImage: string;
    videoUrl: string;
    videoImage: string;
};
export type GroupDetails = {
    sessionGroup: string;
    speakerGroup: string;
    exhibitorGroup: string;
    blogpostGroup: string;
};
export type Portfolio = {
    id: string;
    name: string;
    slug: string;
    website: string;
    description_de: string;
    description_en: string;
    tags_de: string[];
    tags_en: string[];
    design: PortfolioDesign;
    belong_to: string;
    published: number;
    created_at: string | null;
    updated_at: string | null;
    deleted_at: string | null;
    created_by: string | null;
    updated_by: string | null;
    deleted_by: string | null;
    details: GroupDetails;
};
export type PortfolioInput = {
    name: string;
    account: string;
    slug: string;
    website: string;
    description_de: string;
    description_en: string;
    tags_de: string;
    tags_en: string;
    belong_to: string;
    published: number;
    created_at: string | null;
    updated_at: string | null;
    deleted_at: string | null;
    created_by: string | null;
    updated_by: string | null;
    deleted_by: string | null;
    design_portfolio_primary_color: string;
    design_portfolio_secondary_color: string;
    design_portfolio_background_color: string;
    design_portfolio_pos?: string;
    design_portfolio_neg?: string;
    design_portfolio_desktop_background?: string;
    design_portfolio_tablet_background?: string;
    design_portfolio_mobile_background?: string;
    design_portfolio_background_image_svg?: string;
    design_portfolio_video_url?: string;
    design_portfolio_video_image?: string;
    details_groups_session: string;
    details_groups_exhibitor: string;
    details_groups_speaker: string;
    details_groups_blogpost: string;
};
export type BlogPage = {
    id: string;
    headline: string;
    subheadline: string;
    slug: string;
    content_html: string;
    content_structure: string;
    language: string;
    created_at: string;
    updated_at: string;
    updated_by: string;
    published: boolean;
    design: {
        primaryColor: string;
        secondaryColor: string;
        backgroundColor: string;
        featureImage: string;
        coverImage: string;
    };
    meta: {
        description: string;
        author: string;
        keywords: string;
    };
};
export type BlogPageInput = {
    headline: string;
    sub_headline?: string;
    slug?: string;
    content_html?: string;
    content_structure?: string;
    language: string;
    published?: number;
    design_primary_color?: string;
    design_secondary_color?: string;
    design_background_color?: string;
    design_feature_image?: string;
    design_cover_image?: string;
    meta_description?: string;
    meta_author?: string;
    meta_keywords?: string;
};
export type Directory = {
    path: string;
    directories: string[];
};
export type DirectoryFiles = {
    path: string;
    files: string[];
};
export type FileDetails = {
    source: string;
    updated_at: string;
    size: number;
};
export type ResponseAPIType1 = {
    status: number;
    result: {
        data: Record<string, string>[];
    };
};
export {};
