import type { Counter, Histogram, MetricOptions, ObservableGauge, UpDownCounter } from '@opentelemetry/api';
export type Category = 'replication' | 'sync' | 'mutation' | 'server';
type Options = MetricOptions & {
    description: string;
};
type OptionsWithUnit = MetricOptions & {
    description: string;
    unit: string;
};
export declare function getOrCreateUpDownCounter(category: Category, name: string, description: string): UpDownCounter;
export declare function getOrCreateUpDownCounter(category: Category, name: string, opts: Options): UpDownCounter;
export declare function getOrCreateHistogram(category: Category, name: string, description: string): Histogram;
export declare function getOrCreateHistogram(category: Category, name: string, options: OptionsWithUnit): Histogram;
export declare function getOrCreateCounter(category: Category, name: string, description: string): Counter;
export declare function getOrCreateCounter(category: Category, name: string, opts: Options): Counter;
export declare function getOrCreateGauge(category: Category, name: string, description: string): ObservableGauge;
export declare function getOrCreateGauge(category: Category, name: string, opts: Options): ObservableGauge;
export {};
//# sourceMappingURL=metrics.d.ts.map