commerce-kit
Version:
76 lines (73 loc) • 2.25 kB
TypeScript
import { S as StripeProviderConfig, k as ProductBrowseParams, l as ProductBrowseResult, m as ProductGetParams, P as Product, a as CartAddParams, C as Cart, f as CartUpdateParams, e as CartRemoveParams, b as CartClearParams, c as CartGetParams } from './provider-CeP9uHnB.js';
/**
* Stripe Commerce client - zero-config constructor
* Reads configuration from environment variables by default
*
* @example
* ```typescript
* import { Commerce } from "commerce-kit/stripe";
*
* // Zero config - uses STRIPE_SECRET_KEY from environment
* const commerce = new Commerce();
*
* const products = await commerce.product.browse({ first: 10 });
* const result = await commerce.cart.add({ variantId: "price_123", quantity: 1 });
* ```
*/
declare class Commerce {
private config;
private provider?;
private providerPromise?;
constructor(config?: StripeProviderConfig);
/**
* Detect Stripe configuration from environment variables
*/
private detectFromEnv;
/**
* Lazy-load and cache provider instance
*/
private getProvider;
/**
* Load Stripe provider
*/
private loadProvider;
/**
* Product operations - Stripe specific
*/
get product(): {
/**
* Browse/list products with Stripe-specific parameters
*/
browse: (params?: ProductBrowseParams) => Promise<ProductBrowseResult>;
/**
* Get single product by ID or slug
*/
get: (params: ProductGetParams) => Promise<Product | null>;
};
/**
* Cart operations - Stripe specific
*/
get cart(): {
/**
* Add item to cart (additive behavior)
*/
add: (params: CartAddParams) => Promise<Cart>;
/**
* Update item in cart (absolute behavior)
*/
update: (params: CartUpdateParams) => Promise<Cart>;
/**
* Remove item from cart
*/
remove: (params: CartRemoveParams) => Promise<Cart>;
/**
* Clear entire cart
*/
clear: (params: CartClearParams) => Promise<Cart>;
/**
* Get cart details
*/
get: (params: CartGetParams) => Promise<Cart | null>;
};
}
export { Commerce };