import { Transaction } from "./payments/transaction";
import { Payment } from "./payments/payment";
import { PesepayResponse } from './response';
export declare class Pesepay {
    private readonly integrationKey;
    private readonly encryptionKey;
    private readonly headers;
    resultUrl?: string;
    returnUrl?: string;
    constructor(integrationKey: string, encryptionKey: string);
    initiateTransaction: (transaction: Transaction) => Promise<PesepayResponse>;
    checkPayment: (referenceNumber: string) => Promise<PesepayResponse>;
    pollTransaction: (pollUrl: string) => Promise<PesepayResponse>;
    makeSeamlessPayment: (payment: Payment, reasonForPayment: string, amount: number, requiredFields?: {}) => Promise<PesepayResponse>;
    createPayment: (currencyCode: string, paymentMethodCode: string, email?: string, phone?: string, name?: string) => Payment;
    createTransaction: (amount: number, currencyCode: string, paymentReason: string, merchantReference?: string) => Transaction;
    private payloadEncrypt;
    private payloadDecrypt;
    private buildCipher;
}
//# sourceMappingURL=pesepay.d.ts.map