///
import { MobileMoneyCheckoutOptions, CheckoutResult, PaymentProvider, RefundOptions, RefundResult, CreditCardCheckoutOptions, RedirectCheckoutOptions, HandleWebhookOptions, MobileMoneyPayoutOptions, PayoutResult } from "../payment-provider.interface";
import EventEmitter2 from "eventemitter2";
import { PaymentFailedEvent, PaymentInitiatedEvent, PaymentSuccessfulEvent } from "../payment-events";
declare class StripePaymentProvider implements PaymentProvider {
private config;
private eventEmitter?;
private stripe;
private webhookSecret?;
constructor(config: StripePaymentProviderConfig);
init(): Promise;
useEventEmitter(eventEmitter: EventEmitter2): void;
checkoutMobileMoney(options: MobileMoneyCheckoutOptions): Promise;
checkoutCreditCard(options: CreditCardCheckoutOptions): Promise;
checkoutRedirect(options: RedirectCheckoutOptions): Promise;
refund(options: RefundOptions): Promise;
payoutMobileMoney(options: MobileMoneyPayoutOptions): Promise;
handleWebhook(rawBody: Buffer | string, options: HandleWebhookOptions): Promise;
}
type StripePaymentProviderConfig = {
privateKey: string;
webhookUrl?: string;
webhookSecret?: string;
};
export default StripePaymentProvider;
//# sourceMappingURL=stripe.d.ts.map