import React from 'react';
import { BadgeSkin, ButtonSkin, ButtonPriority } from '@wix/design-system';
import { Offer } from '@wix/bex-utils/@wix/ambassador-dealer-v1-serving-offer/types';
import { BaseCardComponentProps, SuggestionsCardProps } from './types';
/**
 * Schema for marketing card content.
 * This defines the structure expected in offer.asset.creative for MarketingCard rendering.
 */
export interface MarketingCardSchema {
    title: string;
    description: {
        text: string;
        learnMore?: {
            link: string;
            text?: string;
        };
    };
    imageUrl: string;
    ctaButton?: {
        text: string;
        link: string;
        skin?: Extract<ButtonSkin, 'standard' | 'premium' | 'ai'>;
        priority?: Extract<ButtonPriority, 'primary' | 'secondary'>;
    };
    badge?: {
        text: string;
        skin?: Extract<BadgeSkin, 'general' | 'success' | 'premium'>;
    };
}
/**
 * Creates a render function for marketing cards.
 * @param transformOffer - Optional function to transform offer data into MarketingCardSchema.
 *                         If not provided, uses offer.asset.creative directly.
 * @returns A render function compatible with Suggestions.renderCard prop.
 */
export declare const renderMarketingCard: (transformOffer?: ((offer: Offer) => MarketingCardSchema | null) | undefined) => (props: SuggestionsCardProps) => React.ReactElement | null;
/**
 * Skeleton component for MarketingCard during loading state.
 */
export declare const MarketingCardSkeleton: React.FC<BaseCardComponentProps>;
//# sourceMappingURL=MarketingCard.d.ts.map