import Stripe from "stripe"; import { AbstractPaymentProcessor, PaymentProcessorContext, PaymentProcessorError, PaymentProcessorSessionResponse, PaymentSessionStatus } from "@medusajs/medusa"; import { PaymentIntentOptions, StripeOptions } from "../types"; declare abstract class StripeBase extends AbstractPaymentProcessor { static identifier: string; protected readonly options_: StripeOptions; protected stripe_: Stripe; protected constructor(_: any, options: any); protected init(): void; abstract get paymentIntentOptions(): PaymentIntentOptions; getPaymentIntentOptions(): PaymentIntentOptions; getPaymentStatus(paymentSessionData: Record): Promise; initiatePayment(context: PaymentProcessorContext): Promise; authorizePayment(paymentSessionData: Record, context: Record): Promise; cancelPayment(paymentSessionData: Record): Promise; capturePayment(paymentSessionData: Record): Promise; deletePayment(paymentSessionData: Record): Promise; refundPayment(paymentSessionData: Record, refundAmount: number): Promise; retrievePayment(paymentSessionData: Record): Promise; updatePayment(context: PaymentProcessorContext): Promise; /** * Constructs Stripe Webhook event * @param {object} data - the data of the webhook request: req.body * @param {object} signature - the Stripe signature on the event, that * ensures integrity of the webhook event * @return {object} Stripe Webhook event */ constructWebhookEvent(data: any, signature: any): Stripe.Event; protected buildError(message: string, e: Stripe.StripeRawError | PaymentProcessorError | Error): PaymentProcessorError; } export default StripeBase;