import type { PaymentMethodSummary } from "@stigmer/protos/ai/stigmer/billing/v1/billing_account_pb";
import { BillingAccountStatus } from "@stigmer/protos/ai/stigmer/billing/v1/enum_pb";
/** Props for {@link PaymentMethodCard}. */
export interface PaymentMethodCardProps {
    /** The saved payment method, or undefined if none is on file. */
    readonly paymentMethod?: PaymentMethodSummary;
    /** Account status — portal button disabled when suspended or closed. */
    readonly accountStatus: BillingAccountStatus;
    /** `true` while the portal session is being created. */
    readonly isPortalLoading?: boolean;
    /** Called when the user clicks "Manage payment methods". */
    readonly onManage: () => void;
    /** Additional CSS class names. */
    readonly className?: string;
}
/**
 * Displays the saved payment method with a button to open the
 * Stripe Customer Portal for management.
 *
 * Shows card brand, last 4 digits, and expiry when a payment method
 * is on file. Shows an empty state prompt when none exists. The
 * "Manage" button opens the Stripe Customer Portal where users can
 * add, update, or remove payment methods.
 *
 * @example
 * ```tsx
 * <PaymentMethodCard
 *   paymentMethod={account.defaultPaymentMethod}
 *   accountStatus={account.status}
 *   onManage={() => openPortal(orgId)}
 * />
 * ```
 */
export declare function PaymentMethodCard({ paymentMethod, accountStatus, isPortalLoading, onManage, className, }: PaymentMethodCardProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=PaymentMethodCard.d.ts.map