import PaymentMethod from './PaymentMethod';
import { IParameter, IPaymentRequest, IRefundRequest, IRequest, ServiceParameter } from '../Models';
export default abstract class PayablePaymentMethod extends PaymentMethod {
    protected _requiredFields: Array<keyof IRequest>;
    pay(payload: IPaymentRequest, serviceParameters?: ServiceParameter | IParameter[]): import("..").Request<typeof import("../Models").TransactionResponse, import("..").TransactionData>;
    payRemainder(payload: IPaymentRequest, serviceParameters?: ServiceParameter | IParameter[]): import("..").Request<typeof import("../Models").TransactionResponse, import("..").TransactionData>;
    refund(payload: IRefundRequest, serviceParameters?: ServiceParameter | IParameter[]): import("..").Request<typeof import("../Models").TransactionResponse, import("..").TransactionData>;
    protected setPayPayload(payload: IRequest): void;
}
