export type ApiCategory = {
  id: string;
  businessId: string;
  entityType: string;
  parentId: string | null;
  name: string;
  nameFa: string | null;
  slug: string;
  description: string | null;
  sortOrder: number;
  isActive: boolean;
};

export type CategoriesResponse = {
  items: ApiCategory[];
};

export type ApiStoreItemSelection = {
  variationId: string;
  variationName: string;
  optionId: string;
  value: string;
};

export type ApiStoreItem = {
  id: string;
  storeItemId: string;
  productId: string;
  productTitle: string;
  productNameFa: string;
  productImage: string | null;
  productTotalStock: number;
  selections: ApiStoreItemSelection[];
  label: string;
  price: number | null;
  discountedPrice: number | null;
  stockQuantity: number;
  rewardPoints: number | null;
  isFestival: boolean;
  sortOrder: number;
};

export type StoreItemsResponse = {
  items: ApiStoreItem[];
  total: number;
  page: number;
  pageSize: number;
};

export type ApiProduct = {
  id: string;
  slug: string;
  title: string;
  nameFa: string;
  summary: string | null;
  descriptionHtml: string | null;
  categoryId: string | null;
  categoryName: string | null;
  categoryNameFa: string | null;
  thumbnailUrl: string | null;
  image: string | null;
  images: string[];
};

export type ProductsResponse = {
  items: ApiProduct[];
  total: number;
  page: number;
  pageSize: number;
};
