/// <reference types="react" />
import { LangSwitchProps } from '../LangSwitch';
export type LinkType = 'internal' | 'external';
type FooterProps = LangSwitchProps & {
    loggedUser: boolean;
    companyLink: CompanyLinkType;
    postLoginLinks: Array<FooterLinksType>;
    preLoginLinks: PreLoginFooterLinksType;
    legalInfo: JSX.Element | Array<JSX.Element>;
    onExit?: (exitAction: () => void) => void;
    productsJsonUrl?: string;
    productsTitle?: string;
    onProductsJsonFetchError?: (reason: any) => void;
    hideProductsColumn?: boolean;
};
export type FooterLinksType = {
    label: string;
    /** the url to witch the user will be redirect */
    href?: string;
    ariaLabel?: string;
    linkType: LinkType;
    /** if defined it will override the href behavior */
    onClick?: () => void;
};
export type PreLoginFooterSingleSectionType = {
    title?: string;
    links: Array<FooterLinksType>;
};
export type FooterSocialIcon = 'linkedin' | 'instagram' | 'threads' | 'youtube' | 'twitter' | 'medium';
export type PreLoginFooterSocialLink = {
    icon: FooterSocialIcon;
    /** the url to witch the user will be redirect */
    href?: string;
    title: string;
    ariaLabel?: string;
    /** if defined it will override the href behavior */
    onClick?: () => void;
};
export type PreLoginFooterLinksType = {
    aboutUs: PreLoginFooterSingleSectionType;
    resources: PreLoginFooterSingleSectionType;
    followUs: {
        title: string;
        socialLinks: Array<PreLoginFooterSocialLink>;
        links: Array<FooterLinksType>;
    };
};
export type CompanyLinkType = {
    /** the url to witch the user will be redirect */
    href?: string;
    ariaLabel?: string;
    /** if defined it will override the href behavior */
    onClick?: () => void;
};
export declare const Footer: ({ companyLink, postLoginLinks, preLoginLinks, legalInfo, loggedUser, onExit, languages, onLanguageChanged, currentLangCode, productsTitle, productsJsonUrl, onProductsJsonFetchError, hideProductsColumn, }: FooterProps) => import("react/jsx-runtime").JSX.Element;
export {};
