Class: MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/contract_create_params.rb,
sig/metronome_sdk/models/v1/contract_create_params.rbs

Defined Under Namespace

Modules: Discounted, Source, SpendType

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(alias_:, applicable_spend_specifiers:, credit_type_id:, reset_frequency:) ⇒ Object

Parameters:



3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
# File 'lib/metronome_sdk/models/v1/contract_create_params.rb', line 3182

class ApplicableSpendSpecifier < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute sources
  #
  #   @return [Array<Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Source>]
  required :sources,
           -> { MetronomeSDK::Internal::Type::ArrayOf[enum: MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Source] }

  # @!attribute spend_type
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::SpendType]
  required :spend_type,
           enum: -> { MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::SpendType }

  # @!attribute discounted
  #   Filter by whether the spend was discounted. Defaults to ANY if omitted.
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Discounted, nil]
  optional :discounted,
           enum: -> { MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Discounted }

  # @!method initialize(sources:, spend_type:, discounted: nil)
  #   @param sources [Array<Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Source>]
  #
  #   @param spend_type [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::SpendType]
  #
  #   @param discounted [Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Discounted] Filter by whether the spend was discounted. Defaults to ANY if omitted.

  module Source
    extend MetronomeSDK::Internal::Type::Enum

    THRESHOLD_RECHARGE = :THRESHOLD_RECHARGE
    MANUAL = :MANUAL

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # @see MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier#spend_type
  module SpendType
    extend MetronomeSDK::Internal::Type::Enum

    COMMIT_PURCHASE = :COMMIT_PURCHASE

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # Filter by whether the spend was discounted. Defaults to ANY if omitted.
  #
  # @see MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier#discounted
  module Discounted
    extend MetronomeSDK::Internal::Type::Enum

    ANY = :ANY
    DISCOUNTED_ONLY = :DISCOUNTED_ONLY
    UNDISCOUNTED_ONLY = :UNDISCOUNTED_ONLY

    # @!method self.values
    #   @return [Array<Symbol>]
  end
end

Instance Attribute Details

#discountedSymbol, ...

Filter by whether the spend was discounted. Defaults to ANY if omitted.



3199
3200
# File 'lib/metronome_sdk/models/v1/contract_create_params.rb', line 3199

optional :discounted,
enum: -> { MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Discounted }

#sourcesArray<Symbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Source>

Parameters:

  • value (::Array[MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::source])

Returns:



3186
3187
# File 'lib/metronome_sdk/models/v1/contract_create_params.rb', line 3186

required :sources,
-> { MetronomeSDK::Internal::Type::ArrayOf[enum: MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::Source] }

#spend_typeSymbol, MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::SpendType

Parameters:

  • value (MetronomeSDK::Models::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::spend_type)

Returns:



3192
3193
# File 'lib/metronome_sdk/models/v1/contract_create_params.rb', line 3192

required :spend_type,
enum: -> { MetronomeSDK::V1::ContractCreateParams::SpendTracker::ApplicableSpendSpecifier::SpendType }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v1/contract_create_params.rb', line 3215

Instance Method Details

#to_hash{

Returns:

  • ({)


2889
# File 'sig/metronome_sdk/models/v1/contract_create_params.rbs', line 2889

def to_hash: -> {