import type { PushMetricExporter, ResourceMetrics } from '@opentelemetry/sdk-metrics';
export interface MonitorJsonMetricExporterOptions {
    runId: string;
    monitorPath: string;
}
export declare class MonitorJsonMetricExporter implements PushMetricExporter {
    private readonly registrations;
    private shutdownRequested;
    private overflowWarned;
    constructor(options?: MonitorJsonMetricExporterOptions);
    register(options: MonitorJsonMetricExporterOptions): () => void;
    export(metrics: ResourceMetrics, resultCallback: Parameters<PushMetricExporter['export']>[1]): void;
    forceFlush(): Promise<void>;
    shutdown(): Promise<void>;
}
export declare function hasCardinalityOverflow(metrics: ResourceMetrics): boolean;
//# sourceMappingURL=monitorJsonMetricExporter.d.ts.map