export interface UniversalProduct {
  externalId: string;
  name: string;
  description?: string;
  sku?: string;
  price: number;
  currency: string;
  stockQuantity?: number;
  stockStatus: 'instock' | 'outofstock';
  imageUrl?: string;
  variants?: UniversalProductVariant[];
}

export interface UniversalProductVariant {
  externalId: string;
  name?: string;
  sku?: string;
  price: number;
  stockQuantity?: number;
  stockStatus: 'instock' | 'outofstock';
  attributes?: Record<string, string>;
}

export interface UniversalCategory {
  externalId: string;
  name: string;
  parentId?: string;
}

export interface UniversalOrder {
  externalOrderId?: string;
  orderNumber?: string;
  customerName: string;
  customerPhone: string;
  deliveryAddress?: string;
  totalAmount: number;
  currency: string;
  items: UniversalOrderItem[];
}

export interface UniversalOrderItem {
  externalProductId: string;
  externalVariantId?: string;
  productName: string;
  quantity: number;
  unitPrice: number;
  lineTotal: number;
}
