Class: Orb::Models::Price::TieredMatrixWithAllocation::TieredMatrixWithAllocationConfig::Tier

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/orb/models/price.rb,
sig/orb/models/price.rbs

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(allocation:, default_unit_amount:, dimensions:, tiers:) ⇒ Object

Some parameter documentations has been truncated, see Orb::Models::Price::TieredMatrixWithAllocation::TieredMatrixWithAllocationConfig for more details.

Configuration for tiered_matrix_with_allocation pricing

Parameters:

  • allocation (String) —

    Usage allocation, pooled across all matrix cells

  • default_unit_amount (String) —

    Per unit rate for usage whose matrix cell has no configured tiers

  • dimensions (Array<String>) —

    One or two event property values to evaluate matrix cells by

  • tiers (Array<Orb::Models::Price::TieredMatrixWithAllocation::TieredMatrixWithAllocationConfig::Tier>) —

    Graduated tiers keyed by matrix cell; usage in a cell is tiered only against its



6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
# File 'lib/orb/models/price.rb', line 6394

class Tier < Orb::Internal::Type::BaseModel
  # @!attribute dimension_values
  #   The matrix cell this tier applies to, as one or two dimension values
  #
  #   @return [Array<String>]
  required :dimension_values, Orb::Internal::Type::ArrayOf[String]

  # @!attribute tier_lower_bound
  #   Exclusive tier starting value. The tier runs up to and including the next bound
  #   configured for the same matrix cell.
  #
  #   @return [String]
  required :tier_lower_bound, String

  # @!attribute unit_amount
  #   Per unit amount
  #
  #   @return [String]
  required :unit_amount, String

  # @!method initialize(dimension_values:, tier_lower_bound:, unit_amount:)
  #   Some parameter documentations has been truncated, see
  #   {Orb::Models::Price::TieredMatrixWithAllocation::TieredMatrixWithAllocationConfig::Tier}
  #   for more details.
  #
  #   Configuration for a single tier scoped to one matrix cell
  #
  #   @param dimension_values [Array<String>] The matrix cell this tier applies to, as one or two dimension values
  #
  #   @param tier_lower_bound [String] Exclusive tier starting value. The tier runs up to and including the next bound
  #
  #   @param unit_amount [String] Per unit amount
end

Instance Attribute Details

#dimension_values ⇒ Array<String>

The matrix cell this tier applies to, as one or two dimension values

Parameters:

  • value (::Array[String])

Returns:

  • (Array<String>)


6399
# File 'lib/orb/models/price.rb', line 6399

required :dimension_values, Orb::Internal::Type::ArrayOf[String]

#tier_lower_bound ⇒ String

Exclusive tier starting value. The tier runs up to and including the next bound configured for the same matrix cell.

Parameters:

  • value (String)

Returns:

  • (String)


6406
# File 'lib/orb/models/price.rb', line 6406

required :tier_lower_bound, String

#unit_amount ⇒ String

Per unit amount

Parameters:

  • value (String)

Returns:

  • (String)


6412
# File 'lib/orb/models/price.rb', line 6412

required :unit_amount, String

Instance Method Details

#to_hash ⇒ {

Returns:

  • ({)


4781
# File 'sig/orb/models/price.rbs', line 4781

def to_hash: -> {