import { PaymentInitData, PaymentInitResponse, PaymentValidationResponse, PaymentRefundInitiateResponse, PaymentRefundQueryResponse, TransactionQuerySessionIdResponse, TransactionQueryTransIdResponse } from "./types";
interface ValidatePayload {
    val_id: string;
}
interface RefundPayload {
    refund_amount: number | string;
    refund_remarks: string;
    bank_tran_id: string;
    refe_id: string;
}
interface RefundQueryPayload {
    refund_ref_id: string;
}
interface TransactionQueryBySessionPayload {
    sessionkey: string;
}
interface TransactionQueryByTranIdPayload {
    tran_id: string;
}
export declare class SslCommerz {
    private store_id;
    private store_passwd;
    private baseURL;
    private initURL;
    private validationURL;
    private refundURL;
    private refundQueryURL;
    private transactionQueryBySessionIdURL;
    private transactionQueryByTransactionIdURL;
    constructor(store_id: string, store_passwd: string, live?: boolean);
    init(data: PaymentInitData): Promise<PaymentInitResponse>;
    validate(data: ValidatePayload): Promise<PaymentValidationResponse>;
    initiateRefund(data: RefundPayload): Promise<PaymentRefundInitiateResponse>;
    refundQuery(data: RefundQueryPayload): Promise<PaymentRefundQueryResponse>;
    transactionQueryBySessionId(data: TransactionQueryBySessionPayload): Promise<TransactionQuerySessionIdResponse>;
    transactionQueryByTransactionId(data: TransactionQueryByTranIdPayload): Promise<TransactionQueryTransIdResponse>;
}
export {};
