/**
 * Cart feature barrel.
 *
 * W2-A exports: hook + merge hook + anon store + types.
 * W2-B exports: CartPage, cartDrawerStore.
 * W2-C exports: CartCheckout.
 */

export { useCart } from './useCart';
export type {
  UseCartReturn,
  UseCartOptions,
  CartItem,
  CartErrorCode,
  AnonAddOptions,
} from './useCart';

export { CartPage } from './CartPage';
export type { CartPageProps } from './CartPage';

export { useCartDrawerStore } from './cartDrawerStore';

export { useCartMerge } from './useCartMerge';
export type { MergeResult } from './useCartMerge';

export { CartCheckout } from './CartCheckout';
export type { CartCheckoutProps, SavedPaymentMethod } from './CartCheckout';

export {
  useAnonCart,
  bootstrapAnonCart,
  readLocalCart,
  writeLocalCart,
  clearLocalCart,
  LS_KEY,
} from './anonCartStore';
export type { AnonCartItem, AnonCartPayload, AnonCartState } from './anonCartStore';
