import type { CSSProperties, ReactNode } from "react"; export interface CrediballLowCreditWarningRenderProps { balance: number | null; isLow: boolean; } export interface CrediballLowCreditWarningProps { className?: string; style?: CSSProperties; /** * Override the provider's default threshold (highest-cost active event) for * just this instance — e.g. warn earlier next to an expensive action. */ threshold?: number; /** Message shown when low. Defaults to a generic nudge. */ message?: string; /** * Preview/demo override — forces the warning to render regardless of the * live balance, the same way `PaywallModal`'s balance prop and * `ReferralCard`'s `demo` prop let the dashboard's UI-patterns preview show * a component with no connected app. Never pass this in production; the * component is meant to gate on the real live balance. */ demo?: boolean; children?: ReactNode | ((props: CrediballLowCreditWarningRenderProps) => ReactNode); } /** * Tier 2 — renders nothing until the user's balance is low, then shows a * message inline. Place it next to a specific action ("this costs 20 credits") * or globally near the top of the app. * * */ export declare function CrediballLowCreditWarning({ className, style, threshold, message, demo, children, }: CrediballLowCreditWarningProps): import("react").JSX.Element | null;