export interface Product { id: string; /** Real catalog product id when available (for cart / checkout) */ product_id?: string; /** First sellable variant id when available */ first_variant_id?: string; name: string; price: number; /** Highest variant price — enables "$min – $max" range display */ priceMax?: number; oldPrice?: number; rating: number; reviewsCount?: number; image: string; imageHover?: string; discount?: number; category: string; hasTimer?: boolean; timeRemaining?: { days: number; hours: number; minutes: number; seconds: number; }; features?: string[]; description?: string; isHot?: boolean; isFeatured?: boolean; isNewArrival?: boolean; isRecentlyLaunched?: boolean; isTechGadget?: boolean; soldCount?: number; totalStock?: number; color?: string; brand?: string; slug?: string; } export interface Category { id: string; name: string; slug: string; iconName: string; productCount: number; image: string; } export interface BlogArticle { id: string; title: string; excerpt: string; date: string; author: string; image: string; readTime: string; } export interface PromoCardData { id: string; badge: string; title: string; subtitle: string; priceText: string; image: string; bgColor: string; textColor: string; badgeBg: string; }