finch-api 0.1.0.pre.alpha.19 → 0.1.0.pre.alpha.20

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 (288) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +37 -0
  3. data/README.md +4 -4
  4. data/SECURITY.md +2 -2
  5. data/lib/finch_api/errors.rb +22 -0
  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/type/array_of.rb +14 -1
  9. data/lib/finch_api/internal/type/base_model.rb +84 -25
  10. data/lib/finch_api/internal/type/boolean.rb +15 -1
  11. data/lib/finch_api/internal/type/converter.rb +42 -34
  12. data/lib/finch_api/internal/type/enum.rb +25 -2
  13. data/lib/finch_api/internal/type/file_input.rb +13 -1
  14. data/lib/finch_api/internal/type/hash_of.rb +14 -1
  15. data/lib/finch_api/internal/type/union.rb +27 -7
  16. data/lib/finch_api/internal/type/unknown.rb +15 -1
  17. data/lib/finch_api/internal/util.rb +62 -10
  18. data/lib/finch_api/internal.rb +3 -0
  19. data/lib/finch_api/models/account_update_event.rb +110 -109
  20. data/lib/finch_api/models/base_webhook_event.rb +1 -1
  21. data/lib/finch_api/models/company_event.rb +2 -2
  22. data/lib/finch_api/models/connect/session_new_params.rb +12 -12
  23. data/lib/finch_api/models/connect/session_reauthenticate_params.rb +2 -2
  24. data/lib/finch_api/models/create_access_token_response.rb +7 -7
  25. data/lib/finch_api/models/directory_event.rb +4 -4
  26. data/lib/finch_api/models/employment_event.rb +4 -4
  27. data/lib/finch_api/models/hris/benefit_contribution.rb +3 -3
  28. data/lib/finch_api/models/hris/benefit_create_params.rb +11 -11
  29. data/lib/finch_api/models/hris/benefit_features_and_operations.rb +5 -120
  30. data/lib/finch_api/models/hris/benefit_type.rb +10 -10
  31. data/lib/finch_api/models/hris/benefits/individual_benefit.rb +11 -11
  32. data/lib/finch_api/models/hris/benefits/individual_enroll_many_params.rb +23 -23
  33. data/lib/finch_api/models/hris/benefits_support.rb +24 -24
  34. data/lib/finch_api/models/hris/company/pay_statement_item/rule_create_params.rb +11 -11
  35. data/lib/finch_api/models/hris/company/pay_statement_item_list_params.rb +2 -2
  36. data/lib/finch_api/models/hris/company/pay_statement_item_list_response.rb +18 -18
  37. data/lib/finch_api/models/hris/company.rb +23 -23
  38. data/lib/finch_api/models/hris/company_benefit.rb +12 -12
  39. data/lib/finch_api/models/hris/document_list_params.rb +2 -2
  40. data/lib/finch_api/models/hris/document_list_response.rb +4 -4
  41. data/lib/finch_api/models/hris/document_response.rb +4 -4
  42. data/lib/finch_api/models/hris/document_retreive_response.rb +1 -5
  43. data/lib/finch_api/models/hris/employment_data.rb +89 -100
  44. data/lib/finch_api/models/hris/employment_data_response.rb +2 -2
  45. data/lib/finch_api/models/hris/employment_retrieve_many_params.rb +4 -3
  46. data/lib/finch_api/models/hris/individual.rb +20 -26
  47. data/lib/finch_api/models/hris/individual_in_directory.rb +6 -6
  48. data/lib/finch_api/models/hris/individual_response.rb +2 -2
  49. data/lib/finch_api/models/hris/individual_retrieve_many_params.rb +4 -4
  50. data/lib/finch_api/models/hris/pay_statement.rb +184 -182
  51. data/lib/finch_api/models/hris/pay_statement_data_sync_in_progress.rb +76 -0
  52. data/lib/finch_api/models/hris/pay_statement_response.rb +50 -8
  53. data/lib/finch_api/models/hris/pay_statement_response_body.rb +27 -9
  54. data/lib/finch_api/models/hris/pay_statement_retrieve_many_params.rb +2 -2
  55. data/lib/finch_api/models/hris/payment.rb +37 -37
  56. data/lib/finch_api/models/hris/support_per_benefit_type.rb +4 -4
  57. data/lib/finch_api/models/hris/supported_benefit.rb +10 -9
  58. data/lib/finch_api/models/hris/w42005.rb +12 -12
  59. data/lib/finch_api/models/hris/w42020.rb +10 -10
  60. data/lib/finch_api/models/income.rb +8 -8
  61. data/lib/finch_api/models/individual_event.rb +4 -4
  62. data/lib/finch_api/models/introspection.rb +23 -23
  63. data/lib/finch_api/models/job_completion_event.rb +4 -4
  64. data/lib/finch_api/models/jobs/automated_async_job.rb +10 -10
  65. data/lib/finch_api/models/jobs/automated_create_params.rb +4 -4
  66. data/lib/finch_api/models/jobs/automated_list_response.rb +2 -2
  67. data/lib/finch_api/models/jobs/manual_async_job.rb +3 -3
  68. data/lib/finch_api/models/money.rb +4 -4
  69. data/lib/finch_api/models/operation_support_matrix.rb +9 -9
  70. data/lib/finch_api/models/pay_statement_event.rb +4 -4
  71. data/lib/finch_api/models/payment_event.rb +4 -4
  72. data/lib/finch_api/models/payroll/pay_group_list_response.rb +12 -12
  73. data/lib/finch_api/models/payroll/pay_group_retrieve_response.rb +5 -5
  74. data/lib/finch_api/models/provider.rb +104 -104
  75. data/lib/finch_api/models/sandbox/company_update_params.rb +21 -21
  76. data/lib/finch_api/models/sandbox/company_update_response.rb +2 -2
  77. data/lib/finch_api/models/sandbox/connection_create_params.rb +2 -2
  78. data/lib/finch_api/models/sandbox/connections/account_create_params.rb +2 -2
  79. data/lib/finch_api/models/sandbox/connections/account_update_params.rb +2 -2
  80. data/lib/finch_api/models/sandbox/directory_create_params.rb +49 -48
  81. data/lib/finch_api/models/sandbox/employment_update_params.rb +24 -23
  82. data/lib/finch_api/models/sandbox/employment_update_response.rb +6 -6
  83. data/lib/finch_api/models/sandbox/individual_update_params.rb +16 -16
  84. data/lib/finch_api/models/sandbox/individual_update_response.rb +2 -2
  85. data/lib/finch_api/models/sandbox/job_create_params.rb +2 -2
  86. data/lib/finch_api/models/sandbox/jobs/sandbox_job_configuration.rb +6 -6
  87. data/lib/finch_api/models/sandbox/payment_create_params.rb +160 -367
  88. data/lib/finch_api/models/webhook_event.rb +1 -16
  89. data/lib/finch_api/models.rb +30 -19
  90. data/lib/finch_api/resources/access_tokens.rb +1 -1
  91. data/lib/finch_api/resources/account.rb +2 -2
  92. data/lib/finch_api/resources/connect/sessions.rb +5 -5
  93. data/lib/finch_api/resources/hris/benefits/individuals.rb +4 -4
  94. data/lib/finch_api/resources/hris/benefits.rb +9 -9
  95. data/lib/finch_api/resources/hris/company/pay_statement_item/rules.rb +3 -3
  96. data/lib/finch_api/resources/hris/company/pay_statement_item.rb +1 -1
  97. data/lib/finch_api/resources/hris/company.rb +1 -1
  98. data/lib/finch_api/resources/hris/directory.rb +1 -1
  99. data/lib/finch_api/resources/hris/documents.rb +2 -2
  100. data/lib/finch_api/resources/hris/employments.rb +2 -2
  101. data/lib/finch_api/resources/hris/individuals.rb +3 -3
  102. data/lib/finch_api/resources/hris/pay_statements.rb +2 -2
  103. data/lib/finch_api/resources/hris/payments.rb +1 -1
  104. data/lib/finch_api/resources/jobs/automated.rb +3 -3
  105. data/lib/finch_api/resources/jobs/manual.rb +1 -1
  106. data/lib/finch_api/resources/providers.rb +1 -1
  107. data/lib/finch_api/resources/sandbox/company.rb +4 -4
  108. data/lib/finch_api/resources/sandbox/connections/accounts.rb +2 -2
  109. data/lib/finch_api/resources/sandbox/connections.rb +1 -1
  110. data/lib/finch_api/resources/sandbox/directory.rb +1 -1
  111. data/lib/finch_api/resources/sandbox/employment.rb +8 -8
  112. data/lib/finch_api/resources/sandbox/individual.rb +5 -5
  113. data/lib/finch_api/resources/sandbox/jobs/configuration.rb +4 -4
  114. data/lib/finch_api/resources/sandbox/jobs.rb +1 -1
  115. data/lib/finch_api/resources/sandbox/payment.rb +6 -3
  116. data/lib/finch_api/version.rb +1 -1
  117. data/lib/finch_api.rb +4 -2
  118. data/rbi/finch_api/errors.rbi +16 -0
  119. data/rbi/finch_api/internal/type/array_of.rbi +6 -0
  120. data/rbi/finch_api/internal/type/base_model.rbi +5 -0
  121. data/rbi/finch_api/internal/type/boolean.rbi +8 -0
  122. data/rbi/finch_api/internal/type/converter.rbi +15 -15
  123. data/rbi/finch_api/internal/type/enum.rbi +5 -0
  124. data/rbi/finch_api/internal/type/file_input.rbi +5 -0
  125. data/rbi/finch_api/internal/type/hash_of.rbi +6 -0
  126. data/rbi/finch_api/internal/type/union.rbi +10 -0
  127. data/rbi/finch_api/internal/type/unknown.rbi +8 -0
  128. data/rbi/finch_api/internal/util.rbi +36 -0
  129. data/rbi/finch_api/internal.rbi +3 -0
  130. data/rbi/finch_api/models/connect/session_new_params.rbi +4 -4
  131. data/rbi/finch_api/models/hris/benefit_features_and_operations.rbi +4 -296
  132. data/rbi/finch_api/models/hris/benefit_type.rbi +16 -16
  133. data/rbi/finch_api/models/hris/company/pay_statement_item_list_response.rbi +18 -33
  134. data/rbi/finch_api/models/hris/employment_data.rbi +123 -141
  135. data/rbi/finch_api/models/hris/employment_data_response.rbi +2 -13
  136. data/rbi/finch_api/models/hris/individual_response.rbi +2 -13
  137. data/rbi/finch_api/models/hris/pay_statement.rbi +275 -307
  138. data/rbi/finch_api/models/hris/pay_statement_data_sync_in_progress.rbi +188 -0
  139. data/rbi/finch_api/models/hris/pay_statement_response.rbi +84 -20
  140. data/rbi/finch_api/models/hris/pay_statement_response_body.rbi +45 -17
  141. data/rbi/finch_api/models/hris/payment.rbi +27 -30
  142. data/rbi/finch_api/models/hris/supported_benefit.rbi +12 -8
  143. data/rbi/finch_api/models/income.rbi +3 -3
  144. data/rbi/finch_api/models/money.rbi +4 -7
  145. data/rbi/finch_api/models/payroll/pay_group_list_response.rbi +25 -43
  146. data/rbi/finch_api/models/payroll/pay_group_retrieve_response.rbi +14 -14
  147. data/rbi/finch_api/models/sandbox/payment_create_params.rbi +463 -727
  148. data/rbi/finch_api/resources/connect/sessions.rbi +2 -2
  149. data/rbi/finch_api/resources/hris/benefits.rbi +1 -3
  150. data/rbi/finch_api/resources/hris/documents.rbi +1 -1
  151. data/rbi/finch_api/resources/sandbox/payment.rbi +3 -2
  152. data/sig/finch_api/errors.rbs +9 -0
  153. data/sig/finch_api/internal/type/array_of.rbs +3 -0
  154. data/sig/finch_api/internal/type/base_model.rbs +2 -0
  155. data/sig/finch_api/internal/type/boolean.rbs +3 -0
  156. data/sig/finch_api/internal/type/converter.rbs +7 -1
  157. data/sig/finch_api/internal/type/enum.rbs +2 -0
  158. data/sig/finch_api/internal/type/file_input.rbs +2 -0
  159. data/sig/finch_api/internal/type/hash_of.rbs +3 -0
  160. data/sig/finch_api/internal/type/union.rbs +2 -0
  161. data/sig/finch_api/internal/type/unknown.rbs +3 -0
  162. data/sig/finch_api/internal/util.rbs +12 -0
  163. data/sig/finch_api/internal.rbs +2 -0
  164. data/sig/finch_api/models/access_token_create_params.rbs +8 -0
  165. data/sig/finch_api/models/account_disconnect_params.rbs +2 -0
  166. data/sig/finch_api/models/account_introspect_params.rbs +2 -0
  167. data/sig/finch_api/models/account_update_event.rbs +230 -12
  168. data/sig/finch_api/models/base_webhook_event.rbs +6 -0
  169. data/sig/finch_api/models/company_event.rbs +11 -6
  170. data/sig/finch_api/models/connect/session_new_params.rbs +26 -8
  171. data/sig/finch_api/models/connect/session_new_response.rbs +2 -0
  172. data/sig/finch_api/models/connect/session_reauthenticate_params.rbs +12 -4
  173. data/sig/finch_api/models/connect/session_reauthenticate_response.rbs +2 -0
  174. data/sig/finch_api/models/create_access_token_response.rbs +21 -8
  175. data/sig/finch_api/models/directory_event.rbs +13 -6
  176. data/sig/finch_api/models/disconnect_response.rbs +2 -0
  177. data/sig/finch_api/models/employment_event.rbs +13 -6
  178. data/sig/finch_api/models/hris/benefit_contribution.rbs +12 -4
  179. data/sig/finch_api/models/hris/benefit_create_params.rbs +21 -6
  180. data/sig/finch_api/models/hris/benefit_features_and_operations.rbs +9 -78
  181. data/sig/finch_api/models/hris/benefit_list_params.rbs +2 -0
  182. data/sig/finch_api/models/hris/benefit_list_supported_benefits_params.rbs +2 -0
  183. data/sig/finch_api/models/hris/benefit_retrieve_params.rbs +2 -0
  184. data/sig/finch_api/models/hris/benefit_type.rbs +21 -21
  185. data/sig/finch_api/models/hris/benefit_update_params.rbs +5 -0
  186. data/sig/finch_api/models/hris/benefits/enrolled_individual_benefit_response.rbs +2 -0
  187. data/sig/finch_api/models/hris/benefits/individual_benefit.rbs +18 -4
  188. data/sig/finch_api/models/hris/benefits/individual_enroll_many_params.rbs +47 -18
  189. data/sig/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbs +2 -0
  190. data/sig/finch_api/models/hris/benefits/individual_enrolled_ids_response.rbs +5 -0
  191. data/sig/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +5 -0
  192. data/sig/finch_api/models/hris/benefits/individual_unenroll_many_params.rbs +5 -0
  193. data/sig/finch_api/models/hris/benefits/unenrolled_individual_benefit_response.rbs +2 -0
  194. data/sig/finch_api/models/hris/benefits_support.rbs +15 -0
  195. data/sig/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbs +23 -6
  196. data/sig/finch_api/models/hris/company/pay_statement_item/rule_create_response.rbs +20 -0
  197. data/sig/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbs +2 -0
  198. data/sig/finch_api/models/hris/company/pay_statement_item/rule_delete_response.rbs +21 -0
  199. data/sig/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbs +2 -0
  200. data/sig/finch_api/models/hris/company/pay_statement_item/rule_list_response.rbs +20 -0
  201. data/sig/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbs +5 -0
  202. data/sig/finch_api/models/hris/company/pay_statement_item/rule_update_response.rbs +20 -0
  203. data/sig/finch_api/models/hris/company/pay_statement_item_list_params.rbs +15 -6
  204. data/sig/finch_api/models/hris/company/pay_statement_item_list_response.rbs +23 -20
  205. data/sig/finch_api/models/hris/company.rbs +44 -12
  206. data/sig/finch_api/models/hris/company_benefit.rbs +21 -6
  207. data/sig/finch_api/models/hris/company_retrieve_params.rbs +2 -0
  208. data/sig/finch_api/models/hris/create_company_benefits_response.rbs +2 -0
  209. data/sig/finch_api/models/hris/directory_list_individuals_params.rbs +6 -0
  210. data/sig/finch_api/models/hris/directory_list_params.rbs +6 -0
  211. data/sig/finch_api/models/hris/document_list_params.rbs +14 -6
  212. data/sig/finch_api/models/hris/document_list_response.rbs +5 -0
  213. data/sig/finch_api/models/hris/document_response.rbs +14 -6
  214. data/sig/finch_api/models/hris/document_retreive_params.rbs +2 -0
  215. data/sig/finch_api/models/hris/employment_data.rbs +91 -47
  216. data/sig/finch_api/models/hris/employment_data_response.rbs +6 -0
  217. data/sig/finch_api/models/hris/employment_retrieve_many_params.rbs +7 -0
  218. data/sig/finch_api/models/hris/individual.rbs +49 -16
  219. data/sig/finch_api/models/hris/individual_in_directory.rbs +14 -0
  220. data/sig/finch_api/models/hris/individual_response.rbs +6 -0
  221. data/sig/finch_api/models/hris/individual_retrieve_many_params.rbs +10 -0
  222. data/sig/finch_api/models/hris/pay_statement.rbs +179 -133
  223. data/sig/finch_api/models/hris/pay_statement_data_sync_in_progress.rbs +78 -0
  224. data/sig/finch_api/models/hris/pay_statement_response.rbs +51 -13
  225. data/sig/finch_api/models/hris/pay_statement_response_body.rbs +24 -11
  226. data/sig/finch_api/models/hris/pay_statement_retrieve_many_params.rbs +11 -0
  227. data/sig/finch_api/models/hris/payment.rbs +44 -29
  228. data/sig/finch_api/models/hris/payment_list_params.rbs +6 -0
  229. data/sig/finch_api/models/hris/support_per_benefit_type.rbs +5 -0
  230. data/sig/finch_api/models/hris/supported_benefit.rbs +22 -12
  231. data/sig/finch_api/models/hris/update_company_benefit_response.rbs +2 -0
  232. data/sig/finch_api/models/hris/w42005.rbs +30 -16
  233. data/sig/finch_api/models/hris/w42020.rbs +27 -10
  234. data/sig/finch_api/models/income.rbs +14 -7
  235. data/sig/finch_api/models/individual_event.rbs +13 -6
  236. data/sig/finch_api/models/introspection.rbs +51 -14
  237. data/sig/finch_api/models/job_completion_event.rbs +13 -6
  238. data/sig/finch_api/models/jobs/automated_async_job.rbs +22 -8
  239. data/sig/finch_api/models/jobs/automated_create_params.rbs +8 -0
  240. data/sig/finch_api/models/jobs/automated_create_response.rbs +7 -0
  241. data/sig/finch_api/models/jobs/automated_list_params.rbs +6 -0
  242. data/sig/finch_api/models/jobs/automated_list_response.rbs +18 -0
  243. data/sig/finch_api/models/jobs/automated_retrieve_params.rbs +2 -0
  244. data/sig/finch_api/models/jobs/manual_async_job.rbs +10 -4
  245. data/sig/finch_api/models/jobs/manual_retrieve_params.rbs +2 -0
  246. data/sig/finch_api/models/location.rbs +11 -0
  247. data/sig/finch_api/models/money.rbs +3 -3
  248. data/sig/finch_api/models/operation_support_matrix.rbs +7 -0
  249. data/sig/finch_api/models/paging.rbs +2 -0
  250. data/sig/finch_api/models/pay_statement_event.rbs +13 -6
  251. data/sig/finch_api/models/payment_event.rbs +13 -6
  252. data/sig/finch_api/models/payroll/pay_group_list_params.rbs +6 -0
  253. data/sig/finch_api/models/payroll/pay_group_list_response.rbs +22 -24
  254. data/sig/finch_api/models/payroll/pay_group_retrieve_params.rbs +2 -0
  255. data/sig/finch_api/models/payroll/pay_group_retrieve_response.rbs +17 -10
  256. data/sig/finch_api/models/provider.rbs +227 -6
  257. data/sig/finch_api/models/provider_list_params.rbs +2 -0
  258. data/sig/finch_api/models/request_forwarding_forward_params.rbs +9 -0
  259. data/sig/finch_api/models/request_forwarding_forward_response.rbs +15 -0
  260. data/sig/finch_api/models/sandbox/company_update_params.rbs +44 -12
  261. data/sig/finch_api/models/sandbox/company_update_response.rbs +31 -0
  262. data/sig/finch_api/models/sandbox/connection_create_params.rbs +8 -0
  263. data/sig/finch_api/models/sandbox/connection_create_response.rbs +11 -0
  264. data/sig/finch_api/models/sandbox/connections/account_create_params.rbs +8 -0
  265. data/sig/finch_api/models/sandbox/connections/account_create_response.rbs +10 -0
  266. data/sig/finch_api/models/sandbox/connections/account_update_params.rbs +5 -0
  267. data/sig/finch_api/models/sandbox/connections/account_update_response.rbs +9 -0
  268. data/sig/finch_api/models/sandbox/directory_create_params.rbs +84 -28
  269. data/sig/finch_api/models/sandbox/employment_update_params.rbs +41 -8
  270. data/sig/finch_api/models/sandbox/employment_update_response.rbs +33 -0
  271. data/sig/finch_api/models/sandbox/individual_update_params.rbs +34 -8
  272. data/sig/finch_api/models/sandbox/individual_update_response.rbs +26 -0
  273. data/sig/finch_api/models/sandbox/job_create_params.rbs +5 -0
  274. data/sig/finch_api/models/sandbox/job_create_response.rbs +7 -0
  275. data/sig/finch_api/models/sandbox/jobs/configuration_retrieve_params.rbs +2 -0
  276. data/sig/finch_api/models/sandbox/jobs/configuration_update_params.rbs +2 -0
  277. data/sig/finch_api/models/sandbox/jobs/sandbox_job_configuration.rbs +13 -8
  278. data/sig/finch_api/models/sandbox/payment_create_params.rbs +287 -228
  279. data/sig/finch_api/models/sandbox/payment_create_response.rbs +2 -0
  280. data/sig/finch_api/resources/connect/sessions.rbs +2 -2
  281. data/sig/finch_api/resources/hris/benefits.rbs +1 -1
  282. data/sig/finch_api/resources/hris/company/pay_statement_item.rbs +1 -1
  283. data/sig/finch_api/resources/hris/documents.rbs +1 -1
  284. data/sig/finch_api/resources/sandbox/payment.rbs +2 -2
  285. metadata +5 -5
  286. data/lib/finch_api/models/hris/benefit_list_supported_benefits_response.rb +0 -110
  287. data/rbi/finch_api/models/hris/benefit_list_supported_benefits_response.rbi +0 -290
  288. data/sig/finch_api/models/hris/benefit_list_supported_benefits_response.rbs +0 -79
