
import { UniversalBannerProps } from "../../types/dist/index.js";
import * as _$react from "react";

//#region src/components/Banner/Banner.d.ts
type HtmlDivProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'title'>;
type DataAttributes = {
  [name: `data-${string}`]: string;
};
interface BannerProps extends HtmlDivProps, UniversalBannerProps {
  /** Accessible label for the dismiss button. @default "Dismiss" */
  dismissAriaLabel?: string;
  /** Props to be passed into various slots within the component. */
  slotProps?: {
    startIcon?: DataAttributes;
    actions?: DataAttributes;
    dismiss?: DataAttributes;
  };
}
/**
 * **An inline notification banner for contextual messages with optional actions.**
 *
 * @componentType Server component
 *
 * @description
 * Banner is an inline, non-floating notification component that sits in normal document flow.
 * It supports 12 color variants, an optional icon, title, description (truncated to 3 lines),
 * composable actions via children, and an optional dismiss button.
 *
 * Use `title` and `description` props for simple text content, or pass `BannerContent`
 * with `BannerTitle` and `BannerDescription` subcomponents for rich ReactNode content.
 * Any non-BannerContent children are rendered in the actions area.
 *
 * @see
 * Check out the {@link https://uds.build/docs/components/banner Banner Docs} for more info
 *
 * @example
 * ```tsx
 * // Simple — props-based
 * <Banner variant="info" startIcon={Info} title="Update available" />
 *
 * // With actions as children
 * <Banner variant="brand-secondary" startIcon={Megaphone} title="Notification"
 *   description="Description text." onDismiss={() => {}}>
 *   <Link href="/docs">Learn more</Link>
 *   <Button variant="secondary" size="sm">Edit</Button>
 *   <Button variant="brand" size="sm">Send</Button>
 * </Banner>
 *
 * // Rich content via subcomponents
 * <Banner variant="alert" startIcon={Error} onDismiss={() => {}}>
 *   <BannerContent>
 *     <BannerTitle>Error <strong>occurred</strong></BannerTitle>
 *     <BannerDescription>Something went wrong.</BannerDescription>
 *   </BannerContent>
 *   <Button variant="alert" size="sm">Retry</Button>
 * </Banner>
 * ```
 *
 * @related [Badge](https://uds.build/docs/components/badge), [Toast](https://uds.build/docs/components/toast)
 **/
declare const Banner: _$react.ForwardRefExoticComponent<BannerProps & _$react.RefAttributes<HTMLDivElement>>;
//#endregion
export { Banner, type BannerProps };