import { default as React } from 'react'; import { AvatarProps, AvatarType } from '../Avatar'; import { BadgeProps, BadgeType } from '../Badge'; import { SvgIcon } from '../Icon'; import { StatusDotProps, StatusDotType } from '../StatusDot'; import { TitleTags } from '../Title'; import { ElementHeaderTextProps, ElementHeaderTextType } from './ElementHeaderText/ElementHeaderText'; import { StatusDotListProps, StatusDotListType } from './StatusDotList/StatusDotList'; export type ElementHeaderSize = 'compact' | 'small' | 'medium' | 'large'; export type ParentType = 'linklist' | 'expanderlist'; export interface ElementHeaderType extends React.FC { Avatar?: AvatarType; Badge?: BadgeType; ElementHeaderText?: ElementHeaderTextType; StatusDot?: StatusDotType; StatusDotList?: StatusDotListType; } export interface ElementHeaderProps { /** Adds custom classes to the ElementHeader element. */ className?: string; /** Chevron to render inside of the ElementHeader */ chevronIcon?: SvgIcon; /** Close button to be rendered inside of ElementHeader. This renders in place of chevronIcon */ closeButton?: React.ReactElement; /** Children to be rendered inside of ElementHeader */ children: React.ReactNode; /** Changes the underlying element of the title. Default: h2*/ titleHtmlMarkup?: TitleTags; /** icon to be rendered inside of ElementHeader */ icon?: React.ReactElement; /** whether or not the parent is hovered */ isHovered?: boolean; /** Adjusts styling based on parent */ parentType?: ParentType; /** Changes size of the ElementHeader. */ size?: ElementHeaderSize; /** Sets the data-testid attribute. */ testId?: string; /** Highlights text in title. Used for search results */ highlightText?: string; } export interface ElementHeaderChildren { avatarChild?: React.ReactElement; elementHeaderTextChildren: React.ReactElement[]; badgeChildren?: React.ReactElement[]; statusDotChildren?: React.ReactElement[]; statusDotMCChild?: React.ReactElement; elementChild?: React.ReactElement; stringChildren: string[]; remainingChildren: React.ReactNode[]; } export declare const ElementHeaderRoot: ElementHeaderType; type ElementHeaderComponent = typeof ElementHeaderRoot & { Text: React.FC; StatusDotList: React.FC; }; declare const ElementHeader: ElementHeaderComponent; export default ElementHeader;