@@ -12,19 +12,12 @@ module FinchAPI
12
12
  )
13
13
  end
14
14
 
15
- sig do
16
- returns(
17
- T.nilable(
18
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures
19
- )
20
- )
21
- end
15
+ sig { returns(T.nilable(FinchAPI::HRIS::SupportedBenefit)) }
22
16
  attr_reader :supported_features
23
17
 
24
18
  sig do
25
19
  params(
26
- supported_features:
27
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::OrHash
20
+ supported_features: FinchAPI::HRIS::SupportedBenefit::OrHash
28
21
  ).void
29
22
  end
30
23
  attr_writer :supported_features
@@ -41,8 +34,7 @@ module FinchAPI
41
34
 
42
35
  sig do
43
36
  params(
44
- supported_features:
45
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::OrHash,
37
+ supported_features: FinchAPI::HRIS::SupportedBenefit::OrHash,
46
38
  supported_operations: FinchAPI::HRIS::SupportPerBenefitType::OrHash
47
39
  ).returns(T.attached_class)
48
40
  end
@@ -52,297 +44,13 @@ module FinchAPI
52
44
  sig do
53
45
  override.returns(
54
46
  {
55
- supported_features:
56
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures,
47
+ supported_features: FinchAPI::HRIS::SupportedBenefit,
57
48
  supported_operations: FinchAPI::HRIS::SupportPerBenefitType
58
49
  }
59
50
  )
