import { type ClassValue } from "clsx";
export declare function cn(...inputs: ClassValue[]): string;
export type ProductImageInput = string | {
    alt?: string;
    urls?: Record<string, string>;
};
export declare function resolveImageUrl(img: ProductImageInput, size: 'stacked' | 'carousel' | 'fullscreen' | 'main'): string;
export declare function getProductGalleryImages(metadata: {
    images?: (string | {
        alt?: string;
        urls?: Record<string, string>;
    })[];
    heroImage?: string | {
        alt?: string;
        urls?: Record<string, string>;
    };
    cutoutImage?: string | {
        alt?: string;
        urls?: Record<string, string>;
    };
} | null | undefined, opts?: {
    cutoutFirst?: boolean;
}): ProductImageInput[];
/** Index of cutout image in gallery, or -1 if none. Depends on same cutoutFirst as getProductGalleryImages. */
export declare function getCutoutIndex(metadata: Parameters<typeof getProductGalleryImages>[0], opts?: {
    cutoutFirst?: boolean;
}): number;
