import type { ExportDOMOptions } from '../../export-dom.js';
interface ProductNodeData {
    productStarRating: number;
    isEmpty: () => boolean;
    getDataset: () => ProductTemplateBaseData;
}
interface ProductRenderOptions extends ExportDOMOptions {
    design?: {
        buttonCorners?: string;
    };
}
interface ProductTemplateBaseData {
    productImageSrc: string;
    productImageWidth: number | null;
    productImageHeight: number | null;
    productTitle: string;
    productDescription: string;
    productRatingEnabled: boolean;
    productStarRating: number;
    productButtonEnabled: boolean;
    productButton: string;
    productUrl: string;
}
interface ProductTemplateData extends ProductTemplateBaseData {
    starIcon: string;
    buttonBorderRadius: string;
    star1: string;
    star2: string;
    star3: string;
    star4: string;
    star5: string;
}
export declare function renderProductNode(node: ProductNodeData, options?: ProductRenderOptions): import("../../utils/render-empty-container.js").EmptyContainerOutput | {
    element: HTMLElement;
    type: "outer";
};
export declare function cardTemplate({ data }: {
    data: ProductTemplateData;
}): string;
export declare function emailCardTemplate({ data, feature }: {
    data: ProductTemplateData;
    feature?: {
        emailCustomization?: boolean;
        emailCustomizationAlpha?: boolean;
    };
}): string;
export {};
//# sourceMappingURL=product-renderer.d.ts.map