60
51
  end
61
52
  def to_hash
62
53
  end
63
-
64
- class SupportedFeatures < FinchAPI::Internal::Type::BaseModel
65
- OrHash =
66
- T.type_alias do
67
- T.any(
68
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures,
69
- FinchAPI::Internal::AnyHash
70
- )
71
- end
72
-
73
- # Whether the provider supports an annual maximum for this benefit.
74
- sig { returns(T.nilable(T::Boolean)) }
75
- attr_accessor :annual_maximum
76
-
77
- # Whether the provider supports catch up for this benefit. This field will only be
78
- # true for retirement benefits.
79
- sig { returns(T.nilable(T::Boolean)) }
80
- attr_accessor :catch_up
81
-
82
- # Supported contribution types. An empty array indicates contributions are not
83
- # supported.
84
- sig do
85
- returns(
86
- T.nilable(
87
- T::Array[
88
- T.nilable(
89
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::TaggedSymbol
90
- )
91
- ]
92
- )
93
- )
94
- end
95
- attr_accessor :company_contribution
96
-
97
- sig { returns(T.nilable(String)) }
98
- attr_accessor :description
99
-
100
- # Supported deduction types. An empty array indicates deductions are not
101
- # supported.
102
- sig do
103
- returns(
104
- T.nilable(
105
- T::Array[
106
- T.nilable(
107
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::TaggedSymbol
108
- )
109
- ]
110
- )
111
- )
112
- end
113
- attr_accessor :employee_deduction
114
-
115
- # The list of frequencies supported by the provider for this benefit
116
- sig do
117
- returns(
118
- T.nilable(
119
- T::Array[
120
- T.nilable(FinchAPI::HRIS::BenefitFrequency::TaggedSymbol)
121
- ]
122
- )
123
- )
124
- end
125
- attr_reader :frequencies
126
-
127
- sig do
128
- params(
129
- frequencies:
130
- T::Array[T.nilable(FinchAPI::HRIS::BenefitFrequency::OrSymbol)]
131
- ).void
132
- end
133
- attr_writer :frequencies
134
-
135
- # Whether the provider supports HSA contribution limits. Empty if this feature is
136
- # not supported for the benefit. This array only has values for HSA benefits.
137
- sig do
138
- returns(
139
- T.nilable(
140
- T::Array[
141
- T.nilable(
142
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::TaggedSymbol
143
- )
144
- ]
145
- )
146
- )
147
- end
148
- attr_accessor :hsa_contribution_limit
149
-
150
- sig do
151
- params(
152
- annual_maximum: T.nilable(T::Boolean),
153
- catch_up: T.nilable(T::Boolean),
154
- company_contribution:
155
- T.nilable(
156
- T::Array[
157
- T.nilable(
158
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::OrSymbol
159
- )
160
- ]
161
- ),
162
- description: T.nilable(String),
163
- employee_deduction:
164
- T.nilable(
165
- T::Array[
166
- T.nilable(
167
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::OrSymbol
168
- )
169
- ]
170
- ),
171
- frequencies:
172
- T::Array[T.nilable(FinchAPI::HRIS::BenefitFrequency::OrSymbol)],
173
- hsa_contribution_limit:
174
- T.nilable(
175
- T::Array[
176
- T.nilable(
177
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::OrSymbol
178
- )
179
- ]
180
- )
181
- ).returns(T.attached_class)
182
- end
183
- def self.new(
184
- # Whether the provider supports an annual maximum for this benefit.
185
- annual_maximum: nil,
186
- # Whether the provider supports catch up for this benefit. This field will only be
187
- # true for retirement benefits.
188
- catch_up: nil,
189
- # Supported contribution types. An empty array indicates contributions are not
190
- # supported.
191
- company_contribution: nil,
192
- description: nil,
193
- # Supported deduction types. An empty array indicates deductions are not
194
- # supported.
195
- employee_deduction: nil,
196
- # The list of frequencies supported by the provider for this benefit
197
- frequencies: nil,
198
- # Whether the provider supports HSA contribution limits. Empty if this feature is
199
- # not supported for the benefit. This array only has values for HSA benefits.
200
- hsa_contribution_limit: nil
201
- )
202
- end
203
-
204
- sig do
205
- override.returns(
206
- {
207
- annual_maximum: T.nilable(T::Boolean),
208
- catch_up: T.nilable(T::Boolean),
209
- company_contribution:
210
- T.nilable(
211
- T::Array[
212
- T.nilable(
213
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::TaggedSymbol
214
- )
215
- ]
216
- ),
217
- description: T.nilable(String),
218
- employee_deduction:
219
- T.nilable(
220
- T::Array[
221
- T.nilable(
222
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::TaggedSymbol
223
- )
224
- ]
225
- ),
226
- frequencies:
227
- T::Array[
228
- T.nilable(FinchAPI::HRIS::BenefitFrequency::TaggedSymbol)
229
- ],
230
- hsa_contribution_limit:
231
- T.nilable(
232
- T::Array[
233
- T.nilable(
234
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::TaggedSymbol
235
- )
236
- ]
237
- )
238
- }
239
- )
240
- end
241
- def to_hash
242
- end
243
-
244
- module CompanyContribution
245
- extend FinchAPI::Internal::Type::Enum
246
-
247
- TaggedSymbol =
248
- T.type_alias do
249
- T.all(
250
- Symbol,
251
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution
252
- )
253
- end
254
- OrSymbol = T.type_alias { T.any(Symbol, String) }
255
-
256
- FIXED =
257
- T.let(
258
- :fixed,
259
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::TaggedSymbol
260
- )
261
- PERCENT =
262
- T.let(
263
- :percent,
264
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::TaggedSymbol
265
- )
266
-
267
- sig do
268
- override.returns(
269
- T::Array[
270
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::CompanyContribution::TaggedSymbol
271
- ]
272
- )
273
- end
274
- def self.values
275
- end
276
- end
277
-
278
- module EmployeeDeduction
279
- extend FinchAPI::Internal::Type::Enum
280
-
281
- TaggedSymbol =
282
- T.type_alias do
283
- T.all(
284
- Symbol,
285
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction
286
- )
287
- end
288
- OrSymbol = T.type_alias { T.any(Symbol, String) }
289
-
290
- FIXED =
291
- T.let(
292
- :fixed,
293
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::TaggedSymbol
294
- )
295
- PERCENT =
296
- T.let(
297
- :percent,
298
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::TaggedSymbol
299
- )
300
-
301
- sig do
302
- override.returns(
303
- T::Array[
304
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::EmployeeDeduction::TaggedSymbol
305
- ]
306
- )
307
- end
308
- def self.values
309
- end
310
- end
311
-
312
- module HsaContributionLimit
313
- extend FinchAPI::Internal::Type::Enum
314
-
315
- TaggedSymbol =
316
- T.type_alias do
317
- T.all(
318
- Symbol,
319
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit
320
- )
321
- end
322
- OrSymbol = T.type_alias { T.any(Symbol, String) }
323
-
324
- INDIVIDUAL =
325
- T.let(
326
- :individual,
327
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::TaggedSymbol
328
- )
329
- FAMILY =
330
- T.let(
331
- :family,
332
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::TaggedSymbol
333
- )
334
-
335
- sig do
336
- override.returns(
337
- T::Array[
338
- FinchAPI::HRIS::BenefitFeaturesAndOperations::SupportedFeatures::HsaContributionLimit::TaggedSymbol
339
- ]
340
- )
341
- end
342
- def self.values
343
- end
344
- end
345
- end
346
54
  end
