UNPKG

craft-commerce-headless-sdk

Version:

Craft Commerce Headless SDK provides tools to integrate Craft Commerce in headless environments, focusing on building API-driven checkout experiences.

70 lines (69 loc) 2.13 kB
import { Client } from './client'; export interface CompleteCartData { forceSave?: boolean; number?: string; registerUserOnOrderComplete?: boolean; } export interface GetCartData { number?: string; forceSave?: boolean; } export interface LoadCartData { number?: string; } export interface UpdateCartData { billingAddress?: Record<string, any>; billingAddressId?: number; billingAddressSameAsShipping?: boolean; clearAddresses?: boolean; clearBillingAddress?: boolean; clearLineItems?: boolean; clearNotices?: boolean; clearShippingAddress?: boolean; couponCode?: string; email?: string; estimatedBillingAddress?: object; estimatedBillingAddressSameAsShipping?: boolean; estimatedShippingAddress?: object; fields?: Record<string, any>; forceSave?: boolean; gatewayId?: number; lineItems?: Record<number, { qty?: number; options?: Record<string, any>; note?: string; remove?: boolean; }>; makePrimaryBillingAddress?: boolean; makePrimaryShippingAddress?: boolean; number?: string; paymentCurrency?: string; paymentSourceId?: number; purchasableId?: number; purchasables?: Array<{ id: number; qty?: number; options?: Record<string, any>; note?: string; }>; registerUserOnOrderComplete?: boolean; saveAddressesOnOrderComplete?: boolean; saveBillingAddressOnOrderComplete?: boolean; saveShippingAddressOnOrderComplete?: boolean; shippingAddress?: Record<string, any>; shippingAddressId?: number; shippingAddressSameAsBilling?: boolean; shippingMethodHandle?: string; } /** * Cart-related API client. * @param craftClient - The Craft CMS client. * @returns The API functions for cart-related actions. */ export declare const cart: (craftClient: Client) => { completeCart: (cartData: CompleteCartData) => Promise<any>; getCart: () => Promise<any>; loadCart: (cartData: LoadCartData) => Promise<any>; forgetCart: () => Promise<any>; updateCart: (cartData: UpdateCartData) => Promise<any>; };