import React from 'react';
export interface HeaderNavProps {
    /** An uninstantiated component which handles displaying the utility nav. */
    UtilityNav?: React.ElementType;
    /** An uninstantiated component which handles displaying individual items within the utility nav. */
    UtilityItem?: React.ElementType;
    /** An uninstantiated component which handles displaying menu portion of the header. */
    MainNav?: React.ElementType;
    /** An uninstantiated component which handles displaying individual menu items within the menu. */
    NavItem?: React.ElementType;
    /** An uninstantiated component which handles displaying the site logo. */
    Logo?: React.ElementType;
    /** An uninstantiated component which handles search functionality. */
    NavSearch?: React.ElementType;
    /** An uninstantiated component which handles displaying the menu button on mobile. */
    ButtonContainer?: React.ElementType;
    /** An array of items used to create the menu. */
    mainItems?: {
        href?: string;
        text?: string;
        active?: boolean;
        subNav?: {
            href?: string;
            text?: string;
        }[];
    }[];
    /** An array of uninstantiated components to render within the utility navigation.  */
    utilityItems?: React.ElementType[];
}
declare const HeaderNav: ({ UtilityNav, UtilityItem, MainNav, NavItem, Logo, NavSearch, ButtonContainer, mainItems, utilityItems }: HeaderNavProps) => any;
export declare const HeaderButtonContainer: () => any;
export declare const HeaderLogo: () => any;
export declare const HeaderNavSearch: ({ narrow }: {
    narrow?: boolean;
}) => any;
export declare const HeaderMobileNavSearch: () => any;
export interface HeaderUtilityItemProps {
    children?: React.ReactNode;
}
export declare const HeaderUtilityItem: ({ children }: HeaderUtilityItemProps) => any;
export interface HeaderUtilityNavProps {
    /** An uninstantiated component which handles displaying individual items within the utility nav. */
    UtilityItem?: React.ElementType;
    /** An array of uninstantiated components to render within the utility navigation.  */
    items?: React.ElementType[];
    /** A boolean representing when the UtilityNav is being displayed within a narrow screen. */
    narrow?: boolean;
}
export declare const HeaderUtilityNav: ({ UtilityItem, items, narrow }: HeaderUtilityNavProps) => any;
export interface HeaderContainerProps {
    /** An uninstantiated component which handles displaying the site logo. */
    Logo?: React.ElementType;
    /** An uninstantiated component which handles search functionality. */
    NavSearch?: React.ElementType;
}
export declare const HeaderContainer: ({ Logo, NavSearch }: HeaderContainerProps) => any;
export default HeaderNav;
