/**
 * NotificationBanner — site-wide announcement strip.
 *
 * Distinct from NotificationCenter (toast list).  Renders a top-of-page
 * strip for system-wide announcements (e.g. scheduled maintenance).
 *
 * - severity picks a Phase 1 token colour (cyan/amber/rose/emerald).
 * - Dismissible: hides on click; persists in localStorage when persistKey is set.
 * - ARIA: role="status" for info/success, role="alert" for warning/critical.
 *
 * No global Provider required.
 */
import * as React from 'react';
export type NotificationBannerSeverity = 'info' | 'warning' | 'critical' | 'success';
export interface NotificationBannerProps {
    severity?: NotificationBannerSeverity;
    title?: string;
    children: React.ReactNode;
    dismissible?: boolean;
    /**
     * When set, the dismissed state is persisted in localStorage under this key.
     * Set to a unique value per announcement so each one can be dismissed once.
     */
    persistKey?: string;
    actionLabel?: string;
    onAction?: () => void;
    actionHref?: string;
    className?: string;
}
/**
 * NotificationBanner — public export.
 *
 * Delegates to PersistedBanner when `persistKey` is provided, otherwise uses
 * local React state via LocalBanner.  This avoids calling hooks conditionally.
 */
export declare function NotificationBanner(props: NotificationBannerProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=notification-banner.d.ts.map