import type { FC, HTMLAttributes, ReactNode, Ref } from 'react';
import type { VariantProps } from 'class-variance-authority';
import { type TestableProps } from '../../utils/testId';
import { type BannerVariant, bannerVariants } from './classes';
export type { BannerVariant };
export interface BannerProps extends Omit, 'variant'>, HTMLAttributes, TestableProps {
ref?: Ref;
/** Visual variant of the banner */
variant?: BannerVariant;
/** Banner content — compose with Banner sub-components */
children?: ReactNode;
}
/**
* Banner displays a prominent, full-width message at the top of the page
* (above the header) to communicate system-wide status, announcements,
* warnings, errors, or promotional messages to all users.
*
* Banners persist until dismissed by the user or until the state that caused
* them is resolved.
*
* Supports 5 variants: primary (dark/neutral), secondary, destructive, info,
* and warning. Compose with: BannerIcon, BannerContent, BannerTitle,
* BannerDescription, BannerLink, BannerControls, BannerClose.
*/
export declare const Banner: FC;