-- | 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
  }