-from numbers import Number
-from typing import Generic, Iterable, List, Optional, Tuple, TypeVar
+from dataclasses import dataclass
+from typing import Dict, Generic, Iterable, List, Optional, Tuple, TypeVar
+
+T = TypeVar("T", int, float)
+Bound = int
+Count = int
+
+
+@dataclass
+class BucketDetails:
+ """A collection of details about the internal histogram buckets."""
+
+ num_populated_buckets: int = 0
+ """Count of populated buckets"""
+
+ max_population: Optional[int] = None
+ """The max population in a bucket currently"""
+
+ last_bucket_start: Optional[int] = None
+ """The last bucket starting point"""
+
+ lowest_start: Optional[int] = None
+ """The lowest populated bucket's starting point"""
+
+ highest_end: Optional[int] = None
+ """The highest populated bucket's ending point"""