packages feed

gogol-billing-1.0.0: gen/Gogol/Billing/Internal/Sum.hs

{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE ImportQualifiedPost #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
{-# OPTIONS_GHC -fno-warn-name-shadowing #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

-- |
-- Module      : Gogol.Billing.Internal.Sum
-- Copyright   : (c) 2015-2025 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+gogol@gmail.com>
--               Toni Cebrián <toni@tonicebrian.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
module Gogol.Billing.Internal.Sum
  ( -- * Xgafv
    Xgafv
      ( Xgafv_1,
        Xgafv_2,
        ..
      ),

    -- * AggregationInfo_AggregationInterval
    AggregationInfo_AggregationInterval
      ( AggregationInfo_AggregationInterval_AGGREGATIONINTERVALUNSPECIFIED,
        AggregationInfo_AggregationInterval_Daily,
        AggregationInfo_AggregationInterval_Monthly,
        ..
      ),

    -- * AggregationInfo_AggregationLevel
    AggregationInfo_AggregationLevel
      ( AggregationInfo_AggregationLevel_AGGREGATIONLEVELUNSPECIFIED,
        AggregationInfo_AggregationLevel_Account,
        AggregationInfo_AggregationLevel_Project,
        ..
      ),

    -- * AuditLogConfig_LogType
    AuditLogConfig_LogType
      ( AuditLogConfig_LogType_LOGTYPEUNSPECIFIED,
        AuditLogConfig_LogType_ADMINREAD,
        AuditLogConfig_LogType_DATAWRITE,
        AuditLogConfig_LogType_DATAREAD,
        ..
      ),

    -- * GeoTaxonomy_Type
    GeoTaxonomy_Type
      ( GeoTaxonomy_Type_TYPEUNSPECIFIED,
        GeoTaxonomy_Type_Global,
        GeoTaxonomy_Type_Regional,
        GeoTaxonomy_Type_MULTIREGIONAL,
        ..
      ),
  )
where

import Gogol.Prelude qualified as Core

-- | V1 error format.
newtype Xgafv = Xgafv {fromXgafv :: Core.Text}
  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
  deriving newtype
    ( Core.Hashable,
      Core.ToHttpApiData,
      Core.FromHttpApiData,
      Core.ToJSON,
      Core.ToJSONKey,
      Core.FromJSON,
      Core.FromJSONKey
    )

-- | v1 error format
pattern Xgafv_1 :: Xgafv
pattern Xgafv_1 = Xgafv "1"

-- | v2 error format
pattern Xgafv_2 :: Xgafv
pattern Xgafv_2 = Xgafv "2"

{-# COMPLETE
  Xgafv_1,
  Xgafv_2,
  Xgafv
  #-}

newtype AggregationInfo_AggregationInterval = AggregationInfo_AggregationInterval {fromAggregationInfo_AggregationInterval :: Core.Text}
  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
  deriving newtype
    ( Core.Hashable,
      Core.ToHttpApiData,
      Core.FromHttpApiData,
      Core.ToJSON,
      Core.ToJSONKey,
      Core.FromJSON,
      Core.FromJSONKey
    )

pattern AggregationInfo_AggregationInterval_AGGREGATIONINTERVALUNSPECIFIED :: AggregationInfo_AggregationInterval
pattern AggregationInfo_AggregationInterval_AGGREGATIONINTERVALUNSPECIFIED = AggregationInfo_AggregationInterval "AGGREGATION_INTERVAL_UNSPECIFIED"

pattern AggregationInfo_AggregationInterval_Daily :: AggregationInfo_AggregationInterval
pattern AggregationInfo_AggregationInterval_Daily = AggregationInfo_AggregationInterval "DAILY"

pattern AggregationInfo_AggregationInterval_Monthly :: AggregationInfo_AggregationInterval
pattern AggregationInfo_AggregationInterval_Monthly = AggregationInfo_AggregationInterval "MONTHLY"

{-# COMPLETE
  AggregationInfo_AggregationInterval_AGGREGATIONINTERVALUNSPECIFIED,
  AggregationInfo_AggregationInterval_Daily,
  AggregationInfo_AggregationInterval_Monthly,
  AggregationInfo_AggregationInterval
  #-}

newtype AggregationInfo_AggregationLevel = AggregationInfo_AggregationLevel {fromAggregationInfo_AggregationLevel :: Core.Text}
  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
  deriving newtype
    ( Core.Hashable,
      Core.ToHttpApiData,
      Core.FromHttpApiData,
      Core.ToJSON,
      Core.ToJSONKey,
      Core.FromJSON,
      Core.FromJSONKey
    )

pattern AggregationInfo_AggregationLevel_AGGREGATIONLEVELUNSPECIFIED :: AggregationInfo_AggregationLevel
pattern AggregationInfo_AggregationLevel_AGGREGATIONLEVELUNSPECIFIED = AggregationInfo_AggregationLevel "AGGREGATION_LEVEL_UNSPECIFIED"

pattern AggregationInfo_AggregationLevel_Account :: AggregationInfo_AggregationLevel
pattern AggregationInfo_AggregationLevel_Account = AggregationInfo_AggregationLevel "ACCOUNT"

pattern AggregationInfo_AggregationLevel_Project :: AggregationInfo_AggregationLevel
pattern AggregationInfo_AggregationLevel_Project = AggregationInfo_AggregationLevel "PROJECT"

{-# COMPLETE
  AggregationInfo_AggregationLevel_AGGREGATIONLEVELUNSPECIFIED,
  AggregationInfo_AggregationLevel_Account,
  AggregationInfo_AggregationLevel_Project,
  AggregationInfo_AggregationLevel
  #-}

-- | The log type that this config enables.
newtype AuditLogConfig_LogType = AuditLogConfig_LogType {fromAuditLogConfig_LogType :: Core.Text}
  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
  deriving newtype
    ( Core.Hashable,
      Core.ToHttpApiData,
      Core.FromHttpApiData,
      Core.ToJSON,
      Core.ToJSONKey,
      Core.FromJSON,
      Core.FromJSONKey
    )

-- | Default case. Should never be this.
pattern AuditLogConfig_LogType_LOGTYPEUNSPECIFIED :: AuditLogConfig_LogType
pattern AuditLogConfig_LogType_LOGTYPEUNSPECIFIED = AuditLogConfig_LogType "LOG_TYPE_UNSPECIFIED"

-- | Admin reads. Example: CloudIAM getIamPolicy
pattern AuditLogConfig_LogType_ADMINREAD :: AuditLogConfig_LogType
pattern AuditLogConfig_LogType_ADMINREAD = AuditLogConfig_LogType "ADMIN_READ"

-- | Data writes. Example: CloudSQL Users create
pattern AuditLogConfig_LogType_DATAWRITE :: AuditLogConfig_LogType
pattern AuditLogConfig_LogType_DATAWRITE = AuditLogConfig_LogType "DATA_WRITE"

-- | Data reads. Example: CloudSQL Users list
pattern AuditLogConfig_LogType_DATAREAD :: AuditLogConfig_LogType
pattern AuditLogConfig_LogType_DATAREAD = AuditLogConfig_LogType "DATA_READ"

{-# COMPLETE
  AuditLogConfig_LogType_LOGTYPEUNSPECIFIED,
  AuditLogConfig_LogType_ADMINREAD,
  AuditLogConfig_LogType_DATAWRITE,
  AuditLogConfig_LogType_DATAREAD,
  AuditLogConfig_LogType
  #-}

-- | The type of Geo Taxonomy: GLOBAL, REGIONAL, or MULTI_REGIONAL.
newtype GeoTaxonomy_Type = GeoTaxonomy_Type {fromGeoTaxonomy_Type :: Core.Text}
  deriving stock (Core.Show, Core.Read, Core.Eq, Core.Ord, Core.Generic)
  deriving newtype
    ( Core.Hashable,
      Core.ToHttpApiData,
      Core.FromHttpApiData,
      Core.ToJSON,
      Core.ToJSONKey,
      Core.FromJSON,
      Core.FromJSONKey
    )

-- | The type is not specified.
pattern GeoTaxonomy_Type_TYPEUNSPECIFIED :: GeoTaxonomy_Type
pattern GeoTaxonomy_Type_TYPEUNSPECIFIED = GeoTaxonomy_Type "TYPE_UNSPECIFIED"

-- | The sku is global in nature, e.g. a license sku. Global skus are available in all regions, and so have an empty region list.
pattern GeoTaxonomy_Type_Global :: GeoTaxonomy_Type
pattern GeoTaxonomy_Type_Global = GeoTaxonomy_Type "GLOBAL"

-- | The sku is available in a specific region, e.g. \"us-west2\".
pattern GeoTaxonomy_Type_Regional :: GeoTaxonomy_Type
pattern GeoTaxonomy_Type_Regional = GeoTaxonomy_Type "REGIONAL"

-- | The sku is associated with multiple regions, e.g. \"us-west2\" and \"us-east1\".
pattern GeoTaxonomy_Type_MULTIREGIONAL :: GeoTaxonomy_Type
pattern GeoTaxonomy_Type_MULTIREGIONAL = GeoTaxonomy_Type "MULTI_REGIONAL"

{-# COMPLETE
  GeoTaxonomy_Type_TYPEUNSPECIFIED,
  GeoTaxonomy_Type_Global,
  GeoTaxonomy_Type_Regional,
  GeoTaxonomy_Type_MULTIREGIONAL,
  GeoTaxonomy_Type
  #-}