347
55
  end
348
56
  end
@@ -11,6 +11,8 @@ module FinchAPI
11
11
  T.type_alias { T.all(Symbol, FinchAPI::HRIS::BenefitType) }
12
12
  OrSymbol = T.type_alias { T.any(Symbol, String) }
13
13
 
14
+ BENEFIT_TYPE_457 =
15
+ T.let(:"457", FinchAPI::HRIS::BenefitType::TaggedSymbol)
14
16
  BENEFIT_TYPE_401K =
15
17
  T.let(:"401k", FinchAPI::HRIS::BenefitType::TaggedSymbol)
16
18
  BENEFIT_TYPE_401K_ROTH =
@@ -21,30 +23,28 @@ module FinchAPI
21
23
  T.let(:"403b", FinchAPI::HRIS::BenefitType::TaggedSymbol)
22
24
  BENEFIT_TYPE_403B_ROTH =
23
25
  T.let(:"403b_roth", FinchAPI::HRIS::BenefitType::TaggedSymbol)
24
- BENEFIT_TYPE_457 =
25
- T.let(:"457", FinchAPI::HRIS::BenefitType::TaggedSymbol)
26
26
  BENEFIT_TYPE_457_ROTH =
27
27
  T.let(:"457_roth", FinchAPI::HRIS::BenefitType::TaggedSymbol)
