Class: Orb::Models::UsageDiscount

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

Defined Under Namespace

Modules: DiscountType Classes: Filter

Instance Attribute Summary collapse

Class Method 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(discount_type:, usage_discount:, applies_to_price_ids: nil, filters: nil, reason: nil) ⇒ Object

Some parameter documentations has been truncated, see Orb::Models::UsageDiscount for more details.

Parameters:

  • discount_type (Symbol, Orb::Models::UsageDiscount::DiscountType)
  • usage_discount (Float)

    Only available if discount_type is usage. Number of usage units that this disc

  • applies_to_price_ids (Array<String>, nil) (defaults to: nil)

    List of price_ids that this discount applies to. For plan/plan phase discounts,

  • filters (Array<Orb::Models::UsageDiscount::Filter>, nil) (defaults to: nil)

    The filters that determine which prices to apply this discount to.

  • reason (String, nil) (defaults to: nil)


# File 'lib/orb/models/usage_discount.rb', line 36

Instance Attribute Details

#applies_to_price_idsArray<String>?

List of price_ids that this discount applies to. For plan/plan phase discounts, this can be a subset of prices.

Parameters:

  • value (::Array[String], nil)

Returns:

  • (Array<String>, nil)


23
# File 'lib/orb/models/usage_discount.rb', line 23

optional :applies_to_price_ids, Orb::Internal::Type::ArrayOf[String], nil?: true

#discount_typeSymbol, Orb::Models::UsageDiscount::DiscountType

Parameters:

  • value (Orb::Models::UsageDiscount::discount_type)

Returns:



9
# File 'lib/orb/models/usage_discount.rb', line 9

required :discount_type, enum: -> { Orb::UsageDiscount::DiscountType }

#filtersArray<Orb::Models::UsageDiscount::Filter>?

The filters that determine which prices to apply this discount to.

Parameters:

  • value (::Array[Orb::UsageDiscount::Filter], nil)

Returns:



29
# File 'lib/orb/models/usage_discount.rb', line 29

optional :filters, -> { Orb::Internal::Type::ArrayOf[Orb::UsageDiscount::Filter] }, nil?: true

#reasonString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


34
# File 'lib/orb/models/usage_discount.rb', line 34

optional :reason, String, nil?: true

#usage_discountFloat

Only available if discount_type is usage. Number of usage units that this discount is for

Parameters:

  • value (Float)

Returns:

  • (Float)


16
# File 'lib/orb/models/usage_discount.rb', line 16

required :usage_discount, Float

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/orb/models/usage_discount.rb', line 56

Instance Method Details

#to_hash{

Returns:

  • ({)


31
# File 'sig/orb/models/usage_discount.rbs', line 31

def to_hash: -> {