/**
 * Custom APM Client for Edge Runtime
 * @description This client uses the fetch API to send APM data directly to the Elastic APM server.
 */
export class ElasticApmClient {
    constructor({ serviceName, serverUrl, secretToken, environment, logLevel }: {
        serviceName: any;
        serverUrl: any;
        secretToken: any;
        environment?: string | undefined;
        logLevel?: string | undefined;
    });
    serviceName: any;
    serverUrl: any;
    secretToken: any;
    environment: string;
    logLevel: string;
    apiEndpoint: string;
    /**
     * Send a payload to the Elastic APM server with retries
     * @param {Object} payload - The payload to send.
     * @param {number} retries - Number of retries in case of failure.
     */
    sendPayload(payload: Object, retries?: number): any;
    /**
     * Report a transaction to Elastic APM
     * @param {Object} transaction - The transaction object to report.
     */
    reportTransaction(transaction: Object): Promise<void>;
    /**
     * Report an error to Elastic APM
     * @param {Object} error - The error object to report.
     */
    reportError(error: Object): Promise<void>;
    /**
     * Report a span to Elastic APM
     * @param {Object} span - The span object to report.
     */
    reportSpan(span: Object): Promise<void>;
}
