import { TracerBrowserConfig } from '../types';
import { type Span } from '@opentelemetry/api';
export interface HttpPayloadData {
    requestBody?: any;
    responseBody?: any;
    requestHeaders?: Record<string, string>;
    responseHeaders?: Record<string, string>;
}
export interface ProcessedHttpPayload {
    requestBody?: string;
    responseBody?: string;
    requestHeaders?: string;
    responseHeaders?: string;
}
/**
 * Checks if the trace should be processed based on trace ID prefixes
 */
export declare function shouldProcessTrace(traceId: string): boolean;
/**
 * Processes request and response body based on trace type and configuration
 */
export declare function processBody(payload: HttpPayloadData, config: TracerBrowserConfig, span: Span): {
    requestBody?: string;
    responseBody?: string;
};
/**
 * Processes request and response headers based on configuration
 */
export declare function processHeaders(payload: HttpPayloadData, config: TracerBrowserConfig, span: Span): {
    requestHeaders?: string;
    responseHeaders?: string;
};
/**
 * Processes HTTP payload (body and headers) and sets span attributes
 */
export declare function processHttpPayload(payload: HttpPayloadData, config: TracerBrowserConfig, span: Span): void;
/**
 * Converts Headers object to plain object
 */
export declare function headersToObject(headers: Headers | Record<string, string> | HeadersInit | undefined): Record<string, string>;
/**
 * Extracts response body as string from Response object
 */
export declare function extractResponseBody(response: Response): Promise<string | null>;
export declare const getExporterEndpoint: (exporterEndpoint: string) => string;
export declare const getElementTextContent: (element: HTMLElement) => string;
//# sourceMappingURL=helpers.d.ts.map