import { InjectionToken } from "@nestjs/common/interfaces"; import { OptionalFactoryDependency } from "@nestjs/common/interfaces/modules/optional-factory-dependency.interface"; import * as client from "prom-client"; import { PrometheusContentType, RegistryContentType } from "prom-client"; import { PrometheusOptions } from "../interfaces"; /** * @internal */ export type Metrics = "Gauge" | "Summary" | "Histogram" | "Counter"; /** * @internal */ export type Options = client.GaugeConfiguration | client.SummaryConfiguration | client.CounterConfiguration | client.HistogramConfiguration; /** * @internal */ export declare function getOrCreateMetric(type: Metrics, options: Options, prometheusOptions?: PrometheusOptions): client.Metric; /** * @public */ export type MetricProviderInject = Array; /** * Additional options for metric providers that support dependency injection * into the `collect` function. * * @public */ export interface MetricProviderInjectable { inject?: MetricProviderInject; collect?: (this: T, ...args: any[]) => void | Promise; } /** * @public */ export declare function getToken(name: string): string; //# sourceMappingURL=utils.d.ts.map