text: # Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
  # This product includes software developed at Datadog (https://www.datadoghq.com/).
  # Copyright 2019-Present Datadog, Inc.
  
  
  from datadog_api_client.v1.model_utils import (
      ModelNormal,
      cached_property,
      datetime,
  )
  
  
  def lazy_import():
      from datadog_api_client.v1.model.usage_billable_summary_keys import UsageBillableSummaryKeys
  
      globals()["UsageBillableSummaryKeys"] = UsageBillableSummaryKeys
  
  
  class UsageBillableSummaryHour(ModelNormal):
      """NOTE: This class is auto generated by OpenAPI Generator.
      Ref: https://openapi-generator.tech
  
      Do not edit the class manually.
      """
  
      validations = {}
  
      @cached_property
      def openapi_types():
          lazy_import()
          return {
              "billing_plan": (str,),
              "end_date": (datetime,),
              "num_orgs": (int,),
              "org_name": (str,),
              "public_id": (str,),
              "ratio_in_month": (float,),
              "start_date": (datetime,),
              "usage": (UsageBillableSummaryKeys,),
          }
  
      attribute_map = {
          "billing_plan": "billing_plan",
          "end_date": "end_date",
          "num_orgs": "num_orgs",
          "org_name": "org_name",
          "public_id": "public_id",
          "ratio_in_month": "ratio_in_month",
          "start_date": "start_date",
          "usage": "usage",
      }
  
      read_only_vars = {}
  
      def __init__(self, *args, **kwargs):
          """UsageBillableSummaryHour - a model defined in OpenAPI
  
          Keyword Args:
              billing_plan (str): [optional] The billing plan.
              end_date (datetime): [optional] Shows the last date of usage.
              num_orgs (int): [optional] The number of organizations.
              org_name (str): [optional] The organization name.
              public_id (str): [optional] The organization public ID.
              ratio_in_month (float): [optional] Shows usage aggregation for a billing period.
              start_date (datetime): [optional] Shows the first date of usage.
              usage (UsageBillableSummaryKeys): [optional]
          """
          super().__init__(kwargs)
  
          self._check_pos_args(args)
  
      @classmethod
      def _from_openapi_data(cls, *args, **kwargs):
          """Helper creating a new instance from a response."""
  
          self = super(UsageBillableSummaryHour, cls)._from_openapi_data(kwargs)
  
          self._check_pos_args(args)
  
          return self
  