import * as React from 'react'; import { ApolloClient, MutationFunction } from '@apollo/client'; import { Product } from '../../types'; import { DocumentNode } from 'graphql'; export interface CartMutationProps { client: ApolloClient; children?: any; mutate: MutationFunction; cartQuery: DocumentNode; } export declare const TEMP_CART_ID = "TEMP_CART_ID"; export declare const getAddToCartOptimisticResponse: (product: Product, quantity: number, cartId: string, client: ApolloClient, cartQuery: DocumentNode) => any; interface OptimisticResponseProps { itemId: string; client: ApolloClient; cartId: string; cartQuery?: DocumentNode; } export declare const getDecrementQuantityOptimisticResponse: ({ itemId, client, cartId, cartQuery }: OptimisticResponseProps) => any; export declare const getIncrementQuantityOptimisticResponse: ({ itemId, client, cartId, cartQuery }: OptimisticResponseProps) => any; export declare const getRemoveFromCartOptimisticResponse: ({ itemId, client, cartId, cartQuery }: OptimisticResponseProps & { setCartId: React.Dispatch; }) => any; export declare const getSetQuantityOptimisticResponse: ({ itemId, quantity, client, cartId, cartQuery }: OptimisticResponseProps & { quantity: number; }) => any; export {};