import { ItemName } from './item.model'; /** * Storefront-side raw category shape (item.service.ts/api.service.ts responses). * Unrelated to core/categories/models/category-domain.model.ts's Category, which is * the normalized admin-backoffice domain shape produced by CategoryMapper. */ export interface CategoryApiModel { categoryID: number; name: string; parentID: number; icon?: string; wideBanner?: string; itemCount?: number; categoriesCount?: number; priority?: number; names?: ItemName[]; translations?: Record; // BackOffice API fields id?: string; visible?: boolean; img?: string; marketplaceId?: string; subcategories?: Subcategory[]; } export interface Subcategory { id: string; name: string; visible?: boolean; priority?: number; img?: string; categoryId: string; parentId: string; itemCount?: number; hasItems?: boolean; subcategories?: Subcategory[]; } interface CategoryTranslation { name?: string; }