import { IconButtonProps } from '../../../Atoms/Buttons/IconButton/IconButton.types'; import { TextButtonProps } from '../../../Atoms/Buttons/TextButton/TextButton.types'; import { NotificationBubbleProps } from '../../../Atoms/NotificationBubble/NotificationBubble.types'; import { Icon24, Icon32 } from '../../../Base/Icon/Icon.types'; interface NoticePropsBase { bodyText?: string; className?: string; cta?: { color?: TextButtonProps['color']; onClick: TextButtonProps['onClick']; rightIcon?: TextButtonProps['rightIcon']; text: string; }; headline?: string; icon?: { name: Icon24; size?: '24'; } | { name: Icon32; size: '32'; }; markdown?: boolean; notificationBubble?: NotificationBubbleProps; size?: 'small' | 'medium'; type?: 'embedded' | 'sticky'; variant?: 'detailed' | 'simple'; } type NoticeProps = (NoticePropsBase & ({ bodyText?: never; headline: string; variant?: 'simple'; } | { bodyText: string; variant: 'detailed'; }) & { dismissible?: false; onDismiss?: IconButtonProps['onClick']; }) | (NoticePropsBase & ({ bodyText: string; variant: 'detailed'; } | { bodyText?: never; headline: string; variant?: 'simple'; }) & { dismissible?: true; onDismiss: IconButtonProps['onClick']; }); export type NoticeWarningProps = { color?: 'pinkDark' | 'pinkLight'; context: 'warning'; } & NoticeProps; export type NoticeInfoProps = { color?: 'green' | 'grey' | 'vanilla' | 'teal'; context?: 'info'; } & NoticeProps; export declare const VariantEnum: { readonly DETAILED: "detailed"; readonly SIMPLE: "simple"; }; export declare const SizeEnum: { readonly MEDIUM: "medium"; readonly SMALL: "small"; }; export declare const ContextEnum: { readonly INFO: "info"; readonly WARNING: "warning"; }; export {};