import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';
import { A as ActionConfig } from './blocks-k17uluAz.js';
import 'class-variance-authority';
import './button-variants-lRElsmTc.js';
import 'class-variance-authority/types';

/**
 * Props for the BannerPrivacyNotice component
 */
interface BannerPrivacyNoticeProps {
    /**
     * Icon to display (ReactNode for full flexibility)
     */
    icon?: React.ReactNode;
    /**
     * Icon name for DynamicIcon (used if icon prop is not provided)
     * @default "mynaui/shield"
     */
    iconName?: string;
    /**
     * Banner title content
     */
    title?: React.ReactNode;
    /**
     * Banner description content
     */
    description?: React.ReactNode;
    /**
     * Array of action configurations for links/buttons
     */
    actions?: ActionConfig[];
    /**
     * Custom slot for rendering actions (overrides actions array)
     */
    actionsSlot?: React.ReactNode;
    /**
     * Callback when banner is dismissed
     */
    onDismiss?: () => void;
    /**
     * Dismiss button icon (ReactNode for full flexibility)
     */
    dismissIcon?: React.ReactNode;
    /**
     * ARIA label for dismiss button
     * @default "Dismiss banner"
     */
    dismissAriaLabel?: string;
    /**
     * Additional CSS classes for the banner container
     */
    className?: string;
    /**
     * Additional CSS classes for the inner container
     */
    containerClassName?: string;
    /**
     * Additional CSS classes for the content wrapper
     */
    contentClassName?: string;
    /**
     * Additional CSS classes for the icon
     */
    iconClassName?: string;
    /**
     * Additional CSS classes for the title
     */
    titleClassName?: string;
    /**
     * Additional CSS classes for the description
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for the actions container
     */
    actionsClassName?: string;
    /**
     * Additional CSS classes for the dismiss button
     */
    dismissButtonClassName?: string;
}
/**
 * BannerPrivacyNotice - A bottom-positioned privacy policy update notice.
 *
 * Features a fixed bottom position with shield icon, title, description, and review link.
 * Includes a dismiss button to close the banner. The banner is positioned at the bottom
 * of the viewport with a border-top styling. Ideal for privacy policy updates, legal notices,
 * and compliance notifications.
 *
 * @example
 * ```tsx
 * <BannerPrivacyNotice
 *   title="Privacy Policy Updated"
 *   description="We've made changes to how we handle your data."
 *   actions={[{ label: "Read More →", href: "/privacy", variant: "link" }]}
 *   onDismiss={() => console.log('Dismissed')}
 * />
 * ```
 */
declare function BannerPrivacyNotice({ icon, iconName, title, description, actions, actionsSlot, onDismiss, dismissIcon, dismissAriaLabel, className, containerClassName, contentClassName, iconClassName, titleClassName, descriptionClassName, actionsClassName, dismissButtonClassName, }: BannerPrivacyNoticeProps): react_jsx_runtime.JSX.Element | null;

export { BannerPrivacyNotice, type BannerPrivacyNoticeProps };
