Class: FinchAPI::Models::Provider::AuthenticationMethod

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/finch_api/models/provider.rb

Defined Under Namespace

Modules: Type

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(type: , benefits_support: nil, supported_fields: nil) ⇒ Object

Parameters:

  • type (Symbol, FinchAPI::Models::Provider::AuthenticationMethod::Type) (defaults to: )

    The type of authentication method

  • benefits_support (Hash{Symbol=>Object, nil}) (defaults to: nil)

    The supported benefit types and their configurations

  • supported_fields (Hash{Symbol=>Object, nil}) (defaults to: nil)

    The supported fields for each Finch product



95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# File 'lib/finch_api/models/provider.rb', line 95

class AuthenticationMethod < FinchAPI::Internal::Type::BaseModel
  # @!attribute type
  #   The type of authentication method
  #
  #   @return [Symbol, FinchAPI::Models::Provider::AuthenticationMethod::Type]
  required :type, enum: -> { FinchAPI::Provider::AuthenticationMethod::Type }

  # @!attribute benefits_support
  #   The supported benefit types and their configurations
  #
  #   @return [Hash{Symbol=>Object, nil}, nil]
  optional :benefits_support,
           FinchAPI::Internal::Type::HashOf[FinchAPI::Internal::Type::Unknown, nil?: true]

  # @!attribute supported_fields
  #   The supported fields for each Finch product
  #
  #   @return [Hash{Symbol=>Object, nil}, nil]
  optional :supported_fields,
           FinchAPI::Internal::Type::HashOf[FinchAPI::Internal::Type::Unknown, nil?: true]

  # @!method initialize(type:, benefits_support: nil, supported_fields: nil)
  #   @param type [Symbol, FinchAPI::Models::Provider::AuthenticationMethod::Type] The type of authentication method
  #
  #   @param benefits_support [Hash{Symbol=>Object, nil}] The supported benefit types and their configurations
  #
  #   @param supported_fields [Hash{Symbol=>Object, nil}] The supported fields for each Finch product

  # The type of authentication method
  #
  # @see FinchAPI::Models::Provider::AuthenticationMethod#type
  module Type
    extend FinchAPI::Internal::Type::Enum

    ASSISTED = :assisted
    CREDENTIAL = :credential
    API_TOKEN = :api_token
    API_CREDENTIAL = :api_credential
    OAUTH = :oauth
    API = :api

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

Instance Attribute Details

#benefits_supportHash{Symbol=>Object, nil}?

The supported benefit types and their configurations

Returns:

  • (Hash{Symbol=>Object, nil}, nil)


106
107
# File 'lib/finch_api/models/provider.rb', line 106

optional :benefits_support,
FinchAPI::Internal::Type::HashOf[FinchAPI::Internal::Type::Unknown, nil?: true]

#supported_fieldsHash{Symbol=>Object, nil}?

The supported fields for each Finch product

Returns:

  • (Hash{Symbol=>Object, nil}, nil)


113
114
# File 'lib/finch_api/models/provider.rb', line 113

optional :supported_fields,
FinchAPI::Internal::Type::HashOf[FinchAPI::Internal::Type::Unknown, nil?: true]

#typeSymbol, FinchAPI::Models::Provider::AuthenticationMethod::Type

The type of authentication method



100
# File 'lib/finch_api/models/provider.rb', line 100

required :type, enum: -> { FinchAPI::Provider::AuthenticationMethod::Type }