import { HttpClient, NonNullablePaths, EventDefinition, MaybeContext, BuildRESTFunction, BuildEventDefinition } from '@wix/sdk-types';
import { Cart, GetCurrentCartApplicationErrors, UpdateCurrentCartOptions, AddToCurrentCartOptions, AddToCartResponse, RemoveLineItemsResponse, CreateCheckoutFromCurrentCartOptions, CreateCheckoutResponse, RemoveCouponResponse, LineItemQuantityUpdate, UpdateLineItemsQuantityResponse, EstimateCurrentCartTotalsOptions, EstimateTotalsResponse, CartDeletedEnvelope, CartUpdatedEnvelope, CartCreatedEnvelope } from './index.typings.js';
export { AccountInfo, AccountInfoMetadata, ActionEvent, AddToCartRequest, AddToCurrentCartAndEstimateTotalsRequest, AddToCurrentCartRequest, AdditionalFee, AdditionalFeeSource, AdditionalFeeSourceWithLiterals, Address, AddressLocation, AddressWithContact, AggregatedTaxBreakdown, ApplicableLineItems, ApplicationError, AppliedDiscount, AppliedDiscountDiscountSourceOneOf, AppliedDiscountDiscountType, AppliedDiscountDiscountTypeWithLiterals, AutoTaxFallbackCalculationDetails, BalanceType, BalanceTypeWithLiterals, BaseEventMetadata, BillingSettings, BuyerInfo, BuyerInfoIdOneOf, CalculatedItemModifier, CalculatedLineItem, CalculationErrors, CalculationErrorsShippingCalculationErrorOneOf, Carrier, CarrierError, CarrierErrors, CarrierServiceOption, CartDiscount, CartDiscountDiscountSourceOneOf, CatalogOverrideFields, CatalogReference, ChannelType, ChannelTypeWithLiterals, ChargeType, ChargeTypeWithLiterals, Color, Coupon, CreateCartRequest, CreateCartResponse, CreateCheckoutFromCurrentCartRequest, CreateCheckoutRequest, CustomLineItem, DeleteCartRequest, DeleteCartResponse, DeleteCurrentCartRequest, DeliveryAllocation, DeliveryLogistics, DeliveryTimeSlot, Description, DescriptionLine, DescriptionLineDescriptionLineValueOneOf, DescriptionLineName, DescriptionLineType, DescriptionLineTypeWithLiterals, DescriptionLineValueOneOf, Details, DetailsKindOneOf, Dimensions, DimensionsUnit, DimensionsUnitWithLiterals, DiscountRule, DiscountRuleName, DiscountType, DiscountTypeWithLiterals, DomainEvent, DomainEventBodyOneOf, Empty, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EstimateCurrentCartTotalsRequest, EstimateTotalsRequest, EventMetadata, ExtendedFields, FallbackReason, FallbackReasonWithLiterals, FieldViolation, FileType, FileTypeWithLiterals, FocalPoint, FreeTrialPeriod, FullAddressContactDetails, GetCartByCheckoutIdRequest, GetCartByCheckoutIdResponse, GetCartRequest, GetCartResponse, GetCurrentCartRequest, GetCurrentCartResponse, GiftCard, GiftCardCalculationError, Group, HostSelectedMembership, IdentificationData, IdentificationDataIdOneOf, InvalidMembership, ItemAvailabilityInfo, ItemAvailabilityStatus, ItemAvailabilityStatusWithLiterals, ItemCombination, ItemCombinationLineItem, ItemModifier, ItemTaxFullDetails, ItemType, ItemTypeItemTypeDataOneOf, ItemTypePreset, ItemTypePresetWithLiterals, JurisdictionType, JurisdictionTypeWithLiterals, LineItem, LineItemAdded, LineItemDiscount, LineItemPricesData, ManualCalculationReason, ManualCalculationReasonWithLiterals, Membership, MembershipName, MembershipOptions, MembershipPaymentCredits, MerchantDiscount, MerchantDiscountInput, MessageEnvelope, ModifierGroup, MultiCurrencyPrice, NameInLineItem, NameInLineItemWithLiterals, NameInOther, NameInOtherWithLiterals, Other, OtherCharge, PaymentOption, PaymentOptionType, PaymentOptionTypeWithLiterals, PhysicalProperties, PickupDetails, PickupMethod, PickupMethodWithLiterals, PlainTextValue, PlatformFee, PlatformFeeChargeType, PlatformFeeChargeTypeWithLiterals, Policy, PriceDescription, PriceSummary, ProductName, RateType, RateTypeWithLiterals, Region, RemoveBusinessLocationRequest, RemoveBusinessLocationResponse, RemoveCouponFromCurrentCartRequest, RemoveCouponRequest, RemoveLineItemsFromCurrentCartRequest, RemoveLineItemsRequest, RestoreInfo, RuleType, RuleTypeWithLiterals, Scope, SecuredMedia, SelectedCarrierServiceOption, SelectedCarrierServiceOptionOtherCharge, SelectedCarrierServiceOptionPrices, SelectedMembership, SelectedMemberships, SelectedShippingOption, ServiceProperties, Severity, SeverityWithLiterals, ShippingInformation, ShippingOption, ShippingPrice, ShippingRegion, StreetAddress, SubscriptionFrequency, SubscriptionFrequencyWithLiterals, SubscriptionOptionInfo, SubscriptionSettings, SuggestedFix, SuggestedFixWithLiterals, SystemError, Target, TargetLineItem, TargetTargetTypeOneOf, TaxBreakdown, TaxCalculationDetails, TaxCalculationDetailsCalculationDetailsOneOf, TaxRateBreakdown, TaxSummary, TaxableAddress, TaxableAddressTaxableAddressDataOneOf, TaxableAddressType, TaxableAddressTypeWithLiterals, Title, TranslatableString, UpdateCartRequest, UpdateCartResponse, UpdateCurrentCartLineItemQuantityRequest, UpdateLineItemsQuantityRequest, V1Coupon, V1DiscountRule, V1DiscountRuleName, V1ItemModifier, V1MerchantDiscount, V1ModifierGroup, ValidationError, VatId, VatType, VatTypeWithLiterals, Violation, WebhookIdentityType, WebhookIdentityTypeWithLiterals, WeightUnit, WeightUnitWithLiterals } from './index.typings.js';

