import { LedgerEntryType } from "@stigmer/protos/ai/stigmer/billing/v1/enum_pb";
/**
 * Convert micro-USD (bigint) to a display string like "$12.50".
 *
 * Micro-USD uses 6 decimal places (1 USD = 1,000,000 micros).
 * The output always shows exactly 2 decimal places.
 */
export declare function formatCreditBalance(micros: bigint | undefined): string;
/**
 * Convert micro-USD (bigint) to a signed display string.
 *
 * Positive amounts show "+$5.00", negative show "-$0.23",
 * zero shows "$0.00" (no sign).
 */
export declare function formatLedgerAmount(micros: bigint): string;
/** Human-readable label for a ledger entry type. */
export declare function ledgerEntryLabel(type: LedgerEntryType): string;
/**
 * Whether a ledger entry type represents a credit (positive amount).
 *
 * Used by UI components to choose semantic colors: green for credits,
 * red for debits, gray for holds/releases.
 */
export declare function isCredit(type: LedgerEntryType): boolean;
/**
 * Whether a ledger entry type represents a hold operation.
 *
 * Holds are neither credits nor debits in the user's mental model —
 * they represent temporary balance changes (reservations, disputes).
 */
export declare function isHold(type: LedgerEntryType): boolean;
/**
 * Format a protobuf Timestamp for ledger display.
 *
 * Returns a locale-appropriate date and time string
 * (e.g., "May 3, 2026, 4:30 PM").
 */
export declare function formatLedgerDate(seconds: bigint): string;
//# sourceMappingURL=format.d.ts.map