/**
 * Font Family Formatting Utilities
 *
 * Handles parsing and formatting font family strings for CSS output.
 * Supports font stacks, proper quoting, and generic CSS families.
 */
/** CSS generic font families that should never be quoted */
export declare const GENERIC_CSS_FAMILIES: readonly ["serif", "sans-serif", "monospace", "cursive", "fantasy", "system-ui"];
export type GenericCssFamily = (typeof GENERIC_CSS_FAMILIES)[number];
/**
 * Check if a font name is a generic CSS family (e.g., "sans-serif", "monospace")
 */
export declare function isGenericFamily(font: string): boolean;
/**
 * Quote a font name if it contains spaces, unless it's a generic CSS family.
 * Strips existing quotes before processing.
 *
 * @returns The formatted font name, or null if empty
 */
export declare function quoteFontIfNeeded(rawFont: string): string | null;
/**
 * Format a font family string for CSS output.
 *
 * Handles:
 * - Single font names (quoted if needed)
 * - Font stacks (comma-separated, each font quoted individually if needed)
 * - Generic CSS families (never quoted)
 * - Appends fallback if not already present
 *
 * @param family - Font family string (e.g., "Open Sans" or "Open Sans, Helvetica, sans-serif")
 * @param fallback - Fallback font family (default: "sans-serif")
 * @returns CSS-ready font-family value
 *
 * @example
 * formatFontFamily("Open Sans") // '"Open Sans", sans-serif'
 * formatFontFamily("Inter") // 'Inter, sans-serif'
 * formatFontFamily("Open Sans, Helvetica, sans-serif") // '"Open Sans", Helvetica, sans-serif'
 * formatFontFamily("") // 'sans-serif'
 */
export declare function formatFontFamily(family: string, fallback?: string): string;
