"""Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT."""

from __future__ import annotations
import dataclasses
from dataclasses_json import Undefined, dataclass_json
from orb import utils
from typing import Optional


@dataclass_json(undefined=Undefined.EXCLUDE)

@dataclasses.dataclass
class PriceGroup:
    grouping_key: str = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('grouping_key') }})
    r"""Grouping key to break down a single price's costs"""
    grouping_value: Optional[str] = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('grouping_value') }})
    secondary_grouping_key: Optional[str] = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('secondary_grouping_key') }})
    r"""If the price is a matrix price, this is the second dimension key"""
    secondary_grouping_value: Optional[str] = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('secondary_grouping_value') }})
    total: str = dataclasses.field(metadata={'dataclasses_json': { 'letter_case': utils.get_field_name('total') }})
    r"""Total costs for this group for the timeframe. Note that this does not account for any minimums or discounts."""
    