declare function getCurrentCart$1(httpClient: HttpClient): GetCurrentCartSignature;
interface GetCurrentCartSignature {
    /**
     * Retrieves the current site visitor/member's cart.
     *
     * >**Notes:**
     * > + A 'current cart' is automatically created when the site visitor/member adds an item to their cart, or when calling [Add To Current Cart](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/purchase-flow/cart/cart/add-to-current-cart).
     * > + Calling this method before adding an item to the cart returns a 404 error.
     * > + This method doesn't calculate or return price totals. To get estimated totals including tax, shipping, and discounts, use [Estimate Current Cart Totals](https://dev.wix.com/docs/api-reference/business-solutions/e-commerce/purchase-flow/cart/cart/estimate-current-cart-totals).
     * > + This method requires [visitor or member authentication](https://dev.wix.com/docs/api-reference/articles/authentication/about-identities).
     * @returns Current session's active cart.
     */
    (): Promise<NonNullablePaths<Cart, `lineItems` | `lineItems.${number}.quantity` | `lineItems.${number}.catalogReference.catalogItemId` | `lineItems.${number}.catalogReference.appId` | `lineItems.${number}.productName.original` | `lineItems.${number}.price.amount` | `lineItems.${number}.price.convertedAmount` | `lineItems.${number}.price.formattedAmount` | `lineItems.${number}.price.formattedConvertedAmount` | `lineItems.${number}.availability.status` | `lineItems.${number}.physicalProperties.shippable` | `lineItems.${number}.itemType.preset` | `lineItems.${number}.itemType.custom` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `lineItems.${number}.subscriptionOptionInfo.title.original` | `lineItems.${number}.subscriptionOptionInfo.description.original` | `lineItems.${number}.paymentOption` | `lineItems.${number}.priceDescription.original` | `lineItems.${number}.selectedMembership._id` | `lineItems.${number}.selectedMembership.appId` | `lineItems.${number}.customLineItem` | `lineItems.${number}.priceUndetermined` | `lineItems.${number}.fixedQuantity` | `lineItems.${number}.catalogOverrideFields.paymentOption.value` | `lineItems.${number}.savePaymentMethod` | `lineItems.${number}.taxableAddress.addressType` | `lineItems.${number}.membersOnly` | `buyerInfo.visitorId` | `buyerInfo.memberId` | `buyerInfo.userId` | `currency` | `conversionCurrency` | `weightUnit` | `appliedDiscounts` | `appliedDiscounts.${number}.coupon._id` | `appliedDiscounts.${number}.coupon.code` | `contactInfo.address.streetAddress.number` | `contactInfo.address.streetAddress.name` | `contactInfo.contactDetails.vatId._id` | `contactInfo.contactDetails.vatId.type` | `selectedShippingOption.code` | `paymentCurrency`, 6> & {
        __applicationErrorsType?: GetCurrentCartApplicationErrors;
    }>;
}
declare function updateCurrentCart$1(httpClient: HttpClient): UpdateCurrentCartSignature;
interface UpdateCurrentCartSignature {
    /**
     * Updates the current site visitor's cart.
     *
     * >**Notes:**
     * >+ When adding catalog line items, the `lineItems.catalogReference.appId` and `lineItems.catalogReference.catalogItemId` fields are required.
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/api-reference/articles/authentication/about-identities).
     * >+ After a cart is updated, call [Refresh Cart](https://dev.wix.com/docs/sdk/frontend-modules/ecom/refresh-cart) to update the cart's UI elements and trigger the Cart Updated event.
     * @param - Current cart update options.
     * @returns Updated Cart.
     */
    (options?: NonNullablePaths<UpdateCurrentCartOptions, `lineItems.${number}.catalogReference`, 4>): Promise<NonNullablePaths<Cart, `lineItems` | `lineItems.${number}.quantity` | `lineItems.${number}.catalogReference.catalogItemId` | `lineItems.${number}.catalogReference.appId` | `lineItems.${number}.productName.original` | `lineItems.${number}.price.amount` | `lineItems.${number}.price.convertedAmount` | `lineItems.${number}.price.formattedAmount` | `lineItems.${number}.price.formattedConvertedAmount` | `lineItems.${number}.availability.status` | `lineItems.${number}.physicalProperties.shippable` | `lineItems.${number}.itemType.preset` | `lineItems.${number}.itemType.custom` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `lineItems.${number}.subscriptionOptionInfo.title.original` | `lineItems.${number}.subscriptionOptionInfo.description.original` | `lineItems.${number}.paymentOption` | `lineItems.${number}.priceDescription.original` | `lineItems.${number}.selectedMembership._id` | `lineItems.${number}.selectedMembership.appId` | `lineItems.${number}.customLineItem` | `lineItems.${number}.priceUndetermined` | `lineItems.${number}.fixedQuantity` | `lineItems.${number}.catalogOverrideFields.paymentOption.value` | `lineItems.${number}.savePaymentMethod` | `lineItems.${number}.taxableAddress.addressType` | `lineItems.${number}.membersOnly` | `buyerInfo.visitorId` | `buyerInfo.memberId` | `buyerInfo.userId` | `currency` | `conversionCurrency` | `weightUnit` | `appliedDiscounts` | `appliedDiscounts.${number}.coupon._id` | `appliedDiscounts.${number}.coupon.code` | `contactInfo.address.streetAddress.number` | `contactInfo.address.streetAddress.name` | `contactInfo.contactDetails.vatId._id` | `contactInfo.contactDetails.vatId.type` | `selectedShippingOption.code` | `paymentCurrency`, 6>>;
}
declare function addToCurrentCart$1(httpClient: HttpClient): AddToCurrentCartSignature;
interface AddToCurrentCartSignature {
    /**
     * Adds catalog line items to the current site visitor's cart.
     *
     * >**Notes:**
     * >+ When adding catalog line items, the `lineItems.catalogReference.appId` and `lineItems.catalogReference.catalogItemId` fields are required.
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/api-reference/articles/authentication/about-identities).
     * >+ After a cart is updated, call [Refresh Cart](https://dev.wix.com/docs/sdk/frontend-modules/ecom/refresh-cart) to update the cart's UI elements and trigger the Cart Updated event.
     * @param - Items to be added to the current cart.
     */
    (options?: NonNullablePaths<AddToCurrentCartOptions, `customLineItems.${number}.descriptionLines.${number}.name` | `customLineItems.${number}.itemType` | `customLineItems.${number}.price` | `customLineItems.${number}.productName` | `customLineItems.${number}.quantity` | `lineItems.${number}.catalogReference` | `lineItems.${number}.quantity` | `lineItems.${number}.selectedMembership._id` | `lineItems.${number}.selectedMembership.appId`, 6>): Promise<NonNullablePaths<AddToCartResponse, `cart.lineItems` | `cart.lineItems.${number}.quantity` | `cart.lineItems.${number}.catalogReference.catalogItemId` | `cart.lineItems.${number}.catalogReference.appId` | `cart.lineItems.${number}.productName.original` | `cart.lineItems.${number}.price.amount` | `cart.lineItems.${number}.price.convertedAmount` | `cart.lineItems.${number}.price.formattedAmount` | `cart.lineItems.${number}.price.formattedConvertedAmount` | `cart.lineItems.${number}.availability.status` | `cart.lineItems.${number}.physicalProperties.shippable` | `cart.lineItems.${number}.itemType.preset` | `cart.lineItems.${number}.itemType.custom` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `cart.lineItems.${number}.subscriptionOptionInfo.title.original` | `cart.lineItems.${number}.subscriptionOptionInfo.description.original` | `cart.lineItems.${number}.paymentOption` | `cart.lineItems.${number}.priceDescription.original` | `cart.lineItems.${number}.selectedMembership._id` | `cart.lineItems.${number}.selectedMembership.appId` | `cart.lineItems.${number}.customLineItem` | `cart.lineItems.${number}.priceUndetermined` | `cart.lineItems.${number}.fixedQuantity` | `cart.lineItems.${number}.catalogOverrideFields.paymentOption.value` | `cart.lineItems.${number}.savePaymentMethod` | `cart.lineItems.${number}.taxableAddress.addressType` | `cart.lineItems.${number}.membersOnly` | `cart.buyerInfo.visitorId` | `cart.buyerInfo.memberId` | `cart.buyerInfo.userId` | `cart.currency` | `cart.conversionCurrency` | `cart.weightUnit` | `cart.appliedDiscounts` | `cart.appliedDiscounts.${number}.coupon._id` | `cart.appliedDiscounts.${number}.coupon.code` | `cart.contactInfo.address.streetAddress.number` | `cart.contactInfo.address.streetAddress.name` | `cart.contactInfo.contactDetails.vatId._id` | `cart.contactInfo.contactDetails.vatId.type` | `cart.selectedShippingOption.code` | `cart.paymentCurrency`, 7>>;
}
declare function removeLineItemsFromCurrentCart$1(httpClient: HttpClient): RemoveLineItemsFromCurrentCartSignature;
interface RemoveLineItemsFromCurrentCartSignature {
    /**
     * Removes line items from the current site visitor's cart.
     *
     * >**Notes:**
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     * >+ After a cart is updated, call [Refresh Cart](https://dev.wix.com/docs/sdk/frontend-modules/ecom/refresh-cart) to update the cart's UI elements and trigger the Cart Updated event.
     * @param - IDs of the line items to remove from the cart.
     */
    (lineItemIds: string[]): Promise<NonNullablePaths<RemoveLineItemsResponse, `cart.lineItems` | `cart.lineItems.${number}.quantity` | `cart.lineItems.${number}.catalogReference.catalogItemId` | `cart.lineItems.${number}.catalogReference.appId` | `cart.lineItems.${number}.productName.original` | `cart.lineItems.${number}.price.amount` | `cart.lineItems.${number}.price.convertedAmount` | `cart.lineItems.${number}.price.formattedAmount` | `cart.lineItems.${number}.price.formattedConvertedAmount` | `cart.lineItems.${number}.availability.status` | `cart.lineItems.${number}.physicalProperties.shippable` | `cart.lineItems.${number}.itemType.preset` | `cart.lineItems.${number}.itemType.custom` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `cart.lineItems.${number}.subscriptionOptionInfo.title.original` | `cart.lineItems.${number}.subscriptionOptionInfo.description.original` | `cart.lineItems.${number}.paymentOption` | `cart.lineItems.${number}.priceDescription.original` | `cart.lineItems.${number}.selectedMembership._id` | `cart.lineItems.${number}.selectedMembership.appId` | `cart.lineItems.${number}.customLineItem` | `cart.lineItems.${number}.priceUndetermined` | `cart.lineItems.${number}.fixedQuantity` | `cart.lineItems.${number}.catalogOverrideFields.paymentOption.value` | `cart.lineItems.${number}.savePaymentMethod` | `cart.lineItems.${number}.taxableAddress.addressType` | `cart.lineItems.${number}.membersOnly` | `cart.buyerInfo.visitorId` | `cart.buyerInfo.memberId` | `cart.buyerInfo.userId` | `cart.currency` | `cart.conversionCurrency` | `cart.weightUnit` | `cart.appliedDiscounts` | `cart.appliedDiscounts.${number}.coupon._id` | `cart.appliedDiscounts.${number}.coupon.code` | `cart.contactInfo.address.streetAddress.number` | `cart.contactInfo.address.streetAddress.name` | `cart.contactInfo.contactDetails.vatId._id` | `cart.contactInfo.contactDetails.vatId.type` | `cart.selectedShippingOption.code` | `cart.paymentCurrency`, 7>>;
}
declare function createCheckoutFromCurrentCart$1(httpClient: HttpClient): CreateCheckoutFromCurrentCartSignature;
interface CreateCheckoutFromCurrentCartSignature {
    /**
     * Creates a checkout from the current site visitor's cart.
     *
     * If a checkout was already created from the current cart,
     * that checkout will be updated with any new information from the cart.
     *
     * >**Notes:**
     * >+ `channelType` is a required field.
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     * @param - Checkout creation options.
     */
    (options?: CreateCheckoutFromCurrentCartOptions): Promise<NonNullablePaths<CreateCheckoutResponse, `checkoutId`, 2>>;
}
declare function removeCouponFromCurrentCart$1(httpClient: HttpClient): RemoveCouponFromCurrentCartSignature;
interface RemoveCouponFromCurrentCartSignature {
    /**
     * Removes the coupon from the current site visitor's cart.
     *
     * >**Notes:**
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     * >+ After a cart is updated, call [Refresh Cart](https://dev.wix.com/docs/sdk/frontend-modules/ecom/refresh-cart) to update the cart's UI elements and trigger the Cart Updated event.
     */
    (): Promise<NonNullablePaths<RemoveCouponResponse, `cart.lineItems` | `cart.lineItems.${number}.quantity` | `cart.lineItems.${number}.catalogReference.catalogItemId` | `cart.lineItems.${number}.catalogReference.appId` | `cart.lineItems.${number}.productName.original` | `cart.lineItems.${number}.price.amount` | `cart.lineItems.${number}.price.convertedAmount` | `cart.lineItems.${number}.price.formattedAmount` | `cart.lineItems.${number}.price.formattedConvertedAmount` | `cart.lineItems.${number}.availability.status` | `cart.lineItems.${number}.physicalProperties.shippable` | `cart.lineItems.${number}.itemType.preset` | `cart.lineItems.${number}.itemType.custom` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `cart.lineItems.${number}.subscriptionOptionInfo.title.original` | `cart.lineItems.${number}.subscriptionOptionInfo.description.original` | `cart.lineItems.${number}.paymentOption` | `cart.lineItems.${number}.priceDescription.original` | `cart.lineItems.${number}.selectedMembership._id` | `cart.lineItems.${number}.selectedMembership.appId` | `cart.lineItems.${number}.customLineItem` | `cart.lineItems.${number}.priceUndetermined` | `cart.lineItems.${number}.fixedQuantity` | `cart.lineItems.${number}.catalogOverrideFields.paymentOption.value` | `cart.lineItems.${number}.savePaymentMethod` | `cart.lineItems.${number}.taxableAddress.addressType` | `cart.lineItems.${number}.membersOnly` | `cart.buyerInfo.visitorId` | `cart.buyerInfo.memberId` | `cart.buyerInfo.userId` | `cart.currency` | `cart.conversionCurrency` | `cart.weightUnit` | `cart.appliedDiscounts` | `cart.appliedDiscounts.${number}.coupon._id` | `cart.appliedDiscounts.${number}.coupon.code` | `cart.contactInfo.address.streetAddress.number` | `cart.contactInfo.address.streetAddress.name` | `cart.contactInfo.contactDetails.vatId._id` | `cart.contactInfo.contactDetails.vatId.type` | `cart.selectedShippingOption.code` | `cart.paymentCurrency`, 7>>;
}
declare function updateCurrentCartLineItemQuantity$1(httpClient: HttpClient): UpdateCurrentCartLineItemQuantitySignature;
interface UpdateCurrentCartLineItemQuantitySignature {
    /**
     * Updates the quantity of 1 or more line items in the current site visitor's cart.
     *
     * This method is only for updating the quantity of line items.
     * To entirely remove a line item from the current cart, use the Remove Line Items From Current Cart method.
     * To add a new line item to the current cart, use the Add To Current Cart method.
     *
     * This method checks the amount of stock remaining for this line item.
     * If the specified `quantity` is greater than the remaining stock,
     * then the `quantity` returned in the response is the total amount of remaining stock.
     *
     * >**Notes:**
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     * >+ After a cart is updated, call [Refresh Cart](https://dev.wix.com/docs/sdk/frontend-modules/ecom/refresh-cart) to update the cart's UI elements and trigger the Cart Updated event.
     * @param - Line item IDs and their new quantity.
     */
    (lineItems: LineItemQuantityUpdate[]): Promise<NonNullablePaths<UpdateLineItemsQuantityResponse, `cart.lineItems` | `cart.lineItems.${number}.quantity` | `cart.lineItems.${number}.catalogReference.catalogItemId` | `cart.lineItems.${number}.catalogReference.appId` | `cart.lineItems.${number}.productName.original` | `cart.lineItems.${number}.price.amount` | `cart.lineItems.${number}.price.convertedAmount` | `cart.lineItems.${number}.price.formattedAmount` | `cart.lineItems.${number}.price.formattedConvertedAmount` | `cart.lineItems.${number}.availability.status` | `cart.lineItems.${number}.physicalProperties.shippable` | `cart.lineItems.${number}.itemType.preset` | `cart.lineItems.${number}.itemType.custom` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `cart.lineItems.${number}.subscriptionOptionInfo.title.original` | `cart.lineItems.${number}.subscriptionOptionInfo.description.original` | `cart.lineItems.${number}.paymentOption` | `cart.lineItems.${number}.priceDescription.original` | `cart.lineItems.${number}.selectedMembership._id` | `cart.lineItems.${number}.selectedMembership.appId` | `cart.lineItems.${number}.customLineItem` | `cart.lineItems.${number}.priceUndetermined` | `cart.lineItems.${number}.fixedQuantity` | `cart.lineItems.${number}.catalogOverrideFields.paymentOption.value` | `cart.lineItems.${number}.savePaymentMethod` | `cart.lineItems.${number}.taxableAddress.addressType` | `cart.lineItems.${number}.membersOnly` | `cart.buyerInfo.visitorId` | `cart.buyerInfo.memberId` | `cart.buyerInfo.userId` | `cart.currency` | `cart.conversionCurrency` | `cart.weightUnit` | `cart.appliedDiscounts` | `cart.appliedDiscounts.${number}.coupon._id` | `cart.appliedDiscounts.${number}.coupon.code` | `cart.contactInfo.address.streetAddress.number` | `cart.contactInfo.address.streetAddress.name` | `cart.contactInfo.contactDetails.vatId._id` | `cart.contactInfo.contactDetails.vatId.type` | `cart.selectedShippingOption.code` | `cart.paymentCurrency`, 7>>;
}
declare function estimateCurrentCartTotals$1(httpClient: HttpClient): EstimateCurrentCartTotalsSignature;
interface EstimateCurrentCartTotalsSignature {
    /**
     * Estimates the current cart's price totals (including tax),
     * based on a selected carrier service, shipping address, and billing information.
     *
     * Use this method for preview purposes, such as displaying estimated totals before checkout.
     * This provides a partial estimation, not a full cart calculation.
     *
     * >**Notes:**
     * >+ Use boolean flags to control which components to include in the estimation: delivery costs, additional fees, taxes, and gift cards. Components that aren't explicitly enabled are excluded.
     * >+ Line item discounts are already calculated and applied to the cart.
     * >+ Not passing any properties only estimates the cart items price totals, without considering shipping and billing information.
     * >+ Calling this method before adding an item to the cart returns a 404 error, as the cart doesn't exist yet.
     * >+ This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     * @param - Total estimation options.
     */
    (options?: EstimateCurrentCartTotalsOptions): Promise<NonNullablePaths<EstimateTotalsResponse, `cart.lineItems` | `cart.lineItems.${number}.quantity` | `cart.lineItems.${number}.catalogReference.catalogItemId` | `cart.lineItems.${number}.catalogReference.appId` | `cart.lineItems.${number}.productName.original` | `cart.lineItems.${number}.price.amount` | `cart.lineItems.${number}.price.convertedAmount` | `cart.lineItems.${number}.price.formattedAmount` | `cart.lineItems.${number}.price.formattedConvertedAmount` | `cart.lineItems.${number}.availability.status` | `cart.lineItems.${number}.physicalProperties.shippable` | `cart.lineItems.${number}.itemType.preset` | `cart.lineItems.${number}.itemType.custom` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.frequency` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.autoRenewal` | `cart.lineItems.${number}.subscriptionOptionInfo.subscriptionSettings.enableCustomerCancellation` | `cart.lineItems.${number}.subscriptionOptionInfo.title.original` | `cart.lineItems.${number}.subscriptionOptionInfo.description.original` | `cart.lineItems.${number}.paymentOption` | `cart.lineItems.${number}.priceDescription.original` | `cart.lineItems.${number}.selectedMembership._id` | `cart.lineItems.${number}.selectedMembership.appId` | `cart.lineItems.${number}.customLineItem` | `cart.lineItems.${number}.priceUndetermined` | `cart.lineItems.${number}.fixedQuantity` | `cart.lineItems.${number}.catalogOverrideFields.paymentOption.value` | `cart.lineItems.${number}.savePaymentMethod` | `cart.lineItems.${number}.taxableAddress.addressType` | `cart.lineItems.${number}.membersOnly` | `cart.buyerInfo.visitorId` | `cart.buyerInfo.memberId` | `cart.buyerInfo.userId` | `cart.currency` | `cart.conversionCurrency` | `cart.weightUnit` | `cart.appliedDiscounts` | `cart.appliedDiscounts.${number}.coupon._id` | `cart.appliedDiscounts.${number}.coupon.code` | `cart.contactInfo.address.streetAddress.number` | `cart.contactInfo.address.streetAddress.name` | `cart.contactInfo.contactDetails.vatId._id` | `cart.contactInfo.contactDetails.vatId.type` | `cart.selectedShippingOption.code` | `cart.paymentCurrency` | `calculatedLineItems` | `calculatedLineItems.${number}.lineItemId` | `calculatedLineItems.${number}.pricesBreakdown.totalPriceAfterTax.amount` | `calculatedLineItems.${number}.pricesBreakdown.totalPriceAfterTax.convertedAmount` | `calculatedLineItems.${number}.pricesBreakdown.totalPriceAfterTax.formattedAmount` | `calculatedLineItems.${number}.pricesBreakdown.totalPriceAfterTax.formattedConvertedAmount` | `calculatedLineItems.${number}.pricesBreakdown.taxDetails.taxRate` | `calculatedLineItems.${number}.paymentOption` | `calculatedLineItems.${number}.taxableAddress.addressType` | `priceSummary.subtotal.amount` | `priceSummary.subtotal.convertedAmount` | `priceSummary.subtotal.formattedAmount` | `priceSummary.subtotal.formattedConvertedAmount` | `giftCard._id` | `giftCard.obfuscatedCode` | `giftCard.amount.amount` | `giftCard.amount.convertedAmount` | `giftCard.amount.formattedAmount` | `giftCard.amount.formattedConvertedAmount` | `giftCard.appId` | `taxSummary.taxableAmount.amount` | `taxSummary.taxableAmount.convertedAmount` | `taxSummary.taxableAmount.formattedAmount` | `taxSummary.taxableAmount.formattedConvertedAmount` | `taxSummary.calculationDetails.manualRateReason` | `taxSummary.calculationDetails.autoTaxFallbackDetails.fallbackReason` | `taxSummary.calculationDetails.autoTaxFallbackDetails.error.code` | `taxSummary.calculationDetails.autoTaxFallbackDetails.error.description` | `taxSummary.calculationDetails.rateType` | `shippingInfo.region._id` | `shippingInfo.region.name` | `shippingInfo.selectedCarrierServiceOption.code` | `shippingInfo.selectedCarrierServiceOption.title` | `shippingInfo.selectedCarrierServiceOption.logistics.pickupDetails.address.streetAddress.number` | `shippingInfo.selectedCarrierServiceOption.logistics.pickupDetails.address.streetAddress.name` | `shippingInfo.selectedCarrierServiceOption.logistics.pickupDetails.businessLocation` | `shippingInfo.selectedCarrierServiceOption.logistics.pickupDetails.pickupMethod` | `shippingInfo.selectedCarrierServiceOption.cost.totalPriceAfterTax.amount` | `shippingInfo.selectedCarrierServiceOption.cost.totalPriceAfterTax.convertedAmount` | `shippingInfo.selectedCarrierServiceOption.cost.totalPriceAfterTax.formattedAmount` | `shippingInfo.selectedCarrierServiceOption.cost.totalPriceAfterTax.formattedConvertedAmount` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.taxRate` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.rateBreakdown` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.rateBreakdown.${number}.name` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.rateBreakdown.${number}.rate` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.taxBreakdown` | `shippingInfo.selectedCarrierServiceOption.cost.taxDetails.taxBreakdown.${number}.jurisdictionType` | `shippingInfo.selectedCarrierServiceOption.requestedShippingOption` | `shippingInfo.selectedCarrierServiceOption.otherCharges` | `shippingInfo.selectedCarrierServiceOption.otherCharges.${number}.type` | `shippingInfo.selectedCarrierServiceOption.deliveryAllocations` | `shippingInfo.selectedCarrierServiceOption.deliveryAllocations.${number}.deliveryCarrier.code` | `shippingInfo.carrierServiceOptions` | `shippingInfo.carrierServiceOptions.${number}.carrierId` | `appliedDiscounts` | `appliedDiscounts.${number}.coupon._id` | `appliedDiscounts.${number}.coupon.code` | `appliedDiscounts.${number}.coupon.amount.amount` | `appliedDiscounts.${number}.coupon.amount.convertedAmount` | `appliedDiscounts.${number}.coupon.amount.formattedAmount` | `appliedDiscounts.${number}.coupon.amount.formattedConvertedAmount` | `appliedDiscounts.${number}.coupon.name` | `appliedDiscounts.${number}.discountRule._id` | `appliedDiscounts.${number}.discountRule.name.original` | `appliedDiscounts.${number}.discountType` | `calculationErrors.generalShippingCalculationError.applicationError.code` | `calculationErrors.generalShippingCalculationError.applicationError.description` | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations` | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.field` | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.description` | `calculationErrors.generalShippingCalculationError.validationError.fieldViolations.${number}.violatedRule` | `calculationErrors.carrierErrors.errors` | `calculationErrors.carrierErrors.errors.${number}.carrierId` | `calculationErrors.orderValidationErrors` | `weightUnit` | `currency` | `payNow.subtotal.amount` | `payNow.subtotal.convertedAmount` | `payNow.subtotal.formattedAmount` | `payNow.subtotal.formattedConvertedAmount` | `payLater.subtotal.amount` | `payLater.subtotal.convertedAmount` | `payLater.subtotal.formattedAmount` | `payLater.subtotal.formattedConvertedAmount` | `membershipOptions.eligibleMemberships` | `membershipOptions.eligibleMemberships.${number}._id` | `membershipOptions.eligibleMemberships.${number}.appId` | `membershipOptions.eligibleMemberships.${number}.name.original` | `membershipOptions.eligibleMemberships.${number}.credits.total` | `membershipOptions.eligibleMemberships.${number}.credits.remaining` | `membershipOptions.invalidMemberships` | `membershipOptions.invalidMemberships.${number}.reason` | `membershipOptions.selectedMemberships` | `membershipOptions.selectedMemberships.${number}._id` | `membershipOptions.selectedMemberships.${number}.appId` | `additionalFees` | `additionalFees.${number}.name` | `additionalFees.${number}.price.amount` | `additionalFees.${number}.price.convertedAmount` | `additionalFees.${number}.price.formattedAmount` | `additionalFees.${number}.price.formattedConvertedAmount` | `additionalFees.${number}.taxDetails.taxRate` | `additionalFees.${number}.source` | `violations` | `violations.${number}.severity` | `violations.${number}.target.other.name` | `violations.${number}.target.lineItem.name`, 8>>;
}
declare function deleteCurrentCart$1(httpClient: HttpClient): DeleteCurrentCartSignature;
interface DeleteCurrentCartSignature {
    /**
     * Deletes the current site visitor's cart.
     *
     * >**Note:**
     * >This method requires [visitor or member authentication](https://dev.wix.com/docs/rest/articles/getting-started/access-types-and-permissions).
     */
    (): Promise<void>;
}
declare const onCartDeleted$1: EventDefinition<CartDeletedEnvelope, "wix.ecom.v1.cart_deleted">;
declare const onCartUpdated$1: EventDefinition<CartUpdatedEnvelope, "wix.ecom.v1.cart_updated">;
declare const onCartCreated$1: EventDefinition<CartCreatedEnvelope, "wix.ecom.v1.cart_created">;

