MetricData:
    | { gauge: Gauge }
    | { sum: Sum }
    | { histogram: Histogram }
    | { exponentialHistogram: ExponentialHistogram }
    | { summary: Summary }

🎯 Union type for different metric data types.

This discriminated union allows a metric to contain exactly one type of data: gauge, sum (counter), histogram, exponential histogram, or summary.