import type { MoneyV2 } from "../types"; export interface CartAttribute { key: string; value: string; } export interface LineItemVariant { id: string; gid: string; [key: string]: any; } export interface LineItemProduct { id: string; gid: string; [key: string]: any; } export interface DiscountAllocation { discountedAmount: MoneyV2; title?: string; description?: string; type?: string; key?: string; id?: string; value?: any; createdAt?: string; valueType?: string; allocationMethod?: string; targetSelection?: string; targetType?: string; } export interface SellingPlanAllocation { priceAdjustments: any[]; price: MoneyV2; compareAtPrice?: MoneyV2; perDeliveryPrice?: MoneyV2; sellingPlan: any; } export interface LineItemMerchandise { requiresShipping?: boolean; } export interface ReduxActionDescriptor { reduxAction: any; } export interface CartLineItemActions { setQuantity: (quantity: number) => ReduxActionDescriptor; increaseQuantityByOne: ReduxActionDescriptor; decreaseQuantityByOne: ReduxActionDescriptor; remove: ReduxActionDescriptor; } export interface LineItem { id: string; gid: string; quantity: number; attributes?: CartAttribute[]; customAttributes?: CartAttribute[]; customAttributesMap?: Record; originalPosition: number; groupId?: string; parentGroupId?: string; isChildItem: boolean; isParentItem: boolean; childItemIds?: string[]; title?: string; sku?: string; variant: LineItemVariant; product: LineItemProduct; totalPrice: MoneyV2; subtotalPrice: MoneyV2; unitPrice: MoneyV2; totalInventory?: number; discountAllocations?: DiscountAllocation[]; sellingPlanAllocation?: SellingPlanAllocation; merchandise?: LineItemMerchandise; actions?: CartLineItemActions; } export interface DiscountApplication { id?: string; title?: string; description?: string; type?: string; code?: string; value?: MoneyV2 & { percentage?: number; amount?: number; }; createdAt?: string; valueType?: string; allocationMethod?: string; targetSelection?: string; targetType?: string; key?: string; } export interface ShopifyCart { id?: string; gid?: string; lines?: LineItem[]; lineItems?: LineItem[]; customAttributes?: CartAttribute[]; discountApplications?: DiscountApplication[]; subtotalPrice?: MoneyV2; totalTax?: MoneyV2; totalDuty?: MoneyV2; totalPrice?: MoneyV2; lineItemsSubtotalPrice?: MoneyV2; attributes?: CartAttribute[]; updatedAt?: string; createdAt?: string; note?: string; } export default ShopifyCart; //# sourceMappingURL=ShopifyCart.d.ts.map