import React from 'react';
import { type CsvExportProps, type SearchBarProps, type TooltipProps, ImageProps, FilterProps } from '../../module';
type HeaderWithName = {
    name: React.ReactNode;
    value: React.ReactNode;
    tooltip?: TooltipProps;
    image?: never;
};
type HeaderWithImage = {
    image: ImageProps;
    name?: never;
    value?: never;
    tooltip?: never;
};
export type PageHeaderProps<OptionType> = {
    /** Header name, value, and optional tooltip */
    header?: HeaderWithName | HeaderWithImage;
    /** Optional `SearchBar` available */
    search?: SearchBarProps;
    /** Optional `CsvExport` available */
    download?: CsvExportProps;
    /** Optional page filter available */
    pageFilterProps?: FilterProps<OptionType>;
    /** Optional informational `Tooltip` available */
    tooltip?: Omit<TooltipProps, 'children'>;
    /** Optionally children to appear in the left section of the `PageHeader` */
    leftSectionChildren?: React.ReactNode;
    /** Optionally children to appear in the right section of the `PageHeader` */
    rightSectionChildren?: React.ReactNode;
    /** Optionally children to appear in the bottom section of the `PageHeader` */
    bottomSectionChildren?: React.ReactNode;
    /** Optionally hide the right section divider in mobile */
    hideMobileDivider?: boolean;
};
declare const PageHeader: {
    <OptionType>({ header, search, download, tooltip, pageFilterProps, leftSectionChildren, rightSectionChildren, bottomSectionChildren, hideMobileDivider, }: PageHeaderProps<OptionType>): JSX.Element;
    HeaderDivider: ({ large, horizontal, }: {
        large?: boolean;
        horizontal?: boolean;
    }) => React.JSX.Element;
};
export { PageHeader };
