import { AzureMonitorOpenTelemetryOptions } from "../types";
/**
 * Provides isolated OpenTelemetry providers for a TelemetryClient instance.
 */
export declare class TelemetryClientProvider {
    private _options;
    private _tracerProvider;
    private _meterProvider;
    private _loggerProvider;
    private _metricReaders;
    private _spanProcessors;
    private _logProcessors;
    constructor(_options: AzureMonitorOpenTelemetryOptions);
    getTracer(name: string): import("@opentelemetry/api").Tracer;
    getMeter(name: string): import("@opentelemetry/api").Meter;
    getLogger(name: string): import("@opentelemetry/api-logs").Logger;
    flush(): Promise<void>;
    shutdown(): Promise<void>;
    private _createSampler;
    private _setupTracing;
    private _setupLogging;
    private _setupMetrics;
    private _runWithErrorHandling;
}
