type TagType = number | string | boolean | null | undefined; export interface MetricData { unit?: string; tags?: Record; timestamp?: number; } interface MetricsMethods { /** * Adds a value to a counter metric */ increment(name: string, value?: number, data?: MetricData): void; /** * Adds a value to a distribution metric */ distribution(name: string, value: number, data?: MetricData): void; /** * Adds a value to a set metric. Value must be a string or integer. */ set(name: string, value: number | string, data?: MetricData): void; /** * Adds a value to a gauge metric */ gauge(name: string, value: number, data?: MetricData): void; } /** * Allows metrics to be recorded within SDK code without requiring specific consumers. */ export declare class RemoteMetrics implements MetricsMethods { private _metrics; registerProcessor(processor: MetricsMethods): void; increment(name: string, value?: number, data?: MetricData): void[]; distribution(name: string, value: number, data?: MetricData): void[]; set(name: string, value: number | string, data?: MetricData): void[]; gauge(name: string, value: number, data?: MetricData): void[]; } export {}; //# sourceMappingURL=metrics.d.ts.map