Rocky_Mountain_Vending/.pnpm-store/v10/files/ca/926861a2c9108ddc96de5897d4ff95b0949587272b72a558b18496504677d128976f9b9f911830796d0742d15700f1824aa527b280e9b97d911f2f899c6b4f
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

67 lines
2.4 KiB
Text

export type StripeEmbeddedCheckoutAddress = {
country: string;
line1?: string | null;
line2?: string | null;
city?: string | null;
postal_code?: string | null;
state?: string | null;
};
export type StripeEmbeddedCheckoutShippingDetails = {
name: string;
address: StripeEmbeddedCheckoutAddress;
};
export type StripeEmbeddedCheckoutShippingDetailsChangeEvent = {
checkoutSessionId: string;
shippingDetails: StripeEmbeddedCheckoutShippingDetails;
};
export type ResultAction =
| {type: 'accept'}
| {type: 'reject'; errorMessage?: string};
export interface StripeEmbeddedCheckoutOptions {
/**
* The client secret of the [Checkout Session](https://stripe.com/docs/api/checkout/sessions).
*/
clientSecret?: string;
/**
* A function that returns a Promise which resolves with the client secret of
* the [Checkout Session](https://stripe.com/docs/api/checkout/sessions).
*/
fetchClientSecret?: () => Promise<string>;
/**
* onComplete is called when the Checkout Session completes successfully.
* You can use it to unmount Embedded Checkout and render a custom success UI.
*/
onComplete?: () => void;
/**
* onShippingDetailsChange is called when the customer completes the shipping details form.
*
* The callback is required when [permissions.update.shipping_details](https://docs.stripe.com/api/checkout/sessions/create#create_checkout_session-permissions-update-shipping_details) is set to `server_only`.
* For a step-by-step guide on using this callback to customize shipping options during checkout, see [Customize Shipping Options](https://docs.stripe.com/payments/checkout/custom-shipping-options).
*/
onShippingDetailsChange?: (
event: StripeEmbeddedCheckoutShippingDetailsChangeEvent
) => Promise<ResultAction>;
}
export interface StripeEmbeddedCheckout {
/**
* The `embeddedCheckout.mount` method attaches your Embedded Checkout to the DOM.
* `mount` accepts either a CSS Selector (e.g., `'#checkout'`) or a DOM element.
*/
mount(location: string | HTMLElement): void;
/**
* Unmounts Embedded Checkout from the DOM.
* Call `embeddedCheckout.mount` to re-attach it to the DOM.
*/
unmount(): void;
/**
* Removes Embedded Checkout from the DOM and destroys it.
* Once destroyed it not be re-mounted to the DOM.
* Use this if you want to create a new Embedded Checkout instance.
*/
destroy(): void;
}