import type { Instrumentation } from "@opentelemetry/instrumentation";
import type { BatchLogRecordProcessor } from "@opentelemetry/sdk-logs";
import type { InternalConfig } from "../shared/config.js";
import type { MetricHandler } from "../metrics/handler.js";
import { AzureLogRecordProcessor } from "./logRecordProcessor.js";
/**
 * Azure Monitor OpenTelemetry Log Handler
 */
export declare class LogHandler {
    private _azureExporter;
    private _azureLogRecordProcessor;
    private _azureBatchLogRecordProcessor;
    private _metricHandler;
    private _config;
    private _instrumentations;
    /**
     * Initializes a new instance of the TraceHandler class.
     * @param _config - Distro configuration.
     * @param _metricHandler - MetricHandler.
     */
    constructor(config: InternalConfig, metricHandler: MetricHandler);
    getAzureLogRecordProcessor(): AzureLogRecordProcessor;
    getBatchLogRecordProcessor(): BatchLogRecordProcessor;
    getInstrumentations(): Instrumentation[];
    /**
     * Start auto collection of telemetry
     */
    private _initializeInstrumentations;
}
//# sourceMappingURL=handler.d.ts.map