@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
58 lines (57 loc) • 2.77 kB
TypeScript
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;