UNPKG

@liberquack/utils

Version:
43 lines (42 loc) 1.64 kB
import type StripeServer from "stripe"; import type { NarrowCalculatedCheckout, NarrowCompletedCheckout } from "./types.js"; import type { Token } from "@stripe/stripe-js/types/api/tokens.js"; import type { StripeCardElement, StripeCardNumberElement } from "@stripe/stripe-js"; export declare type PaymentStripeProviderData = { /** * SetupIntent generated on server */ clientSecret?: StripeServer.SetupIntent["client_secret"]; /** * Payment method token generated from stripe client */ paymentMethodToken?: Token; /** * This field holds holdercard's name and address */ billingData?: StripeServer.PaymentMethodCreateParams.BillingDetails; /** * Provide the status of the payment intent to your client, * so based on that, if it's require_action, we can trigger 3DS verification * before charging the user * * Otherwise even failed 3ds attempts, will be charged, and they may * cause future payments to be blocked */ intentStatus?: StripeServer.SetupIntent["status"] | StripeServer.PaymentIntent["status"]; subscription?: StripeServer.Subscription; }; export declare type NarrowedStripeCalculatedCheckout = NarrowCalculatedCheckout<{ provider: "stripe"; externalData: PaymentStripeProviderData; clientData: { cardElement?: StripeCardElement | StripeCardNumberElement; }; }>; export declare type NarrowedStripeCompletedCheckout = NarrowCompletedCheckout<{ provider: "stripe"; externalData: PaymentStripeProviderData; clientData: { cardElement?: StripeCardElement | StripeCardNumberElement; }; }>;