28
- S125_MEDICAL =
29
- T.let(:s125_medical, FinchAPI::HRIS::BenefitType::TaggedSymbol)
28
+ COMMUTER = T.let(:commuter, FinchAPI::HRIS::BenefitType::TaggedSymbol)
29
+ CUSTOM_POST_TAX =
30
+ T.let(:custom_post_tax, FinchAPI::HRIS::BenefitType::TaggedSymbol)
31
+ CUSTOM_PRE_TAX =
32
+ T.let(:custom_pre_tax, FinchAPI::HRIS::BenefitType::TaggedSymbol)
33
+ FSA_DEPENDENT_CARE =
34
+ T.let(:fsa_dependent_care, FinchAPI::HRIS::BenefitType::TaggedSymbol)
35
+ FSA_MEDICAL =
36
+ T.let(:fsa_medical, FinchAPI::HRIS::BenefitType::TaggedSymbol)
37
+ HSA_POST = T.let(:hsa_post, FinchAPI::HRIS::BenefitType::TaggedSymbol)
38
+ HSA_PRE = T.let(:hsa_pre, FinchAPI::HRIS::BenefitType::TaggedSymbol)
30
39
  S125_DENTAL =
31
40
  T.let(:s125_dental, FinchAPI::HRIS::BenefitType::TaggedSymbol)
