import { MetricData, MetricOptions } from "./metric-types"; /** * @classdesc DurationMetricRecorder class provides APIs to emit duration metrics based on users' need */ export declare class DurationMetricRecorder { private readonly sendMetric; private readonly startTime; private readonly metricName; private readonly unit; private readonly dimensions; private readonly optionalDimensions; /** * Constructor for DurationMetricRecorder * @param {(metric: MetricData) => void} sendMetric- The method that sends metric * @param {string} metricName - The name of the duration metric * @param {Record} dimensions - The dimensions of the duration metric with keys and values (optional) * @param {Record} optionalDimensions - The optional dimensions of the duration metric with keys and values (optional) */ constructor({ sendMetric, metricName, metricOptions, }: { sendMetric: (metric: MetricData) => void; metricName: string; metricOptions?: MetricOptions; }); /** * Stop recording of the duration metric and emit it * @returns {durationCount: number} - The duration being recorded */ stopDurationCounter(): { duration: number; }; } //# sourceMappingURL=duration-metric-recorder.d.ts.map