finch-api 0.1.0.pre.alpha.30 → 0.1.0.pre.alpha.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +1 -1
  4. data/lib/finch_api/errors.rb +25 -11
  5. data/lib/finch_api/file_part.rb +10 -7
  6. data/lib/finch_api/internal/individuals_page.rb +1 -1
  7. data/lib/finch_api/internal/page.rb +1 -1
  8. data/lib/finch_api/internal/responses_page.rb +1 -1
  9. data/lib/finch_api/internal/single_page.rb +1 -1
  10. data/lib/finch_api/internal/transport/base_client.rb +11 -7
  11. data/lib/finch_api/internal/transport/pooled_net_requester.rb +34 -31
  12. data/lib/finch_api/internal/type/base_page.rb +1 -1
  13. data/lib/finch_api/internal/type/file_input.rb +7 -4
  14. data/lib/finch_api/internal/util.rb +8 -7
  15. data/lib/finch_api/models/connect/session_new_params.rb +66 -50
  16. data/lib/finch_api/models/connect/session_reauthenticate_params.rb +10 -10
  17. data/lib/finch_api/models/create_access_token_response.rb +9 -1
  18. data/lib/finch_api/models/hris/benefit_contribution.rb +124 -29
  19. data/lib/finch_api/models/hris/benefit_create_params.rb +9 -1
  20. data/lib/finch_api/models/hris/benefit_list_params.rb +9 -1
  21. data/lib/finch_api/models/hris/benefit_list_supported_benefits_params.rb +9 -1
  22. data/lib/finch_api/models/hris/benefit_retrieve_params.rb +9 -1
  23. data/lib/finch_api/models/hris/benefit_update_params.rb +9 -1
  24. data/lib/finch_api/models/hris/benefits/individual_benefit.rb +222 -6
  25. data/lib/finch_api/models/hris/benefits/individual_enroll_many_params.rb +40 -2
  26. data/lib/finch_api/models/hris/benefits/individual_enrolled_ids_params.rb +9 -1
  27. data/lib/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rb +9 -1
  28. data/lib/finch_api/models/hris/benefits/individual_unenroll_many_params.rb +9 -1
  29. data/lib/finch_api/models/hris/company/pay_statement_item/rule_create_params.rb +9 -1
  30. data/lib/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rb +9 -1
  31. data/lib/finch_api/models/hris/company/pay_statement_item/rule_list_params.rb +9 -1
  32. data/lib/finch_api/models/hris/company/pay_statement_item/rule_update_params.rb +10 -1
  33. data/lib/finch_api/models/hris/company/pay_statement_item_list_params.rb +9 -1
  34. data/lib/finch_api/models/hris/company_retrieve_params.rb +9 -1
  35. data/lib/finch_api/models/hris/directory_list_individuals_params.rb +9 -1
  36. data/lib/finch_api/models/hris/directory_list_params.rb +9 -1
  37. data/lib/finch_api/models/hris/document_list_params.rb +9 -1
  38. data/lib/finch_api/models/hris/document_response.rb +11 -11
  39. data/lib/finch_api/models/hris/document_retreive_params.rb +9 -1
  40. data/lib/finch_api/models/hris/employment_retrieve_many_params.rb +9 -1
  41. data/lib/finch_api/models/hris/individual_retrieve_many_params.rb +11 -1
  42. data/lib/finch_api/models/hris/pay_statement.rb +11 -15
  43. data/lib/finch_api/models/hris/pay_statement_retrieve_many_params.rb +9 -1
  44. data/lib/finch_api/models/hris/payment_list_params.rb +9 -1
  45. data/lib/finch_api/models/hris/supported_benefit.rb +1 -0
  46. data/lib/finch_api/models/hris/w42005.rb +20 -20
  47. data/lib/finch_api/models/hris/w42020.rb +30 -30
  48. data/lib/finch_api/models/introspection.rb +38 -23
  49. data/lib/finch_api/models/jobs/automated_list_params.rb +1 -14
  50. data/lib/finch_api/models/jobs/automated_retrieve_params.rb +1 -14
  51. data/lib/finch_api/models/jobs/manual_retrieve_params.rb +1 -14
  52. data/lib/finch_api/models/payroll/pay_group_list_params.rb +11 -1
  53. data/lib/finch_api/models/payroll/pay_group_retrieve_params.rb +9 -1
  54. data/lib/finch_api/models/provider.rb +42 -1092
  55. data/lib/finch_api/models/provider_list_response.rb +143 -0
  56. data/lib/finch_api/models/request_forwarding_forward_params.rb +10 -6
  57. data/lib/finch_api/models/request_forwarding_forward_response.rb +69 -48
  58. data/lib/finch_api/resources/connect/sessions.rb +12 -12
  59. data/lib/finch_api/resources/hris/benefits/individuals.rb +24 -10
  60. data/lib/finch_api/resources/hris/benefits.rb +37 -16
  61. data/lib/finch_api/resources/hris/company/pay_statement_item/rules.rb +38 -15
  62. data/lib/finch_api/resources/hris/company/pay_statement_item.rb +3 -1
  63. data/lib/finch_api/resources/hris/company.rb +6 -2
  64. data/lib/finch_api/resources/hris/directory.rb +3 -1
  65. data/lib/finch_api/resources/hris/documents.rb +9 -3
  66. data/lib/finch_api/resources/hris/employments.rb +7 -3
  67. data/lib/finch_api/resources/hris/individuals.rb +10 -4
  68. data/lib/finch_api/resources/hris/pay_statements.rb +7 -3
  69. data/lib/finch_api/resources/hris/payments.rb +3 -1
  70. data/lib/finch_api/resources/jobs/automated.rb +3 -16
  71. data/lib/finch_api/resources/jobs/manual.rb +2 -10
  72. data/lib/finch_api/resources/payroll/pay_groups.rb +12 -3
  73. data/lib/finch_api/resources/providers.rb +2 -2
  74. data/lib/finch_api/resources/request_forwarding.rb +2 -2
  75. data/lib/finch_api/version.rb +1 -1
  76. data/lib/finch_api.rb +1 -0
  77. data/rbi/finch_api/errors.rbi +29 -2
  78. data/rbi/finch_api/file_part.rbi +1 -1
  79. data/rbi/finch_api/internal/transport/base_client.rbi +4 -5
  80. data/rbi/finch_api/internal/type/base_page.rbi +1 -1
  81. data/rbi/finch_api/internal/util.rbi +1 -1
  82. data/rbi/finch_api/models/connect/session_new_params.rbi +124 -98
  83. data/rbi/finch_api/models/connect/session_reauthenticate_params.rbi +23 -23
  84. data/rbi/finch_api/models/create_access_token_response.rbi +8 -0
  85. data/rbi/finch_api/models/hris/benefit_contribution.rbi +270 -52
  86. data/rbi/finch_api/models/hris/benefit_create_params.rbi +11 -0
  87. data/rbi/finch_api/models/hris/benefit_list_params.rbi +24 -5
  88. data/rbi/finch_api/models/hris/benefit_list_supported_benefits_params.rbi +24 -5
  89. data/rbi/finch_api/models/hris/benefit_retrieve_params.rbi +24 -5
  90. data/rbi/finch_api/models/hris/benefit_update_params.rbi +15 -1
  91. data/rbi/finch_api/models/hris/benefits/individual_benefit.rbi +515 -20
  92. data/rbi/finch_api/models/hris/benefits/individual_enroll_many_params.rbi +87 -0
  93. data/rbi/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbi +22 -5
  94. data/rbi/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +11 -0
  95. data/rbi/finch_api/models/hris/benefits/individual_unenroll_many_params.rbi +11 -0
  96. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbi +11 -0
  97. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbi +22 -5
  98. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbi +22 -5
  99. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbi +15 -1
  100. data/rbi/finch_api/models/hris/company/pay_statement_item_list_params.rbi +11 -0
  101. data/rbi/finch_api/models/hris/company_retrieve_params.rbi +24 -5
  102. data/rbi/finch_api/models/hris/directory_list_individuals_params.rbi +11 -0
  103. data/rbi/finch_api/models/hris/directory_list_params.rbi +11 -0
  104. data/rbi/finch_api/models/hris/document_list_params.rbi +11 -0
  105. data/rbi/finch_api/models/hris/document_response.rbi +14 -29
  106. data/rbi/finch_api/models/hris/document_retreive_params.rbi +24 -5
  107. data/rbi/finch_api/models/hris/employment_retrieve_many_params.rbi +11 -0
  108. data/rbi/finch_api/models/hris/individual_retrieve_many_params.rbi +16 -1
  109. data/rbi/finch_api/models/hris/pay_statement.rbi +9 -34
  110. data/rbi/finch_api/models/hris/pay_statement_retrieve_many_params.rbi +11 -0
  111. data/rbi/finch_api/models/hris/payment_list_params.rbi +11 -0
  112. data/rbi/finch_api/models/hris/supported_benefit.rbi +5 -0
  113. data/rbi/finch_api/models/hris/w42005.rbi +28 -38
  114. data/rbi/finch_api/models/hris/w42020.rbi +37 -43
  115. data/rbi/finch_api/models/introspection.rbi +57 -33
  116. data/rbi/finch_api/models/jobs/automated_list_params.rbi +0 -15
  117. data/rbi/finch_api/models/jobs/automated_retrieve_params.rbi +5 -25
  118. data/rbi/finch_api/models/jobs/manual_retrieve_params.rbi +5 -25
  119. data/rbi/finch_api/models/payroll/pay_group_list_params.rbi +11 -0
  120. data/rbi/finch_api/models/payroll/pay_group_retrieve_params.rbi +24 -5
  121. data/rbi/finch_api/models/provider.rbi +75 -2507
  122. data/rbi/finch_api/models/provider_list_response.rbi +280 -0
  123. data/rbi/finch_api/models/request_forwarding_forward_params.rbi +6 -6
  124. data/rbi/finch_api/models/request_forwarding_forward_response.rbi +93 -60
  125. data/rbi/finch_api/resources/connect/sessions.rbi +22 -14
  126. data/rbi/finch_api/resources/hris/benefits/individuals.rbi +20 -3
  127. data/rbi/finch_api/resources/hris/benefits.rbi +39 -12
  128. data/rbi/finch_api/resources/hris/company/pay_statement_item/rules.rbi +35 -8
  129. data/rbi/finch_api/resources/hris/company/pay_statement_item.rbi +3 -0
  130. data/rbi/finch_api/resources/hris/company.rbi +9 -4
  131. data/rbi/finch_api/resources/hris/directory.rbi +3 -0
  132. data/rbi/finch_api/resources/hris/documents.rbi +6 -0
  133. data/rbi/finch_api/resources/hris/employments.rbi +4 -1
  134. data/rbi/finch_api/resources/hris/individuals.rbi +10 -1
  135. data/rbi/finch_api/resources/hris/pay_statements.rbi +4 -1
  136. data/rbi/finch_api/resources/hris/payments.rbi +3 -0
  137. data/rbi/finch_api/resources/jobs/automated.rbi +1 -14
  138. data/rbi/finch_api/resources/jobs/manual.rbi +1 -9
  139. data/rbi/finch_api/resources/payroll/pay_groups.rbi +15 -2
  140. data/rbi/finch_api/resources/providers.rbi +1 -1
  141. data/rbi/finch_api/resources/request_forwarding.rbi +2 -2
  142. data/sig/finch_api/errors.rbs +7 -0
  143. data/sig/finch_api/file_part.rbs +1 -1
  144. data/sig/finch_api/models/connect/session_new_params.rbs +45 -45
  145. data/sig/finch_api/models/connect/session_reauthenticate_params.rbs +15 -15
  146. data/sig/finch_api/models/create_access_token_response.rbs +5 -0
  147. data/sig/finch_api/models/hris/benefit_contribution.rbs +107 -21
  148. data/sig/finch_api/models/hris/benefit_create_params.rbs +7 -0
  149. data/sig/finch_api/models/hris/benefit_list_params.rbs +14 -3
  150. data/sig/finch_api/models/hris/benefit_list_supported_benefits_params.rbs +14 -3
  151. data/sig/finch_api/models/hris/benefit_retrieve_params.rbs +14 -3
  152. data/sig/finch_api/models/hris/benefit_update_params.rbs +8 -1
  153. data/sig/finch_api/models/hris/benefits/individual_benefit.rbs +201 -8
  154. data/sig/finch_api/models/hris/benefits/individual_enroll_many_params.rbs +30 -1
  155. data/sig/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbs +14 -3
  156. data/sig/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +7 -1
  157. data/sig/finch_api/models/hris/benefits/individual_unenroll_many_params.rbs +7 -1
  158. data/sig/finch_api/models/hris/benfit_contribution.rbs +1 -1
  159. data/sig/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbs +7 -0
  160. data/sig/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbs +14 -3
  161. data/sig/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbs +14 -3
  162. data/sig/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbs +7 -1
  163. data/sig/finch_api/models/hris/company/pay_statement_item_list_params.rbs +7 -0
  164. data/sig/finch_api/models/hris/company_retrieve_params.rbs +14 -3
  165. data/sig/finch_api/models/hris/directory_list_individuals_params.rbs +7 -1
  166. data/sig/finch_api/models/hris/directory_list_params.rbs +7 -1
  167. data/sig/finch_api/models/hris/document_list_params.rbs +7 -0
  168. data/sig/finch_api/models/hris/document_response.rbs +11 -19
  169. data/sig/finch_api/models/hris/document_retreive_params.rbs +14 -3
  170. data/sig/finch_api/models/hris/employment_retrieve_many_params.rbs +8 -1
  171. data/sig/finch_api/models/hris/individual_retrieve_many_params.rbs +7 -0
  172. data/sig/finch_api/models/hris/pay_statement.rbs +12 -12
  173. data/sig/finch_api/models/hris/pay_statement_retrieve_many_params.rbs +8 -1
  174. data/sig/finch_api/models/hris/payment_list_params.rbs +7 -1
  175. data/sig/finch_api/models/hris/supported_benefit.rbs +2 -1
  176. data/sig/finch_api/models/hris/w42005.rbs +23 -37
  177. data/sig/finch_api/models/hris/w42020.rbs +35 -45
  178. data/sig/finch_api/models/introspection.rbs +29 -20
  179. data/sig/finch_api/models/jobs/automated_list_params.rbs +1 -7
  180. data/sig/finch_api/models/jobs/automated_retrieve_params.rbs +3 -13
  181. data/sig/finch_api/models/jobs/manual_retrieve_params.rbs +3 -13
  182. data/sig/finch_api/models/payroll/pay_group_list_params.rbs +11 -1
  183. data/sig/finch_api/models/payroll/pay_group_retrieve_params.rbs +14 -3
  184. data/sig/finch_api/models/provider.rbs +31 -1366
  185. data/sig/finch_api/models/provider_list_response.rbs +128 -0
  186. data/sig/finch_api/models/request_forwarding_forward_params.rbs +8 -8
  187. data/sig/finch_api/models/request_forwarding_forward_response.rbs +40 -30
  188. data/sig/finch_api/resources/connect/sessions.rbs +9 -9
  189. data/sig/finch_api/resources/hris/benefits/individuals.rbs +4 -0
  190. data/sig/finch_api/resources/hris/benefits.rbs +5 -0
  191. data/sig/finch_api/resources/hris/company/pay_statement_item/rules.rbs +4 -0
  192. data/sig/finch_api/resources/hris/company/pay_statement_item.rbs +1 -0
  193. data/sig/finch_api/resources/hris/company.rbs +1 -0
  194. data/sig/finch_api/resources/hris/directory.rbs +1 -0
  195. data/sig/finch_api/resources/hris/documents.rbs +2 -0
  196. data/sig/finch_api/resources/hris/employments.rbs +1 -0
  197. data/sig/finch_api/resources/hris/individuals.rbs +1 -0
  198. data/sig/finch_api/resources/hris/pay_statements.rbs +1 -0
  199. data/sig/finch_api/resources/hris/payments.rbs +1 -0
  200. data/sig/finch_api/resources/jobs/automated.rbs +0 -2
  201. data/sig/finch_api/resources/jobs/manual.rbs +0 -1
  202. data/sig/finch_api/resources/payroll/pay_groups.rbs +2 -0
  203. data/sig/finch_api/resources/providers.rbs +1 -1
  204. data/sig/finch_api/resources/request_forwarding.rbs +2 -2
  205. metadata +5 -2
