import { ReactElement } from 'react'; import { IconName } from '../Icon'; import { CommonProps } from '../common'; import { Option } from '../../fp/Option'; import { Either } from '../../fp/Either'; export interface BannerProps extends CommonProps { /** * Banner content. */ content: string | ReactElement; /** * Icon name or a react element as custom icon. * - undefined: use default icon according to Banner intent. * - null: no icon at all. * - string: an icon string from hero-design icon list. * - ReactElement: Custom icon by your own. */ icon?: null | IconName | ReactElement; /** * Visual intent color to apply to banner. */ intent?: 'success' | 'info' | 'warning' | 'danger' | 'error'; /** * Closing callback. When onClose is available, an `x` button will be rendered on the right side of Banner. The callback will be called when user clicks on `x` button. */ onClose?: () => void; /** * Banner title. */ title?: string; } export declare const getBannerIcon: (defaultIcon: IconName, icon: undefined | null | IconName | ReactElement) => Option>; declare const Banner: ({ intent, title, content, icon, onClose, id, className, style, sx, "data-test-id": dataTestId, }: BannerProps) => ReactElement; export default Banner;