-- | Internal data structures to the metrics effect
module Calamity.Metrics.Internal (
  Counter (..),
  Gauge (..),
  Histogram (..),
) where

-- | A handle to a counter
newtype Counter = Counter
  { Counter -> Int
unCounter :: Int
  }

-- | A handle to a gauge
newtype Gauge = Gauge
  { Gauge -> Int
unGauge :: Int
  }

-- | A handle to a histogram
newtype Histogram = Histogram
  { Histogram -> Int
unHistogram :: Int
  }