import { CustomQuery, UseCart, Context, FactoryParams, PlatformApi } from '../types'; export interface UseCartFactoryParams extends FactoryParams { load: (context: Context, params: { customQuery?: any; }) => Promise; addItem: (context: Context, params: { currentCart: CART; product: PRODUCT; quantity: any; customQuery?: CustomQuery; }) => Promise; removeItem: (context: Context, params: { currentCart: CART; product: CART_ITEM; customQuery?: CustomQuery; }) => Promise; updateItemQty: (context: Context, params: { currentCart: CART; product: CART_ITEM; quantity: number; customQuery?: CustomQuery; }) => Promise; clear: (context: Context, params: { currentCart: CART; }) => Promise; applyCoupon: (context: Context, params: { currentCart: CART; couponCode: string; customQuery?: CustomQuery; }) => Promise<{ updatedCart: CART; }>; removeCoupon: (context: Context, params: { currentCart: CART; couponCode: string; customQuery?: CustomQuery; }) => Promise<{ updatedCart: CART; }>; isInCart: (context: Context, params: { currentCart: CART; product: PRODUCT; }) => boolean; } export declare const useCartFactory: (factoryParams: UseCartFactoryParams) => () => UseCart;