import { ReactNode, RefObject } from 'react';
export interface NavigationItem {
    id: number | string;
    title: string;
    path?: string;
    external: boolean;
    bold?: boolean;
    [key: string]: any;
    items?: NavigationItem[];
}
export interface HeaderProps {
    open: boolean;
    close: () => void;
    navigation: NavigationItem[];
    renderLogo: (firstItemRef: RefObject<HTMLAnchorElement>, close: () => void) => ReactNode;
    renderToggle: ({ ref, open }: {
        ref: RefObject<HTMLButtonElement>;
        close: () => void;
        open: boolean;
    }) => ReactNode;
    renderMenuItem: ({ item, close, mobile, ref }: {
        item: NavigationItem;
        close: () => void;
        mobile: boolean;
        ref?: RefObject<HTMLAnchorElement>;
    }) => ReactNode;
    renderMenu?: ({ navigation, close }: {
        navigation: NavigationItem[];
        close: () => void;
    }) => ReactNode;
    renderMobileMenu?: (navigation: NavigationItem[], close: () => void, open: boolean, firstItemRef: RefObject<HTMLAnchorElement>, closeRef: RefObject<HTMLButtonElement>, lastItemRef: RefObject<HTMLAnchorElement>) => ReactNode;
    renderMobileMenuWrapper: (children: ReactNode) => ReactNode;
    skipContentLabel?: string;
    classNameHeader?: string;
    className?: string;
    classNameSkipContent?: string;
    classNameMenu?: string;
    classNameMenuItem?: string;
}
export interface HeaderWrapperProps extends HeaderProps {
}
declare const HeaderWrapper: (props: HeaderWrapperProps) => JSX.Element;
export default HeaderWrapper;
