import type { OrderCouponDetail, OrderUserAddress, OrderCarAddress } from 'src/modules/orders/interface/order.interface';

export interface CartItem {
  foodId: string;
  foodTitle?: string;
  quantity: number;
  price: number;
  discount: number;
  totalPrice: number;
}

export interface Cart {
  userId: string;
  restaurantId: string;
  restaurantName?: string;

  items: CartItem[];
  coupon?: OrderCouponDetail;
  paymentMethodId?: string;
  deliveryMethodId?: string;
  description?: string;
  tableNumber?: string;

  deliveryFee: number;
  subTotal: number;
  tax: number;
  couponDiscount: number;
  itemsDiscount: number;
  totalDiscount: number;
  total: number;

  carAddress?: OrderCarAddress | null;
  userAddress?: OrderUserAddress | null;

  totalItems: number;
  createdAt: string;
  updatedAt: string;
}