@@ -82,27 +82,23 @@ module FinchAPI
82
82
  sig { returns(T.nilable(T::Boolean)) }
83
83
  attr_accessor :catch_up
84
84
 
85
- sig { returns(T.nilable(FinchAPI::HRIS::BenefitContribution)) }
86
- attr_reader :company_contribution
87
-
88
85
  sig do
89
- params(
90
- company_contribution:
91
- T.nilable(FinchAPI::HRIS::BenefitContribution::OrHash)
92
- ).void
86
+ returns(
87
+ T.nilable(
88
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::Variants
89
+ )
90
+ )
93
91
  end
94
- attr_writer :company_contribution
95
-
96
- sig { returns(T.nilable(FinchAPI::HRIS::BenefitContribution)) }
97
- attr_reader :employee_deduction
92
+ attr_accessor :company_contribution
98
93
 
99
94
  sig do
100
- params(
101
- employee_deduction:
102
- T.nilable(FinchAPI::HRIS::BenefitContribution::OrHash)
103
- ).void
95
+ returns(
96
+ T.nilable(
97
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::Variants
98
+ )
99
+ )
104
100
  end
105
- attr_writer :employee_deduction
101
+ attr_accessor :employee_deduction
106
102
 
107
103
  # Type for HSA contribution limit if the benefit is a HSA.
