import type { BrowserSdkLoaderOptions, AzureMonitorOpenTelemetryOptions, InstrumentationOptions } from "../types.js";
import type { AzureMonitorExporterOptions } from "@azure/monitor-opentelemetry-exporter";
/**
 * Azure Monitor OpenTelemetry Client Configuration through JSON File
 * @internal
 */
export declare class JsonConfig implements AzureMonitorOpenTelemetryOptions {
    /** The rate of telemetry items tracked that should be transmitted (Default 1.0) */
    samplingRatio?: number;
    /** The maximum number of spans to sample per second. */
    tracesPerSecond?: number;
    /** Azure Monitor Exporter Configuration */
    azureMonitorExporterOptions?: AzureMonitorExporterOptions;
    /**
     * OpenTelemetry Instrumentations configuration included as part of Azure Monitor (azureSdk, http, mongoDb, mySql, postgreSql, redis, redis4)
     */
    instrumentationOptions?: InstrumentationOptions;
    /** Enable Live Metrics feature */
    enableLiveMetrics?: boolean;
    /** Enable Standard Metrics feature */
    enableStandardMetrics?: boolean;
    /** Enable log sampling based on trace (Default true) */
    enableTraceBasedSamplingForLogs?: boolean;
    /** Enable Performance Counter feature */
    enablePerformanceCounters?: boolean;
    browserSdkLoaderOptions?: BrowserSdkLoaderOptions;
    private static _instance;
    private _tempDir;
    /** Get Singleton instance */
    static getInstance(): JsonConfig;
    /**
     * Initializes a new instance of the JsonConfig class.
     */
    constructor();
}
//# sourceMappingURL=jsonConfig.d.ts.map