export interface ProductCardData { id: string; name: string; price: number; originalPrice?: number; discount?: number; image: string; color?: string; description?: string; url?: string; currency?: string; category?: string; sub_category?: string; tags?: string[]; metadata?: Record; tool_call_id?: string; status?: string; external_product_id?: string; product_id?: string; variant_swatches?: Array>; } export interface RepliedProduct { product: ProductCardData; suggestions: string[]; } export interface ProductApiResponse { status: string; products: ProductCardData[]; } export interface ProductMessage { id: string; type: "products"; products: ProductCardData[]; timestamp: Date; tool_call_id?: string; } export interface ProductCardProps { product: ProductCardData; onAddToCart?: (product: ProductCardData) => void; onMoreInfo?: (product: ProductCardData) => void; } export interface ProductCarouselProps { products: ProductCardData[]; onAddToCart?: (product: ProductCardData) => void; onMoreInfo?: (product: ProductCardData) => void; }