declare const getCurrentCart: MaybeContext<BuildRESTFunction<typeof getCurrentCart$1> & typeof getCurrentCart$1>;
declare const updateCurrentCart: MaybeContext<BuildRESTFunction<typeof updateCurrentCart$1> & typeof updateCurrentCart$1>;
declare const addToCurrentCart: MaybeContext<BuildRESTFunction<typeof addToCurrentCart$1> & typeof addToCurrentCart$1>;
declare const removeLineItemsFromCurrentCart: MaybeContext<BuildRESTFunction<typeof removeLineItemsFromCurrentCart$1> & typeof removeLineItemsFromCurrentCart$1>;
declare const createCheckoutFromCurrentCart: MaybeContext<BuildRESTFunction<typeof createCheckoutFromCurrentCart$1> & typeof createCheckoutFromCurrentCart$1>;
declare const removeCouponFromCurrentCart: MaybeContext<BuildRESTFunction<typeof removeCouponFromCurrentCart$1> & typeof removeCouponFromCurrentCart$1>;
declare const updateCurrentCartLineItemQuantity: MaybeContext<BuildRESTFunction<typeof updateCurrentCartLineItemQuantity$1> & typeof updateCurrentCartLineItemQuantity$1>;
declare const estimateCurrentCartTotals: MaybeContext<BuildRESTFunction<typeof estimateCurrentCartTotals$1> & typeof estimateCurrentCartTotals$1>;
declare const deleteCurrentCart: MaybeContext<BuildRESTFunction<typeof deleteCurrentCart$1> & typeof deleteCurrentCart$1>;
/**
 * Triggered when a cart is deleted.
 */
