UNPKG

@techsio/storefront-data

Version:

Medusa-first storefront data layer built on TanStack Query.

42 lines • 1.66 kB
import type Medusa from "@medusajs/js-sdk"; import type { HttpTypes } from "@medusajs/types"; import type { CartService } from "./types"; export type MedusaCartServiceConfig = { cartFields?: string; isNotFoundError?: (error: unknown) => boolean; }; export type MedusaCartCreateParams = HttpTypes.StoreCreateCart; export type MedusaCartUpdateParams = HttpTypes.StoreUpdateCart; export type MedusaCartAddItemParams = HttpTypes.StoreAddCartLineItem; export type MedusaCartUpdateItemParams = HttpTypes.StoreUpdateCartLineItem; export type MedusaCompleteCartResult = { type: "order"; order: HttpTypes.StoreOrder; } | { type: "cart"; cart: HttpTypes.StoreCart; error: { message: string; name: string; type: string; }; }; /** * Creates a CartService for Medusa SDK * * @example * ```typescript * import { createCartHooks } from "@techsio/storefront-data/cart/hooks" * import { createMedusaCartService } from "@techsio/storefront-data/cart/medusa-service" * import { createLocalStorageValueStore } from "@techsio/storefront-data/shared/storage-value-store" * import { sdk } from "@/lib/medusa-client" * * const cartHooks = createCartHooks({ * service: createMedusaCartService(sdk), * queryKeys: cartQueryKeys, * cartStorage: createLocalStorageValueStore({ key: "cart_id" }), * }) * ``` */ export declare function createMedusaCartService(sdk: Medusa, config?: MedusaCartServiceConfig): CartService<HttpTypes.StoreCart, MedusaCartCreateParams, MedusaCartUpdateParams, MedusaCartAddItemParams, MedusaCartUpdateItemParams, MedusaCompleteCartResult>; //# sourceMappingURL=medusa-service.d.ts.map