UNPKG

@paykit-sdk/stripe

Version:

Stripe provider for PayKit

40 lines (36 loc) 1.67 kB
import { PayKitProvider } from '@paykit-sdk/core/src/paykit-provider'; import { CreateCheckoutParams, Checkout, CreateCustomerParams, Customer, UpdateCustomerParams, Subscription, UpdateSubscriptionParams, WebhookEventPayload } from '@paykit-sdk/core/src/resources'; import { WithPaymentProviderConfig } from '@paykit-sdk/core/src/types'; import Stripe from 'stripe'; interface StripeConfig extends WithPaymentProviderConfig<Stripe.StripeConfig> { apiVersion?: Stripe.LatestApiVersion; } declare class StripeProvider implements PayKitProvider { private stripe; constructor(config: StripeConfig); /** * Checkout management */ createCheckout: (params: CreateCheckoutParams) => Promise<Checkout>; retrieveCheckout: (id: string) => Promise<Checkout>; /** * Customer management */ createCustomer: (params: CreateCustomerParams) => Promise<Customer>; updateCustomer: (id: string, params: UpdateCustomerParams) => Promise<Customer>; deleteCustomer: (id: string) => Promise<void>; retrieveCustomer: (id: string) => Promise<Customer | null>; /** * Subscription management */ cancelSubscription: (id: string) => Promise<Subscription>; updateSubscription: (id: string, params: UpdateSubscriptionParams) => Promise<Subscription>; retrieveSubscription: (id: string) => Promise<Subscription>; /** * Webhook management */ handleWebhook: (payload: string, signature: string, secret: string) => Promise<WebhookEventPayload>; } declare const createStripe: (config: StripeConfig) => StripeProvider; declare const stripe: () => StripeProvider; export { createStripe, stripe };