declare const onCartDeleted: BuildEventDefinition<typeof onCartDeleted$1> & typeof onCartDeleted$1;
/** */
declare const onCartUpdated: BuildEventDefinition<typeof onCartUpdated$1> & typeof onCartUpdated$1;
/**
 * Triggered when a cart is created.
 */
declare const onCartCreated: BuildEventDefinition<typeof onCartCreated$1> & typeof onCartCreated$1;

export { AddToCartResponse, AddToCurrentCartOptions, Cart, CartCreatedEnvelope, CartDeletedEnvelope, CartUpdatedEnvelope, CreateCheckoutFromCurrentCartOptions, CreateCheckoutResponse, EstimateCurrentCartTotalsOptions, EstimateTotalsResponse, GetCurrentCartApplicationErrors, LineItemQuantityUpdate, RemoveCouponResponse, RemoveLineItemsResponse, UpdateCurrentCartOptions, UpdateLineItemsQuantityResponse, addToCurrentCart, createCheckoutFromCurrentCart, deleteCurrentCart, estimateCurrentCartTotals, getCurrentCart, onCartCreated, onCartDeleted, onCartUpdated, removeCouponFromCurrentCart, removeLineItemsFromCurrentCart, updateCurrentCart, updateCurrentCartLineItemQuantity };
