import { FetchResult } from '@apollo/client/core' ; import { CustomQuery } from '@vue-storefront/core' ; import applyCouponToCart from './applyCouponToCart' ; import { ApplyCouponToCartInput , ApplyCouponToCartMutation , ApplyCouponToCartMutationVariables , } from '../../types/GraphQL' ; import { Context } from '../../types/context' ; export default async ( context , input , customQuery = { applyCouponToCart : 'applyCouponToCart' } ) : Promise < FetchResult < ApplyCouponToCartMutation > > => { const { applyCouponToCart : applyCouponToCartGQL } = context . extendQuery ( customQuery , { applyCouponToCart : { query : applyCouponToCart , variables : { input } , } , } ) ; return context . client . mutate < ApplyCouponToCartMutation , ApplyCouponToCartMutationVariables > ( { mutation : applyCouponToCartGQL . query , variables : applyCouponToCartGQL . variables , } ) ; } ;