41
+ S125_MEDICAL =
42
+ T.let(:s125_medical, FinchAPI::HRIS::BenefitType::TaggedSymbol)
32
43
  S125_VISION =
33
44
  T.let(:s125_vision, FinchAPI::HRIS::BenefitType::TaggedSymbol)
34
- HSA_PRE = T.let(:hsa_pre, FinchAPI::HRIS::BenefitType::TaggedSymbol)
35
- HSA_POST = T.let(:hsa_post, FinchAPI::HRIS::BenefitType::TaggedSymbol)
36
- FSA_MEDICAL =
37
- T.let(:fsa_medical, FinchAPI::HRIS::BenefitType::TaggedSymbol)
38
- FSA_DEPENDENT_CARE =
39
- T.let(:fsa_dependent_care, FinchAPI::HRIS::BenefitType::TaggedSymbol)
45
+ SIMPLE = T.let(:simple, FinchAPI::HRIS::BenefitType::TaggedSymbol)
40
46
  SIMPLE_IRA =
41
47
  T.let(:simple_ira, FinchAPI::HRIS::BenefitType::TaggedSymbol)
42
- SIMPLE = T.let(:simple, FinchAPI::HRIS::BenefitType::TaggedSymbol)
43
- COMMUTER = T.let(:commuter, FinchAPI::HRIS::BenefitType::TaggedSymbol)
44
- CUSTOM_POST_TAX =
45
- T.let(:custom_post_tax, FinchAPI::HRIS::BenefitType::TaggedSymbol)
46
- CUSTOM_PRE_TAX =
47
- T.let(:custom_pre_tax, FinchAPI::HRIS::BenefitType::TaggedSymbol)
48
48
 