108
104
  sig do
@@ -119,9 +115,20 @@ module FinchAPI
119
115
  annual_maximum: T.nilable(Integer),
120
116
  catch_up: T.nilable(T::Boolean),
121
117
  company_contribution:
122
- T.nilable(FinchAPI::HRIS::BenefitContribution::OrHash),
118
+ T.nilable(
119
+ T.any(
120
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::OrHash,
121
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::OrHash,
122
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::OrHash
123
+ )
124
+ ),
123
125
  employee_deduction:
124
- T.nilable(FinchAPI::HRIS::BenefitContribution::OrHash),
126
+ T.nilable(
127
+ T.any(
128
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::OrHash,
129
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::OrHash
130
+ )
131
+ ),
125
132
  hsa_contribution_limit:
126
133
  T.nilable(
127
134
  FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::HsaContributionLimit::OrSymbol
@@ -147,9 +154,13 @@ module FinchAPI
147
154
  annual_maximum: T.nilable(Integer),
148
155
  catch_up: T.nilable(T::Boolean),
149
156
  company_contribution:
150
- T.nilable(FinchAPI::HRIS::BenefitContribution),
157
+ T.nilable(
158
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::Variants
159
+ ),
151
160
  employee_deduction:
152
- T.nilable(FinchAPI::HRIS::BenefitContribution),
161
+ T.nilable(
162
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::Variants
163
+ ),
153
164
  hsa_contribution_limit:
154
165
  T.nilable(
155
166
  FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::HsaContributionLimit::TaggedSymbol
@@ -160,6 +171,490 @@ module FinchAPI
160
171
  def to_hash
161
172
  end
162
173
 
174
+ module CompanyContribution
175
+ extend FinchAPI::Internal::Type::Union
176
+
177
+ Variants =
178
+ T.type_alias do
179
+ T.any(
180
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0,
181
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1,
182
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2
183
+ )
184
+ end
185
+
186
+ class UnionMember0 < FinchAPI::Internal::Type::BaseModel
187
+ OrHash =
188
+ T.type_alias do
189
+ T.any(
190
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0,
191
+ FinchAPI::Internal::AnyHash
192
+ )
193
+ end
194
+
195
+ # Contribution amount in cents.
196
+ sig { returns(Integer) }
197
+ attr_accessor :amount
198
+
199
+ # Fixed contribution type.
200
+ sig do
201
+ returns(
202
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type::TaggedSymbol
203
+ )
204
+ end
205
+ attr_accessor :type
206
+
207
+ sig do
208
+ params(
209
+ amount: Integer,
210
+ type:
211
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type::OrSymbol
212
+ ).returns(T.attached_class)
213
+ end
214
+ def self.new(
215
+ # Contribution amount in cents.
216
+ amount:,
217
+ # Fixed contribution type.
218
+ type:
219
+ )
220
+ end
221
+
222
+ sig do
223
+ override.returns(
224
+ {
225
+ amount: Integer,
226
+ type:
227
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type::TaggedSymbol
228
+ }
229
+ )
230
+ end
231
+ def to_hash
232
+ end
233
+
234
+ # Fixed contribution type.
235
+ module Type
236
+ extend FinchAPI::Internal::Type::Enum
237
+
238
+ TaggedSymbol =
239
+ T.type_alias do
240
+ T.all(
241
+ Symbol,
242
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type
243
+ )
244
+ end
245
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
246
+
247
+ FIXED =
248
+ T.let(
249
+ :fixed,
250
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type::TaggedSymbol
251
+ )
252
+
253
+ sig do
254
+ override.returns(
255
+ T::Array[
256
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember0::Type::TaggedSymbol
257
+ ]
258
+ )
259
+ end
260
+ def self.values
261
+ end
262
+ end
263
+ end
264
+
265
+ class UnionMember1 < FinchAPI::Internal::Type::BaseModel
266
+ OrHash =
267
+ T.type_alias do
268
+ T.any(
269
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1,
270
+ FinchAPI::Internal::AnyHash
271
+ )
272
+ end
273
+
274
+ # Contribution amount in basis points (1/100th of a percent).
275
+ sig { returns(Integer) }
276
+ attr_accessor :amount
277
+
278
+ # Percentage contribution type.
279
+ sig do
280
+ returns(
281
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type::TaggedSymbol
282
+ )
283
+ end
284
+ attr_accessor :type
285
+
286
+ sig do
287
+ params(
288
+ amount: Integer,
289
+ type:
290
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type::OrSymbol
291
+ ).returns(T.attached_class)
292
+ end
293
+ def self.new(
294
+ # Contribution amount in basis points (1/100th of a percent).
295
+ amount:,
296
+ # Percentage contribution type.
297
+ type:
298
+ )
299
+ end
300
+
301
+ sig do
302
+ override.returns(
303
+ {
304
+ amount: Integer,
305
+ type:
306
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type::TaggedSymbol
307
+ }
308
+ )
309
+ end
310
+ def to_hash
311
+ end
312
+
313
+ # Percentage contribution type.
314
+ module Type
315
+ extend FinchAPI::Internal::Type::Enum
316
+
317
+ TaggedSymbol =
318
+ T.type_alias do
319
+ T.all(
320
+ Symbol,
321
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type
322
+ )
323
+ end
324
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
325
+
326
+ PERCENT =
327
+ T.let(
328
+ :percent,
329
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type::TaggedSymbol
330
+ )
331
+
332
+ sig do
333
+ override.returns(
334
+ T::Array[
335
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember1::Type::TaggedSymbol
336
+ ]
337
+ )
338
+ end
339
+ def self.values
340
+ end
341
+ end
342
+ end
343
+
344
+ class UnionMember2 < FinchAPI::Internal::Type::BaseModel
345
+ OrHash =
346
+ T.type_alias do
347
+ T.any(
348
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2,
349
+ FinchAPI::Internal::AnyHash
350
+ )
351
+ end
352
+
353
+ # Array of tier objects defining employer match tiers based on employee
354
+ # contribution thresholds.
355
+ sig do
356
+ returns(
357
+ T::Array[
358
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Tier
359
+ ]
360
+ )
361
+ end
362
+ attr_accessor :tiers
363
+
364
+ # Tiered contribution type (only valid for company_contribution).
365
+ sig do
366
+ returns(
367
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type::TaggedSymbol
368
+ )
369
+ end
370
+ attr_accessor :type
371
+
372
+ sig do
373
+ params(
374
+ tiers:
375
+ T::Array[
376
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Tier::OrHash
377
+ ],
378
+ type:
379
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type::OrSymbol
380
+ ).returns(T.attached_class)
381
+ end
382
+ def self.new(
383
+ # Array of tier objects defining employer match tiers based on employee
384
+ # contribution thresholds.
385
+ tiers:,
386
+ # Tiered contribution type (only valid for company_contribution).
387
+ type:
388
+ )
389
+ end
390
+
391
+ sig do
392
+ override.returns(
393
+ {
394
+ tiers:
395
+ T::Array[
396
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Tier
397
+ ],
398
+ type:
399
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type::TaggedSymbol
400
+ }
401
+ )
402
+ end
403
+ def to_hash
404
+ end
405
+
406
+ class Tier < FinchAPI::Internal::Type::BaseModel
407
+ OrHash =
408
+ T.type_alias do
409
+ T.any(
410
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Tier,
411
+ FinchAPI::Internal::AnyHash
412
+ )
413
+ end
414
+
415
+ sig { returns(Integer) }
416
+ attr_accessor :match
417
+
418
+ sig { returns(Integer) }
419
+ attr_accessor :threshold
420
+
421
+ sig do
422
+ params(match: Integer, threshold: Integer).returns(
423
+ T.attached_class
424
+ )
425
+ end
426
+ def self.new(match:, threshold:)
427
+ end
428
+
429
+ sig do
430
+ override.returns({ match: Integer, threshold: Integer })
431
+ end
432
+ def to_hash
433
+ end
434
+ end
435
+
436
+ # Tiered contribution type (only valid for company_contribution).
437
+ module Type
438
+ extend FinchAPI::Internal::Type::Enum
439
+
440
+ TaggedSymbol =
441
+ T.type_alias do
442
+ T.all(
443
+ Symbol,
444
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type
445
+ )
446
+ end
447
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
448
+
449
+ TIERED =
450
+ T.let(
451
+ :tiered,
452
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type::TaggedSymbol
453
+ )
454
+
455
+ sig do
456
+ override.returns(
457
+ T::Array[
458
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::UnionMember2::Type::TaggedSymbol
459
+ ]
460
+ )
461
+ end
462
+ def self.values
463
+ end
464
+ end
465
+ end
466
+
467
+ sig do
468
+ override.returns(
469
+ T::Array[
470
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::CompanyContribution::Variants
471
+ ]
472
+ )
473
+ end
474
+ def self.variants
475
+ end
476
+ end
477
+
478
+ module EmployeeDeduction
479
+ extend FinchAPI::Internal::Type::Union
480
+
481
+ Variants =
482
+ T.type_alias do
483
+ T.any(
484
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0,
485
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1
486
+ )
487
+ end
488
+
489
+ class UnionMember0 < FinchAPI::Internal::Type::BaseModel
490
+ OrHash =
491
+ T.type_alias do
492
+ T.any(
493
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0,
494
+ FinchAPI::Internal::AnyHash
495
+ )
496
+ end
497
+
498
+ # Contribution amount in cents.
499
+ sig { returns(Integer) }
500
+ attr_accessor :amount
501
+
502
+ # Fixed contribution type.
503
+ sig do
504
+ returns(
505
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type::TaggedSymbol
506
+ )
507
+ end
508
+ attr_accessor :type
509
+
510
+ sig do
511
+ params(
512
+ amount: Integer,
513
+ type:
514
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type::OrSymbol
515
+ ).returns(T.attached_class)
516
+ end
517
+ def self.new(
518
+ # Contribution amount in cents.
519
+ amount:,
520
+ # Fixed contribution type.
521
+ type:
522
+ )
523
+ end
524
+
525
+ sig do
526
+ override.returns(
527
+ {
528
+ amount: Integer,
529
+ type:
530
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type::TaggedSymbol
531
+ }
532
+ )
533
+ end
534
+ def to_hash
535
+ end
536
+
537
+ # Fixed contribution type.
538
+ module Type
539
+ extend FinchAPI::Internal::Type::Enum
540
+
541
+ TaggedSymbol =
542
+ T.type_alias do
543
+ T.all(
544
+ Symbol,
545
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type
546
+ )
547
+ end
548
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
549
+
550
+ FIXED =
551
+ T.let(
552
+ :fixed,
553
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type::TaggedSymbol
554
+ )
555
+
556
+ sig do
557
+ override.returns(
558
+ T::Array[
559
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember0::Type::TaggedSymbol
560
+ ]
561
+ )
562
+ end
563
+ def self.values
564
+ end
565
+ end
566
+ end
567
+
568
+ class UnionMember1 < FinchAPI::Internal::Type::BaseModel
569
+ OrHash =
570
+ T.type_alias do
571
+ T.any(
572
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1,
573
+ FinchAPI::Internal::AnyHash
574
+ )
575
+ end
576
+
577
+ # Contribution amount in basis points (1/100th of a percent).
578
+ sig { returns(Integer) }
579
+ attr_accessor :amount
580
+
581
+ # Percentage contribution type.
582
+ sig do
583
+ returns(
584
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type::TaggedSymbol
585
+ )
586
+ end
587
+ attr_accessor :type
588
+
589
+ sig do
590
+ params(
591
+ amount: Integer,
592
+ type:
593
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type::OrSymbol
594
+ ).returns(T.attached_class)
595
+ end
596
+ def self.new(
597
+ # Contribution amount in basis points (1/100th of a percent).
598
+ amount:,
599
+ # Percentage contribution type.
600
+ type:
601
+ )
602
+ end
603
+
604
+ sig do
605
+ override.returns(
606
+ {
607
+ amount: Integer,
608
+ type:
609
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type::TaggedSymbol
610
+ }
611
+ )
612
+ end
613
+ def to_hash
614
+ end
615
+
616
+ # Percentage contribution type.
617
+ module Type
618
+ extend FinchAPI::Internal::Type::Enum
619
+
620
+ TaggedSymbol =
621
+ T.type_alias do
622
+ T.all(
623
+ Symbol,
624
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type
625
+ )
626
+ end
627
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
628
+
629
+ PERCENT =
630
+ T.let(
631
+ :percent,
632
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type::TaggedSymbol
633
+ )
634
+
635
+ sig do
636
+ override.returns(
637
+ T::Array[
638
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::UnionMember1::Type::TaggedSymbol
639
+ ]
640
+ )
641
+ end
642
+ def self.values
643
+ end
644
+ end
645
+ end
646
+
647
+ sig do
648
+ override.returns(
649
+ T::Array[
650
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::EmployeeDeduction::Variants
651
+ ]
652
+ )
653
+ end
654
+ def self.variants
655
+ end
656
+ end
657
+
163
658
  # Type for HSA contribution limit if the benefit is a HSA.
164
659
  module HsaContributionLimit
165
660
  extend FinchAPI::Internal::Type::Enum