/**
 * @author Jackiê Macklein
 * @company Onside tecnologia/Nettz
 * @copyright Todos direitos reservados.
 * @description Cliente HTTP para API do Asaas (clientes, cobranças e webhooks).
 */
import { AsaasChargeInput, AsaasChargeNormalized, AsaasClientConfig, AsaasCustomerInput, AsaasCustomerNormalized, AsaasGetChargeOptions, AsaasListChargesParams, AsaasListChargesResult, AsaasWebhookInput } from "./types";
export interface AsaasClient {
    readonly baseUrl: string;
    readonly debug: boolean;
    createCustomer(data: AsaasCustomerInput): Promise<AsaasCustomerNormalized>;
    editCustomer(customerId: string, data: AsaasCustomerInput): Promise<AsaasCustomerNormalized>;
    deleteCustomer(customerId: string): Promise<unknown>;
    createCharge(data: AsaasChargeInput): Promise<AsaasChargeNormalized>;
    getCharge(paymentId: string, options?: AsaasGetChargeOptions): Promise<AsaasChargeNormalized>;
    listCharges(params?: AsaasListChargesParams): Promise<AsaasListChargesResult>;
    editCharge(paymentId: string, data: AsaasChargeInput): Promise<AsaasChargeNormalized>;
    deleteCharge(paymentId: string): Promise<unknown>;
    webhook: {
        save(data: AsaasWebhookInput): Promise<unknown>;
        get(): Promise<unknown>;
    };
}
export declare function createAsaasClient(config: AsaasClientConfig): AsaasClient;