49
49
  sig do
50
50
  override.returns(T::Array[FinchAPI::HRIS::BenefitType::TaggedSymbol])
@@ -16,9 +16,7 @@ module FinchAPI
16
16
  # The attributes of the pay statement item.
17
17
  sig do
18
18
  returns(
19
- T.nilable(
20
- FinchAPI::Models::HRIS::Company::PayStatementItemListResponse::Attributes
21
- )
19
+ FinchAPI::Models::HRIS::Company::PayStatementItemListResponse::Attributes
22
20
  )
23
21
  end
24
22
  attr_reader :attributes
@@ -34,27 +32,14 @@ module FinchAPI
34
32
  # The category of the pay statement item.
35
33
  sig do
36
34
  returns(
37
- T.nilable(
38
- FinchAPI::Models::HRIS::Company::PayStatementItemListResponse::Category::TaggedSymbol
39
- )
35
+ FinchAPI::Models::HRIS::Company::PayStatementItemListResponse::Category::TaggedSymbol
40
36
  )
41
37
  end
42
- attr_reader :category
43
-
44
- sig do
45
- params(
46
- category:
47
- FinchAPI::Models::HRIS::Company::PayStatementItemListResponse::Category::OrSymbol
48
- ).void
49
- end
50
- attr_writer :category
38
+ attr_accessor :category
51
39
 
