/** * Helper classes and utilities for Skillsmith Metrics * @module @skillsmith/core/telemetry/metric-helpers */ import type { Counter, Gauge, Histogram, MetricLabels } from './metric-types.js'; /** * Dynamic import helper that bypasses TypeScript type checking (SMI-755) */ export declare function dynamicImport(moduleName: string): Promise; /** * Check if OpenTelemetry is available (SMI-755) */ export declare function checkOTelAvailability(): Promise; /** * No-op gauge implementation (used for gauges that track values locally) */ export declare class NoOpGauge implements Gauge { private values; set(value: number, labels?: MetricLabels): void; getValue(labels?: MetricLabels): number; } /** * In-memory counter for when OTEL is not available */ export declare class InMemoryCounter implements Counter { private values; add(value: number, labels?: MetricLabels): void; increment(labels?: MetricLabels): void; getValues(): Map; } /** * In-memory histogram for when OTEL is not available */ export declare class InMemoryHistogram implements Histogram { private values; private labeledValues; record(value: number, labels?: MetricLabels): void; getStats(): { count: number; sum: number; mean: number; p50: number; p95: number; p99: number; }; } //# sourceMappingURL=metric-helpers.d.ts.map