import { Severity, AiSDKError, ErrorVisibility, AiSDKErrorCode, } from "@vn-sdk/shared"; import React from "react"; interface UsageBannerProps { severity?: Severity; message?: string | React.ReactNode; onClose?: () => void; actions?: { primary?: { label: string; onClick: () => void; }; secondary?: { label: string; onClick: () => void; }; }; } export function UsageBanner({ severity = Severity.CRITICAL, message = "", onClose, actions, }: UsageBannerProps) { if (!message || !severity) { return null; } const themes = { [Severity.INFO]: { bg: "#f8fafc", border: "#e2e8f0", text: "#475569", accent: "#3b82f6", }, [Severity.WARNING]: { bg: "#fffbeb", border: "#fbbf24", text: "#92400e", accent: "#f59e0b", }, [Severity.CRITICAL]: { bg: "#fef2f2", border: "#fecaca", text: "#dc2626", accent: "#ef4444", }, }; const theme = themes[severity]; return ( <>