export type EmailMessage = { to: string; subject: string; html: string; }; export type EmailProvider = { send(message: EmailMessage): Promise; }; export type EmailTheme = { brandName: string; tagline?: string; footerNote?: string; colors: { ink: string; accent: string; gold: string; paper: string; card: string; muted: string; hairline: string; }; }; export declare const DEFAULT_EMAIL_THEME: EmailTheme; /** A short, human order reference derived from a session id. */ export declare const orderNumber: (sessionId: string) => string; /** Format a minor-unit amount for display (null → em dash). */ export declare const formatMoneyCents: (cents: number | null, currency?: string | null) => string; /** A carrier tracking URL, or '' for an unknown carrier. */ export declare const carrierTrackingUrl: (carrier: string, trackingNumber: string) => string; /** A branded call-to-action button (inline-styled for email clients). */ export declare const emailButton: (theme: EmailTheme, href: string, label: string) => string; export type EmailLineItem = { label: string; amountCents: number; }; export type LineItemsOptions = { currency?: string | null; totalCents?: number | null; totalLabel?: string; }; /** A line-items table with an optional total row. */ export declare const emailLineItems: (theme: EmailTheme, items: EmailLineItem[], options?: LineItemsOptions) => string; export type RenderEmailArgs = { preheader: string; heading: string; intro: string; /** Pre-built inner HTML (line tables, buttons, paragraphs). */ inner?: string; }; /** Wrap content in the branded, responsive email shell. */ export declare const renderEmail: (theme: EmailTheme, { preheader, heading, intro, inner }: RenderEmailArgs) => string;