52
40
  # The name of the pay statement item.
53
- sig { returns(T.nilable(String)) }
54
- attr_reader :name
55
-
56
- sig { params(name: String).void }
57
- attr_writer :name
41
+ sig { returns(String) }
42
+ attr_accessor :name
58
43
 
59
44
  sig do
60
45
  params(
@@ -67,11 +52,11 @@ module FinchAPI
67
52
  end
68
53
  def self.new(
69
54
  # The attributes of the pay statement item.
70
- attributes: nil,
55
+ attributes:,
71
56
  # The category of the pay statement item.
72
- category: nil,
57
+ category:,
73
58
  # The name of the pay statement item.
74
- name: nil
59
+ name:
75
60
  )
76
61
  end
77
62
 
@@ -98,16 +83,16 @@ module FinchAPI
98
83
  )
99
84
  end
100
85
 
101
- # `true` if the amount is paid by the employers. This field is only available for
102
- # taxes.
103
- sig { returns(T.nilable(T::Boolean)) }
104
- attr_accessor :employer
105
-
106
86
  # The metadata of the pay statement item derived by the rules engine if available.
107
87
  # Each attribute will be a key-value pair defined by a rule.
108
88
  sig { returns(T.nilable(T::Hash[Symbol, T.nilable(T.anything)])) }
109
89
  attr_accessor :metadata
110
90
 
91
+ # `true` if the amount is paid by the employers. This field is only available for
92
+ # taxes.
93
+ sig { returns(T.nilable(T::Boolean)) }
94
+ attr_accessor :employer
95
+
111
96
  # `true` if the pay statement item is pre-tax. This field is only available for
112
97
  # employee deductions.
113
98
  sig { returns(T.nilable(T::Boolean)) }
@@ -120,19 +105,19 @@ module FinchAPI
120
105
  # The attributes of the pay statement item.
121
106
  sig do
122
107
  params(
123
- employer: T.nilable(T::Boolean),
124
108
  metadata: T.nilable(T::Hash[Symbol, T.nilable(T.anything)]),
109
+ employer: T.nilable(T::Boolean),
125
110
  pre_tax: T.nilable(T::Boolean),
126
111
  type: T.nilable(String)
127
112
  ).returns(T.attached_class)
128
113
  end
129
114
  def self.new(
115
+ # The metadata of the pay statement item derived by the rules engine if available.
116
+ # Each attribute will be a key-value pair defined by a rule.
117
+ metadata:,
130
118
  # `true` if the amount is paid by the employers. This field is only available for
131
119
  # taxes.
132
120
  employer: nil,
133
- # The metadata of the pay statement item derived by the rules engine if available.
134
- # Each attribute will be a key-value pair defined by a rule.
135
- metadata: nil,
136
121
  # `true` if the pay statement item is pre-tax. This field is only available for
137
122
  # employee deductions.
138
123
  pre_tax: nil,
@@ -144,8 +129,8 @@ module FinchAPI
144
129
  sig do
145
130
  override.returns(
146
131
  {
147
- employer: T.nilable(T::Boolean),
148
132
  metadata: T.nilable(T::Hash[Symbol, T.nilable(T.anything)]),
133
+ employer: T.nilable(T::Boolean),
149
134
  pre_tax: T.nilable(T::Boolean),
150
135
  type: T.nilable(String)
151
136
  }