import { CubeItemProps } from '../../content/Item/Item';
import { CubeButtonProps } from '../Button/Button';
import { CubeItemActionProps } from '../ItemAction/ItemAction';
export type BannerTheme = 'danger' | 'warning' | 'note' | 'success';
export type BannerProps = Omit<CubeItemProps, 'type' | 'size' | 'theme'> & {
    /**
     * The visual theme of the banner.
     * @default 'note'
     */
    theme?: BannerTheme;
    /**
     * Controls whether the banner can be dismissed by the user.
     * @default false
     */
    isDismissible?: boolean;
    /**
     * Callback fired when the dismiss button is clicked.
     */
    onDismiss?: () => void;
};
export type BannerActionProps = Omit<CubeItemActionProps, 'preset' | 'type'>;
export type BannerLinkProps = Omit<CubeButtonProps, 'type' | 'size' | 'color'>;
/**
 * Sub-component for action buttons within a Banner.
 * Automatically styled to match the banner's theme.
 */
export declare function BannerAction(props: BannerActionProps): import("react/jsx-runtime").JSX.Element;
/**
 * Sub-component for inline links within Banner content.
 * Styled with white color and underline to stand out against the banner background.
 */
export declare function BannerLink(props: BannerLinkProps): import("react/jsx-runtime").JSX.Element;
/**
 * Banner displays prominent messages and notifications to users.
 * Supports different themes (danger, warning, note, success) with appropriate icons.
 * Use Banner.Action for action buttons and Banner.Link for inline links.
 */
export declare function Banner(props: BannerProps): import("react/jsx-runtime").JSX.Element;
export declare namespace Banner {
    var Action: typeof BannerAction;
    var Link: typeof BannerLink;
}
