@tecafrik/africa-payment-sdk
Version:
A single SDK to integrate all african payment providers seamlessly
21 lines • 1.95 kB
TypeScript
/// <reference types="node" />
import { PaymentCancelledEvent, PaymentEventType, PaymentFailedEvent, PaymentInitiatedEvent, PaymentSuccessfulEvent } from "./payment-events";
import { CreditCardCheckoutOptions, HandleWebhookOptions, MobileMoneyCheckoutOptions, MobileMoneyPayoutOptions, PaymentProvider, RedirectCheckoutOptions, RefundOptions } from "./payment-provider.interface";
import { EventEmitter2 } from "eventemitter2";
declare class AfricaPaymentsProvider extends EventEmitter2 {
private providers;
constructor(providers: PaymentProvider | [PaymentProvider, ...PaymentProvider[]]);
checkoutMobileMoney(options: MobileMoneyCheckoutOptions): Promise<import("./payment-provider.interface").CheckoutResult>;
checkoutCreditCard(options: CreditCardCheckoutOptions): Promise<import("./payment-provider.interface").CheckoutResult>;
checkoutRedirect(options: RedirectCheckoutOptions): Promise<import("./payment-provider.interface").CheckoutResult>;
payoutMobileMoney(options: MobileMoneyPayoutOptions): Promise<import("./payment-provider.interface").PayoutResult>;
tryEachProvider<T>(callback: (provider: PaymentProvider) => T | Promise<T>): Promise<T>;
refund(options: RefundOptions): Promise<import("./payment-provider.interface").RefundResult>;
handleWebhook(requestBody: Buffer | string | Record<string, unknown>, options?: HandleWebhookOptions): Promise<import("./payment-events").PaymentEvent | null>;
on(event: PaymentEventType.PAYMENT_INITIATED, listener: (event: PaymentInitiatedEvent) => void): this;
on(event: PaymentEventType.PAYMENT_SUCCESSFUL, listener: (event: PaymentSuccessfulEvent) => void): this;
on(event: PaymentEventType.PAYMENT_FAILED, listener: (event: PaymentFailedEvent) => void): this;
on(event: PaymentEventType.PAYMENT_CANCELLED, listener: (event: PaymentCancelledEvent) => void): this;
}
export default AfricaPaymentsProvider;
//# sourceMappingURL=africa-payments.d.ts.map