import { Counter, Histogram, MetricOptions, ObservableCounter, ObservableGauge, ObservableResult, ObservableUpDownCounter, UpDownCounter } from '@opentelemetry/api-metrics'; export declare type GenericMetric = Counter | UpDownCounter | Histogram | ObservableGauge | ObservableCounter | ObservableUpDownCounter; export declare enum MetricType { COUNTER = "Counter", UP_DOWN_COUNTER = "UpDownCounter", HISTOGRAM = "Histogram", OBSERVABLE_GAUGE = "ObservableGauge", OBSERVABLE_COUNTER = "ObservableCounter", OBSERVABLE_UP_DOWN_COUNTER = "ObservableUpDownCounter" } export declare const meterData: Map; export declare function getOrCreateHistogram(name: string, options: MetricOptions): Histogram; export declare function getOrCreateCounter(name: string, options: MetricOptions): Counter; export declare function getOrCreateUpDownCounter(name: string, options: MetricOptions): UpDownCounter; export declare function getOrCreateObservableGauge(name: string, options: MetricOptions, callback?: (observableResult: ObservableResult) => void): ObservableGauge; export declare function getOrCreateObservableCounter(name: string, options: MetricOptions, callback?: (observableResult: ObservableResult) => void): ObservableCounter; export declare function getOrCreateObservableUpDownCounter(name: string, options: MetricOptions, callback?: (observableResult: ObservableResult) => void): ObservableUpDownCounter;