import { IPlanItem, IAddonItem, ISIMItem } from './item'; export interface ICatalogMeta { units: { currency: string; data: string; sms: string; mms: string; voice: string; ild: string; date: string; }; count: { total: number; availability: { available?: number; outOfStock?: number; preOrder?: number; archived?: number; onHold?: number; }; types: { plan?: number; sim?: number; addon?: number; }; }; } export interface IItemCode { code: string; type: string; title: string; description: string; note: string; visibility: string; code_value_type_code: string; code_value_type_title: string; code_value: number; code_currency: string; code_rate: string; attributes?: Array<{ name: string; value: string; }>; } export interface ICatalogItem { productSku: string; product: string; title: string; caption: string; keywords: string; categories: [{ name: string; id?: string; }]; availability: string; visibility: string; featured: boolean; classification: string; visuals: Array<{ id?: string; name?: string; category?: string; links?: [{ size?: string; url?: string; description?: string; altName?: string; order?: number; }]; }>; deliveryTypes: Array<{ type_id: string; type_name: string; }>; description?: string; attributes?: Array<{ name: string; value: string; }>; } export interface ICatalog { meta: ICatalogMeta; items: Array; }