import * as types from './types';
declare class MaxiPagoSDK {
    private readonly auth;
    private readonly env;
    constructor(auth: types.MaxiPagoAuth, env: string);
    private readonly POST_API;
    private readonly POST_XML;
    private readonly REPORTS_API;
    private readonly XML_OPTIONS;
    private readonly XML_CONVERT_OPTIONS;
    /**
     * This method save a new customer on MaxiPago to use in others operations.
     * @param customer object to create a new customer on MaxiPago.
     */
    createCustomer(customer: Omit<types.Customer, 'customerId'>): Promise<any>;
    /**
     * This method update a customer on MaxiPago.
     * @param customer object to update a customer on MaxiPago.
     */
    updateCustomer(customer: types.Customer): Promise<any>;
    /**
     * This method delete a customer on MaxiPago.
     * @param customer object with customer id to delete on MaxiPago
     */
    deleteCustomer(customer: types.Customer): Promise<any>;
    addCard(card: types.CreateCard): Promise<any>;
    deleteCard(card: types.DeleteCard): Promise<any>;
    createAuthorization(order: types.Order): Promise<any>;
    capture(capture: types.OrderCapture): Promise<any>;
    sale(sale: types.Order): Promise<any>;
    void(_void: types.Void): Promise<any>;
    chargeBack(chargeback: types.ChargebackModel): Promise<any>;
    createRecurrence(recurrence: types.Order): Promise<any>;
    updateRecurrence(recurrence: types.Recurrence): Promise<any>;
    deleteRecurrence(recurrence: types.DeleteRecurrence): Promise<any>;
    findTransaction(transaction: types.TransactionQuery): Promise<any>;
    zeroDollar(zeroDollar: types.ZeroDollar): Promise<any>;
    zeroDollarWithTokenCard(zeroDollar: types.ZeroDollarToken): Promise<any>;
    saleWithToken(sale: types.SaleWithToken): Promise<any>;
}
export declare const buildSDK: (auth: types.MaxiPagoAuth, env: string) => MaxiPagoSDK;
export {};
