Class: Orb::Models::AmountDiscount

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/orb/models/amount_discount.rb,
sig/orb/models/amount_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(amount_discount:, discount_type:, applies_to_price_ids: nil, filters: nil, reason: nil) ⇒ Object

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

Parameters:

  • amount_discount (String)

    Only available if discount_type is amount.

  • discount_type (Symbol, Orb::Models::AmountDiscount::DiscountType)
  • 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::AmountDiscount::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/amount_discount.rb', line 35

Instance Attribute Details

#amount_discountString

Only available if discount_type is amount.

Parameters:

  • value (String)

Returns:

  • (String)


10
# File 'lib/orb/models/amount_discount.rb', line 10

required :amount_discount, String

#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)


22
# File 'lib/orb/models/amount_discount.rb', line 22

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

#discount_typeSymbol, Orb::Models::AmountDiscount::DiscountType

Parameters:

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

Returns:



15
# File 'lib/orb/models/amount_discount.rb', line 15

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

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

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

Parameters:

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

Returns:



28
# File 'lib/orb/models/amount_discount.rb', line 28

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

#reasonString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


33
# File 'lib/orb/models/amount_discount.rb', line 33

optional :reason, String, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/orb/models/amount_discount.rb', line 55

Instance Method Details

#to_hash{

Returns:

  • ({)


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

def to_hash: -> {