import { ReactElement, ReactNode } from 'react'; import { IconProps } from '../icons/generated'; export type BannerStatus = 'neutral' | 'info' | 'error' | 'warning' | 'success'; export type BannerSize = 'xsmall' | 'small' | 'medium'; export type BannerDirection = 'horizontal' | 'vertical'; export interface BannerProps { className?: string; /** @default 'info' */ status?: BannerStatus; /** @default 'medium' */ size?: BannerSize; /** @default 'horizontal' */ direction?: BannerDirection; /** * title 좌측에 렌더링 될 아이콘 요소 * - title이 없을 경우 렌더되지 않습니다. * - Icon 컴포넌트 color props가 있더라도 status 따라 currentColor가 지정됩니다. * - Icon 컴포넌트 size props가 있더라도 Icon 사이즈는 banner size 'medium'일경우 16, 'small'일경우 12로 고정됩니다. */ leftIcon?: ReactElement; /** @default true */ showIcon?: boolean; title?: string; message?: ReactNode; /** * 배너 우측에 렌더링 될 extra actions */ actions?: ReactNode; /** * 배너 우측에 렌더링 될 CloseButton 사용 유무 * @default false */ closable?: boolean; onClose?: () => void; } export declare const Banner: ({ className, status, size, direction, leftIcon, showIcon, title, message, actions, closable, onClose, }: BannerProps) => import("@emotion/react/jsx-runtime").JSX.Element;