finch-api 0.1.0.pre.alpha.1

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 (479) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +124 -0
  3. data/lib/finch-api/base_client.rb +464 -0
  4. data/lib/finch-api/base_model.rb +1188 -0
  5. data/lib/finch-api/base_page.rb +40 -0
  6. data/lib/finch-api/client.rb +145 -0
  7. data/lib/finch-api/errors.rb +188 -0
  8. data/lib/finch-api/extern.rb +10 -0
  9. data/lib/finch-api/individuals_page.rb +98 -0
  10. data/lib/finch-api/models/access_token_create_params.rb +54 -0
  11. data/lib/finch-api/models/account_disconnect_params.rb +18 -0
  12. data/lib/finch-api/models/account_introspect_params.rb +18 -0
  13. data/lib/finch-api/models/account_update_event.rb +1978 -0
  14. data/lib/finch-api/models/base_webhook_event.rb +41 -0
  15. data/lib/finch-api/models/company_event.rb +49 -0
  16. data/lib/finch-api/models/connect/session_new_params.rb +203 -0
  17. data/lib/finch-api/models/connect/session_new_response.rb +29 -0
  18. data/lib/finch-api/models/connect/session_reauthenticate_params.rb +90 -0
  19. data/lib/finch-api/models/connect/session_reauthenticate_response.rb +29 -0
  20. data/lib/finch-api/models/connection_status_type.rb +40 -0
  21. data/lib/finch-api/models/create_access_token_response.rb +163 -0
  22. data/lib/finch-api/models/directory_event.rb +78 -0
  23. data/lib/finch-api/models/disconnect_response.rb +20 -0
  24. data/lib/finch-api/models/employment_event.rb +78 -0
  25. data/lib/finch-api/models/hris/benefit_contribution.rb +54 -0
  26. data/lib/finch-api/models/hris/benefit_create_params.rb +46 -0
  27. data/lib/finch-api/models/hris/benefit_features_and_operations.rb +199 -0
  28. data/lib/finch-api/models/hris/benefit_frequency.rb +33 -0
  29. data/lib/finch-api/models/hris/benefit_list_params.rb +20 -0
  30. data/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rb +20 -0
  31. data/lib/finch-api/models/hris/benefit_retrieve_params.rb +20 -0
  32. data/lib/finch-api/models/hris/benefit_type.rb +57 -0
  33. data/lib/finch-api/models/hris/benefit_update_params.rb +31 -0
  34. data/lib/finch-api/models/hris/benefits/enrolled_individual.rb +108 -0
  35. data/lib/finch-api/models/hris/benefits/individual_benefit.rb +127 -0
  36. data/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rb +268 -0
  37. data/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rb +22 -0
  38. data/lib/finch-api/models/hris/benefits/individual_enrolled_ids_response.rb +29 -0
  39. data/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rb +34 -0
  40. data/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rb +33 -0
  41. data/lib/finch-api/models/hris/benefits/unenrolled_individual.rb +77 -0
  42. data/lib/finch-api/models/hris/benefits_support.rb +106 -0
  43. data/lib/finch-api/models/hris/benfit_contribution.rb +9 -0
  44. data/lib/finch-api/models/hris/company.rb +290 -0
  45. data/lib/finch-api/models/hris/company_benefit.rb +40 -0
  46. data/lib/finch-api/models/hris/company_retrieve_params.rb +20 -0
  47. data/lib/finch-api/models/hris/create_company_benefits_response.rb +21 -0
  48. data/lib/finch-api/models/hris/directory_list_individuals_params.rb +42 -0
  49. data/lib/finch-api/models/hris/directory_list_params.rb +42 -0
  50. data/lib/finch-api/models/hris/document_list_params.rb +89 -0
  51. data/lib/finch-api/models/hris/document_list_response.rb +27 -0
  52. data/lib/finch-api/models/hris/document_response.rb +89 -0
  53. data/lib/finch-api/models/hris/document_retreive_params.rb +20 -0
  54. data/lib/finch-api/models/hris/document_retreive_response.rb +41 -0
  55. data/lib/finch-api/models/hris/employment_data.rb +380 -0
  56. data/lib/finch-api/models/hris/employment_data_response.rb +45 -0
  57. data/lib/finch-api/models/hris/employment_retrieve_many_params.rb +45 -0
  58. data/lib/finch-api/models/hris/individual.rb +290 -0
  59. data/lib/finch-api/models/hris/individual_in_directory.rb +117 -0
  60. data/lib/finch-api/models/hris/individual_response.rb +45 -0
  61. data/lib/finch-api/models/hris/individual_retrieve_many_params.rb +73 -0
  62. data/lib/finch-api/models/hris/pay_statement.rb +587 -0
  63. data/lib/finch-api/models/hris/pay_statement_response.rb +45 -0
  64. data/lib/finch-api/models/hris/pay_statement_response_body.rb +36 -0
  65. data/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rb +65 -0
  66. data/lib/finch-api/models/hris/payment.rb +174 -0
  67. data/lib/finch-api/models/hris/payment_list_params.rb +36 -0
  68. data/lib/finch-api/models/hris/support_per_benefit_type.rb +35 -0
  69. data/lib/finch-api/models/hris/supported_benefit.rb +166 -0
  70. data/lib/finch-api/models/hris/update_company_benefit_response.rb +21 -0
  71. data/lib/finch-api/models/hris/w42005.rb +188 -0
  72. data/lib/finch-api/models/hris/w42020.rb +180 -0
  73. data/lib/finch-api/models/income.rb +87 -0
  74. data/lib/finch-api/models/individual_event.rb +78 -0
  75. data/lib/finch-api/models/introspection.rb +342 -0
  76. data/lib/finch-api/models/job_completion_event.rb +90 -0
  77. data/lib/finch-api/models/jobs/automated_async_job.rb +162 -0
  78. data/lib/finch-api/models/jobs/automated_create_params.rb +70 -0
  79. data/lib/finch-api/models/jobs/automated_create_response.rb +43 -0
  80. data/lib/finch-api/models/jobs/automated_list_params.rb +42 -0
  81. data/lib/finch-api/models/jobs/automated_retrieve_params.rb +20 -0
  82. data/lib/finch-api/models/jobs/manual_async_job.rb +63 -0
  83. data/lib/finch-api/models/jobs/manual_retrieve_params.rb +20 -0
  84. data/lib/finch-api/models/location.rb +79 -0
  85. data/lib/finch-api/models/money.rb +30 -0
  86. data/lib/finch-api/models/operation_support.rb +42 -0
  87. data/lib/finch-api/models/operation_support_matrix.rb +81 -0
  88. data/lib/finch-api/models/paging.rb +35 -0
  89. data/lib/finch-api/models/pay_statement_event.rb +89 -0
  90. data/lib/finch-api/models/payment_event.rb +81 -0
  91. data/lib/finch-api/models/payroll/pay_group_list_params.rb +40 -0
  92. data/lib/finch-api/models/payroll/pay_group_list_response.rb +87 -0
  93. data/lib/finch-api/models/payroll/pay_group_retrieve_params.rb +20 -0
  94. data/lib/finch-api/models/payroll/pay_group_retrieve_response.rb +81 -0
  95. data/lib/finch-api/models/provider.rb +2039 -0
  96. data/lib/finch-api/models/provider_list_params.rb +18 -0
  97. data/lib/finch-api/models/request_forwarding_forward_params.rb +60 -0
  98. data/lib/finch-api/models/request_forwarding_forward_response.rb +97 -0
  99. data/lib/finch-api/models/sandbox/company_update_params.rb +294 -0
  100. data/lib/finch-api/models/sandbox/company_update_response.rb +276 -0
  101. data/lib/finch-api/models/sandbox/connection_create_params.rb +90 -0
  102. data/lib/finch-api/models/sandbox/connection_create_response.rb +113 -0
  103. data/lib/finch-api/models/sandbox/connections/account_create_params.rb +87 -0
  104. data/lib/finch-api/models/sandbox/connections/account_create_response.rb +93 -0
  105. data/lib/finch-api/models/sandbox/connections/account_update_params.rb +32 -0
  106. data/lib/finch-api/models/sandbox/connections/account_update_response.rb +91 -0
  107. data/lib/finch-api/models/sandbox/directory_create_params.rb +642 -0
  108. data/lib/finch-api/models/sandbox/directory_create_response.rb +9 -0
  109. data/lib/finch-api/models/sandbox/employment_update_params.rb +372 -0
  110. data/lib/finch-api/models/sandbox/employment_update_response.rb +378 -0
  111. data/lib/finch-api/models/sandbox/individual_update_params.rb +292 -0
  112. data/lib/finch-api/models/sandbox/individual_update_response.rb +300 -0
  113. data/lib/finch-api/models/sandbox/job_create_params.rb +49 -0
  114. data/lib/finch-api/models/sandbox/job_create_response.rb +43 -0
  115. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rb +22 -0
  116. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rb +11 -0
  117. data/lib/finch-api/models/sandbox/jobs/configuration_update_params.rb +22 -0
  118. data/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rb +79 -0
  119. data/lib/finch-api/models/sandbox/payment_create_params.rb +646 -0
  120. data/lib/finch-api/models/sandbox/payment_create_response.rb +29 -0
  121. data/lib/finch-api/models/webhook_event.rb +48 -0
  122. data/lib/finch-api/page.rb +98 -0
  123. data/lib/finch-api/pooled_net_requester.rb +175 -0
  124. data/lib/finch-api/request_options.rb +115 -0
  125. data/lib/finch-api/resources/access_tokens.rb +40 -0
  126. data/lib/finch-api/resources/account.rb +47 -0
  127. data/lib/finch-api/resources/connect/sessions.rb +81 -0
  128. data/lib/finch-api/resources/connect.rb +17 -0
  129. data/lib/finch-api/resources/hris/benefits/individuals.rb +112 -0
  130. data/lib/finch-api/resources/hris/benefits.rb +125 -0
  131. data/lib/finch-api/resources/hris/company.rb +32 -0
  132. data/lib/finch-api/resources/hris/directory.rb +65 -0
  133. data/lib/finch-api/resources/hris/documents.rb +65 -0
  134. data/lib/finch-api/resources/hris/employments.rb +37 -0
  135. data/lib/finch-api/resources/hris/individuals.rb +39 -0
  136. data/lib/finch-api/resources/hris/pay_statements.rb +40 -0
  137. data/lib/finch-api/resources/hris/payments.rb +41 -0
  138. data/lib/finch-api/resources/hris.rb +45 -0
  139. data/lib/finch-api/resources/jobs/automated.rb +96 -0
  140. data/lib/finch-api/resources/jobs/manual.rb +35 -0
  141. data/lib/finch-api/resources/jobs.rb +21 -0
  142. data/lib/finch-api/resources/payroll/pay_groups.rb +58 -0
  143. data/lib/finch-api/resources/payroll.rb +17 -0
  144. data/lib/finch-api/resources/providers.rb +31 -0
  145. data/lib/finch-api/resources/request_forwarding.rb +52 -0
  146. data/lib/finch-api/resources/sandbox/company.rb +50 -0
  147. data/lib/finch-api/resources/sandbox/connections/accounts.rb +67 -0
  148. data/lib/finch-api/resources/sandbox/connections.rb +48 -0
  149. data/lib/finch-api/resources/sandbox/directory.rb +37 -0
  150. data/lib/finch-api/resources/sandbox/employment.rb +76 -0
  151. data/lib/finch-api/resources/sandbox/individual.rb +65 -0
  152. data/lib/finch-api/resources/sandbox/jobs/configuration.rb +57 -0
  153. data/lib/finch-api/resources/sandbox/jobs.rb +40 -0
  154. data/lib/finch-api/resources/sandbox/payment.rb +40 -0
  155. data/lib/finch-api/resources/sandbox.rb +41 -0
  156. data/lib/finch-api/resources/webhooks.rb +13 -0
  157. data/lib/finch-api/responses_page.rb +84 -0
  158. data/lib/finch-api/single_page.rb +82 -0
  159. data/lib/finch-api/util.rb +636 -0
  160. data/lib/finch-api/version.rb +5 -0
  161. data/lib/finch-api.rb +178 -0
  162. data/manifest.yaml +13 -0
  163. data/rbi/lib/finch-api/base_client.rbi +173 -0
  164. data/rbi/lib/finch-api/base_model.rbi +476 -0
  165. data/rbi/lib/finch-api/base_page.rbi +39 -0
  166. data/rbi/lib/finch-api/client.rbi +102 -0
  167. data/rbi/lib/finch-api/errors.rbi +146 -0
  168. data/rbi/lib/finch-api/extern.rbi +7 -0
  169. data/rbi/lib/finch-api/individuals_page.rbi +37 -0
  170. data/rbi/lib/finch-api/models/access_token_create_params.rbi +70 -0
  171. data/rbi/lib/finch-api/models/account_disconnect_params.rbi +18 -0
  172. data/rbi/lib/finch-api/models/account_introspect_params.rbi +18 -0
  173. data/rbi/lib/finch-api/models/account_update_event.rbi +2479 -0
  174. data/rbi/lib/finch-api/models/base_webhook_event.rbi +39 -0
  175. data/rbi/lib/finch-api/models/company_event.rbi +43 -0
  176. data/rbi/lib/finch-api/models/connect/session_new_params.rbi +203 -0
  177. data/rbi/lib/finch-api/models/connect/session_new_response.rbi +33 -0
  178. data/rbi/lib/finch-api/models/connect/session_reauthenticate_params.rbi +95 -0
  179. data/rbi/lib/finch-api/models/connect/session_reauthenticate_response.rbi +33 -0
  180. data/rbi/lib/finch-api/models/connection_status_type.rbi +20 -0
  181. data/rbi/lib/finch-api/models/create_access_token_response.rbi +159 -0
  182. data/rbi/lib/finch-api/models/directory_event.rbi +61 -0
  183. data/rbi/lib/finch-api/models/disconnect_response.rbi +23 -0
  184. data/rbi/lib/finch-api/models/employment_event.rbi +61 -0
  185. data/rbi/lib/finch-api/models/hris/benefit_contribution.rbi +44 -0
  186. data/rbi/lib/finch-api/models/hris/benefit_create_params.rbi +62 -0
  187. data/rbi/lib/finch-api/models/hris/benefit_features_and_operations.rbi +190 -0
  188. data/rbi/lib/finch-api/models/hris/benefit_frequency.rbi +19 -0
  189. data/rbi/lib/finch-api/models/hris/benefit_list_params.rbi +20 -0
  190. data/rbi/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rbi +20 -0
  191. data/rbi/lib/finch-api/models/hris/benefit_retrieve_params.rbi +20 -0
  192. data/rbi/lib/finch-api/models/hris/benefit_type.rbi +35 -0
  193. data/rbi/lib/finch-api/models/hris/benefit_update_params.rbi +37 -0
  194. data/rbi/lib/finch-api/models/hris/benefits/enrolled_individual.rbi +115 -0
  195. data/rbi/lib/finch-api/models/hris/benefits/individual_benefit.rbi +153 -0
  196. data/rbi/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rbi +281 -0
  197. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbi +22 -0
  198. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbi +35 -0
  199. data/rbi/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +36 -0
  200. data/rbi/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rbi +38 -0
  201. data/rbi/lib/finch-api/models/hris/benefits/unenrolled_individual.rbi +102 -0
  202. data/rbi/lib/finch-api/models/hris/benefits_support.rbi +196 -0
  203. data/rbi/lib/finch-api/models/hris/benfit_contribution.rbi +9 -0
  204. data/rbi/lib/finch-api/models/hris/company.rbi +338 -0
  205. data/rbi/lib/finch-api/models/hris/company_benefit.rbi +67 -0
  206. data/rbi/lib/finch-api/models/hris/company_retrieve_params.rbi +20 -0
  207. data/rbi/lib/finch-api/models/hris/create_company_benefits_response.rbi +25 -0
  208. data/rbi/lib/finch-api/models/hris/directory_list_individuals_params.rbi +43 -0
  209. data/rbi/lib/finch-api/models/hris/directory_list_params.rbi +43 -0
  210. data/rbi/lib/finch-api/models/hris/document_list_params.rbi +83 -0
  211. data/rbi/lib/finch-api/models/hris/document_list_response.rbi +42 -0
  212. data/rbi/lib/finch-api/models/hris/document_response.rbi +86 -0
  213. data/rbi/lib/finch-api/models/hris/document_retreive_params.rbi +20 -0
  214. data/rbi/lib/finch-api/models/hris/document_retreive_response.rbi +15 -0
  215. data/rbi/lib/finch-api/models/hris/employment_data.rbi +393 -0
  216. data/rbi/lib/finch-api/models/hris/employment_data_response.rbi +41 -0
  217. data/rbi/lib/finch-api/models/hris/employment_retrieve_many_params.rbi +63 -0
  218. data/rbi/lib/finch-api/models/hris/individual.rbi +281 -0
  219. data/rbi/lib/finch-api/models/hris/individual_in_directory.rbi +147 -0
  220. data/rbi/lib/finch-api/models/hris/individual_response.rbi +41 -0
  221. data/rbi/lib/finch-api/models/hris/individual_retrieve_many_params.rbi +94 -0
  222. data/rbi/lib/finch-api/models/hris/pay_statement.rbi +691 -0
  223. data/rbi/lib/finch-api/models/hris/pay_statement_response.rbi +47 -0
  224. data/rbi/lib/finch-api/models/hris/pay_statement_response_body.rbi +44 -0
  225. data/rbi/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rbi +79 -0
  226. data/rbi/lib/finch-api/models/hris/payment.rbi +207 -0
  227. data/rbi/lib/finch-api/models/hris/payment_list_params.rbi +45 -0
  228. data/rbi/lib/finch-api/models/hris/support_per_benefit_type.rbi +47 -0
  229. data/rbi/lib/finch-api/models/hris/supported_benefit.rbi +155 -0
  230. data/rbi/lib/finch-api/models/hris/update_company_benefit_response.rbi +25 -0
  231. data/rbi/lib/finch-api/models/hris/w42005.rbi +150 -0
  232. data/rbi/lib/finch-api/models/hris/w42020.rbi +177 -0
  233. data/rbi/lib/finch-api/models/income.rbi +83 -0
  234. data/rbi/lib/finch-api/models/individual_event.rbi +61 -0
  235. data/rbi/lib/finch-api/models/introspection.rbi +350 -0
  236. data/rbi/lib/finch-api/models/job_completion_event.rbi +72 -0
  237. data/rbi/lib/finch-api/models/jobs/automated_async_job.rbi +174 -0
  238. data/rbi/lib/finch-api/models/jobs/automated_create_params.rbi +83 -0
  239. data/rbi/lib/finch-api/models/jobs/automated_create_response.rbi +64 -0
  240. data/rbi/lib/finch-api/models/jobs/automated_list_params.rbi +43 -0
  241. data/rbi/lib/finch-api/models/jobs/automated_retrieve_params.rbi +20 -0
  242. data/rbi/lib/finch-api/models/jobs/manual_async_job.rbi +54 -0
  243. data/rbi/lib/finch-api/models/jobs/manual_retrieve_params.rbi +20 -0
  244. data/rbi/lib/finch-api/models/location.rbi +114 -0
  245. data/rbi/lib/finch-api/models/money.rbi +31 -0
  246. data/rbi/lib/finch-api/models/operation_support.rbi +18 -0
  247. data/rbi/lib/finch-api/models/operation_support_matrix.rbi +47 -0
  248. data/rbi/lib/finch-api/models/paging.rbi +31 -0
  249. data/rbi/lib/finch-api/models/pay_statement_event.rbi +69 -0
  250. data/rbi/lib/finch-api/models/payment_event.rbi +69 -0
  251. data/rbi/lib/finch-api/models/payroll/pay_group_list_params.rbi +52 -0
  252. data/rbi/lib/finch-api/models/payroll/pay_group_list_response.rbi +59 -0
  253. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_params.rbi +20 -0
  254. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_response.rbi +82 -0
  255. data/rbi/lib/finch-api/models/provider.rbi +2369 -0
  256. data/rbi/lib/finch-api/models/provider_list_params.rbi +18 -0
  257. data/rbi/lib/finch-api/models/request_forwarding_forward_params.rbi +80 -0
  258. data/rbi/lib/finch-api/models/request_forwarding_forward_response.rbi +138 -0
  259. data/rbi/lib/finch-api/models/sandbox/company_update_params.rbi +336 -0
  260. data/rbi/lib/finch-api/models/sandbox/company_update_response.rbi +330 -0
  261. data/rbi/lib/finch-api/models/sandbox/connection_create_params.rbi +91 -0
  262. data/rbi/lib/finch-api/models/sandbox/connection_create_response.rbi +129 -0
  263. data/rbi/lib/finch-api/models/sandbox/connections/account_create_params.rbi +93 -0
  264. data/rbi/lib/finch-api/models/sandbox/connections/account_create_response.rbi +120 -0
  265. data/rbi/lib/finch-api/models/sandbox/connections/account_update_params.rbi +36 -0
  266. data/rbi/lib/finch-api/models/sandbox/connections/account_update_response.rbi +109 -0
  267. data/rbi/lib/finch-api/models/sandbox/directory_create_params.rbi +629 -0
  268. data/rbi/lib/finch-api/models/sandbox/directory_create_response.rbi +9 -0
  269. data/rbi/lib/finch-api/models/sandbox/employment_update_params.rbi +377 -0
  270. data/rbi/lib/finch-api/models/sandbox/employment_update_response.rbi +382 -0
  271. data/rbi/lib/finch-api/models/sandbox/individual_update_params.rbi +276 -0
  272. data/rbi/lib/finch-api/models/sandbox/individual_update_response.rbi +283 -0
  273. data/rbi/lib/finch-api/models/sandbox/job_create_params.rbi +46 -0
  274. data/rbi/lib/finch-api/models/sandbox/job_create_response.rbi +64 -0
  275. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbi +22 -0
  276. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbi +11 -0
  277. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_update_params.rbi +22 -0
  278. data/rbi/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbi +58 -0
  279. data/rbi/lib/finch-api/models/sandbox/payment_create_params.rbi +876 -0
  280. data/rbi/lib/finch-api/models/sandbox/payment_create_response.rbi +33 -0
  281. data/rbi/lib/finch-api/models/webhook_event.rbi +18 -0
  282. data/rbi/lib/finch-api/page.rbi +37 -0
  283. data/rbi/lib/finch-api/pooled_net_requester.rbi +36 -0
  284. data/rbi/lib/finch-api/request_options.rbi +84 -0
  285. data/rbi/lib/finch-api/resources/access_tokens.rbi +24 -0
  286. data/rbi/lib/finch-api/resources/account.rbi +25 -0
  287. data/rbi/lib/finch-api/resources/connect/sessions.rbi +61 -0
  288. data/rbi/lib/finch-api/resources/connect.rbi +15 -0
  289. data/rbi/lib/finch-api/resources/hris/benefits/individuals.rbi +58 -0
  290. data/rbi/lib/finch-api/resources/hris/benefits.rbi +64 -0
  291. data/rbi/lib/finch-api/resources/hris/company.rbi +20 -0
  292. data/rbi/lib/finch-api/resources/hris/directory.rbi +35 -0
  293. data/rbi/lib/finch-api/resources/hris/documents.rbi +36 -0
  294. data/rbi/lib/finch-api/resources/hris/employments.rbi +23 -0
  295. data/rbi/lib/finch-api/resources/hris/individuals.rbi +24 -0
  296. data/rbi/lib/finch-api/resources/hris/pay_statements.rbi +23 -0
  297. data/rbi/lib/finch-api/resources/hris/payments.rbi +24 -0
  298. data/rbi/lib/finch-api/resources/hris.rbi +43 -0
  299. data/rbi/lib/finch-api/resources/jobs/automated.rbi +45 -0
  300. data/rbi/lib/finch-api/resources/jobs/manual.rbi +23 -0
  301. data/rbi/lib/finch-api/resources/jobs.rbi +19 -0
  302. data/rbi/lib/finch-api/resources/payroll/pay_groups.rbi +34 -0
  303. data/rbi/lib/finch-api/resources/payroll.rbi +15 -0
  304. data/rbi/lib/finch-api/resources/providers.rbi +18 -0
  305. data/rbi/lib/finch-api/resources/request_forwarding.rbi +25 -0
  306. data/rbi/lib/finch-api/resources/sandbox/company.rbi +40 -0
  307. data/rbi/lib/finch-api/resources/sandbox/connections/accounts.rbi +38 -0
  308. data/rbi/lib/finch-api/resources/sandbox/connections.rbi +36 -0
  309. data/rbi/lib/finch-api/resources/sandbox/directory.rbi +23 -0
  310. data/rbi/lib/finch-api/resources/sandbox/employment.rbi +62 -0
  311. data/rbi/lib/finch-api/resources/sandbox/individual.rbi +50 -0
  312. data/rbi/lib/finch-api/resources/sandbox/jobs/configuration.rbi +33 -0
  313. data/rbi/lib/finch-api/resources/sandbox/jobs.rbi +27 -0
  314. data/rbi/lib/finch-api/resources/sandbox/payment.rbi +25 -0
  315. data/rbi/lib/finch-api/resources/sandbox.rbi +39 -0
  316. data/rbi/lib/finch-api/resources/webhooks.rbi +11 -0
  317. data/rbi/lib/finch-api/responses_page.rbi +29 -0
  318. data/rbi/lib/finch-api/single_page.rbi +33 -0
  319. data/rbi/lib/finch-api/util.rbi +167 -0
  320. data/rbi/lib/finch-api/version.rbi +5 -0
  321. data/sig/finch-api/base_client.rbs +101 -0
  322. data/sig/finch-api/base_model.rbs +242 -0
  323. data/sig/finch-api/base_page.rbs +20 -0
  324. data/sig/finch-api/client.rbs +54 -0
  325. data/sig/finch-api/errors.rbs +99 -0
  326. data/sig/finch-api/extern.rbs +4 -0
  327. data/sig/finch-api/individuals_page.rbs +16 -0
  328. data/sig/finch-api/models/access_token_create_params.rbs +46 -0
  329. data/sig/finch-api/models/account_disconnect_params.rbs +19 -0
  330. data/sig/finch-api/models/account_introspect_params.rbs +19 -0
  331. data/sig/finch-api/models/account_update_event.rbs +1448 -0
  332. data/sig/finch-api/models/base_webhook_event.rbs +24 -0
  333. data/sig/finch-api/models/company_event.rbs +36 -0
  334. data/sig/finch-api/models/connect/session_new_params.rbs +129 -0
  335. data/sig/finch-api/models/connect/session_new_response.rbs +22 -0
  336. data/sig/finch-api/models/connect/session_reauthenticate_params.rbs +65 -0
  337. data/sig/finch-api/models/connect/session_reauthenticate_response.rbs +23 -0
  338. data/sig/finch-api/models/connection_status_type.rbs +22 -0
  339. data/sig/finch-api/models/create_access_token_response.rbs +80 -0
  340. data/sig/finch-api/models/directory_event.rbs +61 -0
  341. data/sig/finch-api/models/disconnect_response.rbs +17 -0
  342. data/sig/finch-api/models/employment_event.rbs +61 -0
  343. data/sig/finch-api/models/hris/benefit_contribution.rbs +38 -0
  344. data/sig/finch-api/models/hris/benefit_create_params.rbs +40 -0
  345. data/sig/finch-api/models/hris/benefit_features_and_operations.rbs +112 -0
  346. data/sig/finch-api/models/hris/benefit_frequency.rbs +15 -0
  347. data/sig/finch-api/models/hris/benefit_list_params.rbs +21 -0
  348. data/sig/finch-api/models/hris/benefit_list_supported_benefits_params.rbs +22 -0
  349. data/sig/finch-api/models/hris/benefit_retrieve_params.rbs +21 -0
  350. data/sig/finch-api/models/hris/benefit_type.rbs +50 -0
  351. data/sig/finch-api/models/hris/benefit_update_params.rbs +26 -0
  352. data/sig/finch-api/models/hris/benefits/enrolled_individual.rbs +75 -0
  353. data/sig/finch-api/models/hris/benefits/individual_benefit.rbs +91 -0
  354. data/sig/finch-api/models/hris/benefits/individual_enroll_many_params.rbs +203 -0
  355. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbs +24 -0
  356. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbs +25 -0
  357. data/sig/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +31 -0
  358. data/sig/finch-api/models/hris/benefits/individual_unenroll_many_params.rbs +31 -0
  359. data/sig/finch-api/models/hris/benefits/unenrolled_individual.rbs +62 -0
  360. data/sig/finch-api/models/hris/benefits_support.rbs +68 -0
  361. data/sig/finch-api/models/hris/benfit_contribution.rbs +8 -0
  362. data/sig/finch-api/models/hris/company.rbs +195 -0
  363. data/sig/finch-api/models/hris/company_benefit.rbs +36 -0
  364. data/sig/finch-api/models/hris/company_retrieve_params.rbs +21 -0
  365. data/sig/finch-api/models/hris/create_company_benefits_response.rbs +20 -0
  366. data/sig/finch-api/models/hris/directory_list_individuals_params.rbs +34 -0
  367. data/sig/finch-api/models/hris/directory_list_params.rbs +34 -0
  368. data/sig/finch-api/models/hris/document_list_params.rbs +61 -0
  369. data/sig/finch-api/models/hris/document_list_response.rbs +29 -0
  370. data/sig/finch-api/models/hris/document_response.rbs +58 -0
  371. data/sig/finch-api/models/hris/document_retreive_params.rbs +21 -0
  372. data/sig/finch-api/models/hris/document_retreive_response.rbs +12 -0
  373. data/sig/finch-api/models/hris/employment_data.rbs +228 -0
  374. data/sig/finch-api/models/hris/employment_data_response.rbs +41 -0
  375. data/sig/finch-api/models/hris/employment_retrieve_many_params.rbs +45 -0
  376. data/sig/finch-api/models/hris/individual.rbs +176 -0
  377. data/sig/finch-api/models/hris/individual_in_directory.rbs +83 -0
  378. data/sig/finch-api/models/hris/individual_response.rbs +41 -0
  379. data/sig/finch-api/models/hris/individual_retrieve_many_params.rbs +72 -0
  380. data/sig/finch-api/models/hris/pay_statement.rbs +445 -0
  381. data/sig/finch-api/models/hris/pay_statement_response.rbs +41 -0
  382. data/sig/finch-api/models/hris/pay_statement_response_body.rbs +35 -0
  383. data/sig/finch-api/models/hris/pay_statement_retrieve_many_params.rbs +53 -0
  384. data/sig/finch-api/models/hris/payment.rbs +112 -0
  385. data/sig/finch-api/models/hris/payment_list_params.rbs +30 -0
  386. data/sig/finch-api/models/hris/support_per_benefit_type.rbs +37 -0
  387. data/sig/finch-api/models/hris/supported_benefit.rbs +84 -0
  388. data/sig/finch-api/models/hris/update_company_benefit_response.rbs +20 -0
  389. data/sig/finch-api/models/hris/w42005.rbs +111 -0
  390. data/sig/finch-api/models/hris/w42020.rbs +108 -0
  391. data/sig/finch-api/models/income.rbs +57 -0
  392. data/sig/finch-api/models/individual_event.rbs +61 -0
  393. data/sig/finch-api/models/introspection.rbs +204 -0
  394. data/sig/finch-api/models/job_completion_event.rbs +70 -0
  395. data/sig/finch-api/models/jobs/automated_async_job.rbs +102 -0
  396. data/sig/finch-api/models/jobs/automated_create_params.rbs +57 -0
  397. data/sig/finch-api/models/jobs/automated_create_response.rbs +37 -0
  398. data/sig/finch-api/models/jobs/automated_list_params.rbs +34 -0
  399. data/sig/finch-api/models/jobs/automated_retrieve_params.rbs +21 -0
  400. data/sig/finch-api/models/jobs/manual_async_job.rbs +43 -0
  401. data/sig/finch-api/models/jobs/manual_retrieve_params.rbs +21 -0
  402. data/sig/finch-api/models/location.rbs +48 -0
  403. data/sig/finch-api/models/money.rbs +19 -0
  404. data/sig/finch-api/models/operation_support.rbs +18 -0
  405. data/sig/finch-api/models/operation_support_matrix.rbs +50 -0
  406. data/sig/finch-api/models/paging.rbs +21 -0
  407. data/sig/finch-api/models/pay_statement_event.rbs +68 -0
  408. data/sig/finch-api/models/payment_event.rbs +59 -0
  409. data/sig/finch-api/models/payroll/pay_group_list_params.rbs +35 -0
  410. data/sig/finch-api/models/payroll/pay_group_list_response.rbs +66 -0
  411. data/sig/finch-api/models/payroll/pay_group_retrieve_params.rbs +21 -0
  412. data/sig/finch-api/models/payroll/pay_group_retrieve_response.rbs +62 -0
  413. data/sig/finch-api/models/provider.rbs +1455 -0
  414. data/sig/finch-api/models/provider_list_params.rbs +18 -0
  415. data/sig/finch-api/models/request_forwarding_forward_params.rbs +44 -0
  416. data/sig/finch-api/models/request_forwarding_forward_response.rbs +71 -0
  417. data/sig/finch-api/models/sandbox/company_update_params.rbs +197 -0
  418. data/sig/finch-api/models/sandbox/company_update_response.rbs +192 -0
  419. data/sig/finch-api/models/sandbox/connection_create_params.rbs +61 -0
  420. data/sig/finch-api/models/sandbox/connection_create_response.rbs +66 -0
  421. data/sig/finch-api/models/sandbox/connections/account_create_params.rbs +62 -0
  422. data/sig/finch-api/models/sandbox/connections/account_create_response.rbs +63 -0
  423. data/sig/finch-api/models/sandbox/connections/account_update_params.rbs +34 -0
  424. data/sig/finch-api/models/sandbox/connections/account_update_response.rbs +61 -0
  425. data/sig/finch-api/models/sandbox/directory_create_params.rbs +392 -0
  426. data/sig/finch-api/models/sandbox/directory_create_response.rbs +9 -0
  427. data/sig/finch-api/models/sandbox/employment_update_params.rbs +228 -0
  428. data/sig/finch-api/models/sandbox/employment_update_response.rbs +229 -0
  429. data/sig/finch-api/models/sandbox/individual_update_params.rbs +178 -0
  430. data/sig/finch-api/models/sandbox/individual_update_response.rbs +179 -0
  431. data/sig/finch-api/models/sandbox/job_create_params.rbs +36 -0
  432. data/sig/finch-api/models/sandbox/job_create_response.rbs +37 -0
  433. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbs +23 -0
  434. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbs +12 -0
  435. data/sig/finch-api/models/sandbox/jobs/configuration_update_params.rbs +23 -0
  436. data/sig/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbs +51 -0
  437. data/sig/finch-api/models/sandbox/payment_create_params.rbs +487 -0
  438. data/sig/finch-api/models/sandbox/payment_create_response.rbs +22 -0
  439. data/sig/finch-api/models/webhook_event.rbs +17 -0
  440. data/sig/finch-api/page.rbs +16 -0
  441. data/sig/finch-api/pooled_net_requester.rbs +28 -0
  442. data/sig/finch-api/request_options.rbs +40 -0
  443. data/sig/finch-api/resources/access_tokens.rbs +19 -0
  444. data/sig/finch-api/resources/account.rbs +25 -0
  445. data/sig/finch-api/resources/connect/sessions.rbs +40 -0
  446. data/sig/finch-api/resources/connect.rbs +9 -0
  447. data/sig/finch-api/resources/hris/benefits/individuals.rbs +58 -0
  448. data/sig/finch-api/resources/hris/benefits.rbs +64 -0
  449. data/sig/finch-api/resources/hris/company.rbs +18 -0
  450. data/sig/finch-api/resources/hris/directory.rbs +31 -0
  451. data/sig/finch-api/resources/hris/documents.rbs +33 -0
  452. data/sig/finch-api/resources/hris/employments.rbs +19 -0
  453. data/sig/finch-api/resources/hris/individuals.rbs +20 -0
  454. data/sig/finch-api/resources/hris/pay_statements.rbs +19 -0
  455. data/sig/finch-api/resources/hris/payments.rbs +20 -0
  456. data/sig/finch-api/resources/hris.rbs +23 -0
  457. data/sig/finch-api/resources/jobs/automated.rbs +42 -0
  458. data/sig/finch-api/resources/jobs/manual.rbs +20 -0
  459. data/sig/finch-api/resources/jobs.rbs +11 -0
  460. data/sig/finch-api/resources/payroll/pay_groups.rbs +31 -0
  461. data/sig/finch-api/resources/payroll.rbs +9 -0
  462. data/sig/finch-api/resources/providers.rbs +15 -0
  463. data/sig/finch-api/resources/request_forwarding.rbs +21 -0
  464. data/sig/finch-api/resources/sandbox/company.rbs +26 -0
  465. data/sig/finch-api/resources/sandbox/connections/accounts.rbs +34 -0
  466. data/sig/finch-api/resources/sandbox/connections.rbs +24 -0
  467. data/sig/finch-api/resources/sandbox/directory.rbs +19 -0
  468. data/sig/finch-api/resources/sandbox/employment.rbs +38 -0
  469. data/sig/finch-api/resources/sandbox/individual.rbs +32 -0
  470. data/sig/finch-api/resources/sandbox/jobs/configuration.rbs +31 -0
  471. data/sig/finch-api/resources/sandbox/jobs.rbs +21 -0
  472. data/sig/finch-api/resources/sandbox/payment.rbs +21 -0
  473. data/sig/finch-api/resources/sandbox.rbs +21 -0
  474. data/sig/finch-api/resources/webhooks.rbs +7 -0
  475. data/sig/finch-api/responses_page.rbs +14 -0
  476. data/sig/finch-api/single_page.rbs +18 -0
  477. data/sig/finch-api/util.rbs +109 -0
  478. data/sig/finch-api/version.rbs +3 -0
  479. metadata +536 -0
@@ -0,0 +1,167 @@
1
+ # typed: strong
2
+
3
+ module FinchAPI
4
+ module Util
5
+ sig { returns(Float) }
6
+ def self.monotonic_secs
7
+ end
8
+
9
+ sig { returns(String) }
10
+ def self.arch
11
+ end
12
+
13
+ sig { returns(String) }
14
+ def self.os
15
+ end
16
+
17
+ sig { params(input: T.anything).returns(T.any(T::Boolean, T.anything)) }
18
+ def self.primitive?(input)
19
+ end
20
+
21
+ sig { params(input: T.anything).returns(T.any(T::Boolean, T.anything)) }
22
+ def self.coerce_boolean(input)
23
+ end
24
+
25
+ sig { params(input: T.anything).returns(T.nilable(T::Boolean)) }
26
+ def self.coerce_boolean!(input)
27
+ end
28
+
29
+ sig { params(input: T.anything).returns(T.any(Integer, T.anything)) }
30
+ def self.coerce_integer(input)
31
+ end
32
+
33
+ sig { params(input: T.anything).returns(T.any(Float, T.anything)) }
34
+ def self.coerce_float(input)
35
+ end
36
+
37
+ sig { params(input: T.anything).returns(T.any(T::Hash[T.anything, T.anything], T.anything)) }
38
+ def self.coerce_hash(input)
39
+ end
40
+
41
+ OMIT = T.let(T.anything, T.anything)
42
+
43
+ sig { params(lhs: T.anything, rhs: T.anything, concat: T::Boolean).returns(T.anything) }
44
+ private_class_method def self.deep_merge_lr(lhs, rhs, concat: false)
45
+ end
46
+
47
+ sig do
48
+ params(values: T::Array[T.anything], sentinel: T.nilable(T.anything), concat: T::Boolean)
49
+ .returns(T.anything)
50
+ end
51
+ def self.deep_merge(*values, sentinel: nil, concat: false)
52
+ end
53
+
54
+ sig do
55
+ params(
56
+ data: T.any(T::Hash[Symbol, T.anything], T::Array[T.anything], T.anything),
57
+ pick: T.nilable(T.any(Symbol, Integer, T::Array[T.any(Symbol, Integer)])),
58
+ sentinel: T.nilable(T.anything),
59
+ blk: T.nilable(T.proc.returns(T.anything))
60
+ )
61
+ .returns(T.nilable(T.anything))
62
+ end
63
+ def self.dig(data, pick, sentinel = nil, &blk)
64
+ end
65
+
66
+ sig { params(uri: URI::Generic).returns(String) }
67
+ def self.uri_origin(uri)
68
+ end
69
+
70
+ sig { params(path: T.any(String, T::Array[String])).returns(String) }
71
+ def self.interpolate_path(path)
72
+ end
73
+
74
+ sig { params(query: T.nilable(String)).returns(T::Hash[String, T::Array[String]]) }
75
+ def self.decode_query(query)
76
+ end
77
+
78
+ sig do
79
+ params(query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]))
80
+ .returns(T.nilable(String))
81
+ end
82
+ def self.encode_query(query)
83
+ end
84
+
85
+ ParsedUriShape = T.type_alias do
86
+ {
87
+ scheme: T.nilable(String),
88
+ host: T.nilable(String),
89
+ port: T.nilable(Integer),
90
+ path: T.nilable(String),
91
+ query: T::Hash[String, T::Array[String]]
92
+ }
93
+ end
94
+
95
+ sig { params(url: T.any(URI::Generic, String)).returns(FinchAPI::Util::ParsedUriShape) }
96
+ def self.parse_uri(url)
97
+ end
98
+
99
+ sig { params(parsed: FinchAPI::Util::ParsedUriShape).returns(URI::Generic) }
100
+ def self.unparse_uri(parsed)
101
+ end
102
+
103
+ sig do
104
+ params(lhs: FinchAPI::Util::ParsedUriShape, rhs: FinchAPI::Util::ParsedUriShape).returns(URI::Generic)
105
+ end
106
+ def self.join_parsed_uri(lhs, rhs)
107
+ end
108
+
109
+ sig do
110
+ params(
111
+ headers: T::Hash[String,
112
+ T.nilable(T.any(String, Integer, T::Array[T.nilable(T.any(String, Integer))]))]
113
+ )
114
+ .returns(T::Hash[String, String])
115
+ end
116
+ def self.normalized_headers(*headers)
117
+ end
118
+
119
+ sig { params(io: StringIO, boundary: String, key: T.any(Symbol, String), val: T.anything).void }
120
+ private_class_method def self.encode_multipart_formdata(io, boundary:, key:, val:)
121
+ end
122
+
123
+ sig { params(headers: T::Hash[String, String], body: T.anything).returns(T.anything) }
124
+ def self.encode_content(headers, body)
125
+ end
126
+
127
+ sig do
128
+ params(
129
+ headers: T.any(T::Hash[String, String], Net::HTTPHeader),
130
+ stream: T::Enumerable[String],
131
+ suppress_error: T::Boolean
132
+ )
133
+ .returns(T.anything)
134
+ end
135
+ def self.decode_content(headers, stream:, suppress_error: false)
136
+ end
137
+
138
+ sig { params(enum: T::Enumerable[T.anything], close: T.proc.void).returns(T::Enumerable[T.anything]) }
139
+ def self.fused_enum(enum, &close)
140
+ end
141
+
142
+ sig { params(enum: T.nilable(T::Enumerable[T.anything])).void }
143
+ def self.close_fused!(enum)
144
+ end
145
+
146
+ sig do
147
+ params(
148
+ enum: T.nilable(T::Enumerable[T.anything]),
149
+ blk: T.proc.params(arg0: Enumerator::Yielder).void
150
+ ).void
151
+ end
152
+ def self.chain_fused(enum, &blk)
153
+ end
154
+
155
+ SSEMessage = T.type_alias do
156
+ {event: T.nilable(String), data: T.nilable(String), id: T.nilable(String), retry: T.nilable(Integer)}
157
+ end
158
+
159
+ sig { params(enum: T::Enumerable[String]).returns(T::Enumerable[String]) }
160
+ def self.enum_lines(enum)
161
+ end
162
+
163
+ sig { params(lines: T::Enumerable[String]).returns(FinchAPI::Util::SSEMessage) }
164
+ def self.parse_sse(lines)
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,5 @@
1
+ # typed: strong
2
+
3
+ module FinchAPI
4
+ VERSION = "0.1.0-alpha.1"
5
+ end
@@ -0,0 +1,101 @@
1
+ module FinchAPI
2
+ class BaseClient
3
+ type request_components =
4
+ {
5
+ method: Symbol,
6
+ path: String | ::Array[String],
7
+ query: ::Hash[String, (::Array[String] | String)?]?,
8
+ headers: ::Hash[String, (String
9
+ | Integer
10
+ | ::Array[(String | Integer)?])?]?,
11
+ body: top?,
12
+ unwrap: Symbol?,
13
+ page: Class?,
14
+ stream: Class?,
15
+ model: FinchAPI::Converter::input?,
16
+ options: FinchAPI::request_opts?
17
+ }
18
+
19
+ type request_input =
20
+ {
21
+ method: Symbol,
22
+ url: URI::Generic,
23
+ headers: ::Hash[String, String],
24
+ body: top,
25
+ max_retries: Integer,
26
+ timeout: Float
27
+ }
28
+
29
+ MAX_REDIRECTS: 20
30
+
31
+ PLATFORM_HEADERS: ::Hash[String, String]
32
+
33
+ def self.validate!: (FinchAPI::BaseClient::request_components req) -> void
34
+
35
+ def self.should_retry?: (
36
+ Integer status,
37
+ headers: ::Hash[String, String]
38
+ ) -> bool
39
+
40
+ def self.follow_redirect: (
41
+ FinchAPI::BaseClient::request_input request,
42
+ status: Integer,
43
+ response_headers: ::Hash[String, String]
44
+ ) -> FinchAPI::BaseClient::request_input
45
+
46
+ # @private
47
+ attr_accessor requester: top
48
+
49
+ def initialize: (
50
+ base_url: String,
51
+ timeout: Float,
52
+ max_retries: Integer,
53
+ initial_retry_delay: Float,
54
+ max_retry_delay: Float,
55
+ headers: ::Hash[String, (String
56
+ | Integer
57
+ | ::Array[(String | Integer)?])?],
58
+ idempotency_header: String?
59
+ ) -> void
60
+
61
+ private def auth_headers: -> ::Hash[String, String]
62
+
63
+ private def generate_idempotency_key: -> String
64
+
65
+ private def build_request: (
66
+ FinchAPI::BaseClient::request_components req,
67
+ FinchAPI::request_options opts
68
+ ) -> FinchAPI::BaseClient::request_input
69
+
70
+ private def retry_delay: (
71
+ ::Hash[String, String] headers,
72
+ retry_count: Integer
73
+ ) -> Float
74
+
75
+ private def send_request: (
76
+ FinchAPI::BaseClient::request_input request,
77
+ redirect_count: Integer,
78
+ retry_count: Integer,
79
+ send_retry_header: bool
80
+ ) -> [Integer, top, Enumerable[String]]
81
+
82
+ def request:
83
+ (
84
+ Symbol method,
85
+ String | ::Array[String] path,
86
+ query: ::Hash[String, (::Array[String] | String)?]?,
87
+ headers: ::Hash[String, (String
88
+ | Integer
89
+ | ::Array[(String | Integer)?])?]?,
90
+ body: top?,
91
+ unwrap: Symbol?,
92
+ page: Class?,
93
+ stream: Class?,
94
+ model: FinchAPI::Converter::input?,
95
+ options: FinchAPI::request_opts?
96
+ ) -> top
97
+ | (FinchAPI::BaseClient::request_components req) -> top
98
+
99
+ def inspect: -> String
100
+ end
101
+ end
@@ -0,0 +1,242 @@
1
+ module FinchAPI
2
+ module Converter
3
+ type input = FinchAPI::Converter | Class
4
+
5
+ def coerce: (top value) -> top
6
+
7
+ def dump: (top value) -> top
8
+
9
+ def try_strict_coerce: (
10
+ top value
11
+ ) -> ([true, top, nil] | [false, bool, Integer])
12
+
13
+ def self.type_info: (
14
+ {
15
+ const: (nil | bool | Integer | Float | Symbol)?,
16
+ enum: ^-> FinchAPI::Converter::input?,
17
+ union: ^-> FinchAPI::Converter::input?
18
+ }
19
+ | ^-> FinchAPI::Converter::input
20
+ | FinchAPI::Converter::input spec
21
+ ) -> (^-> top)
22
+
23
+ def self.coerce: (FinchAPI::Converter::input target, top value) -> top
24
+
25
+ def self.dump: (FinchAPI::Converter::input target, top value) -> top
26
+
27
+ def self.try_strict_coerce: (
28
+ FinchAPI::Converter::input target,
29
+ top value
30
+ ) -> top
31
+ end
32
+
33
+ class Unknown
34
+ extend FinchAPI::Converter
35
+
36
+ def self.===: (top other) -> bool
37
+
38
+ def self.==: (top other) -> bool
39
+
40
+ def self.coerce: (top value) -> top
41
+
42
+ def self.dump: (top value) -> top
43
+
44
+ def self.try_strict_coerce: (
45
+ top value
46
+ ) -> ([true, top, nil] | [false, bool, Integer])
47
+ end
48
+
49
+ class BooleanModel
50
+ extend FinchAPI::Converter
51
+
52
+ def self.===: (top other) -> bool
53
+
54
+ def self.==: (top other) -> bool
55
+
56
+ def self.coerce: (bool | top value) -> (bool | top)
57
+
58
+ def self.dump: (bool | top value) -> (bool | top)
59
+
60
+ def self.try_strict_coerce: (
61
+ top value
62
+ ) -> ([true, top, nil] | [false, bool, Integer])
63
+ end
64
+
65
+ class Enum
66
+ extend FinchAPI::Converter
67
+
68
+ def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)]
69
+
70
+ private def self.finalize!: -> void
71
+
72
+ def self.===: (top other) -> bool
73
+
74
+ def self.==: (top other) -> bool
75
+
76
+ def self.coerce: (String | Symbol | top value) -> (Symbol | top)
77
+
78
+ def self.dump: (Symbol | top value) -> (Symbol | top)
79
+
80
+ def self.try_strict_coerce: (
81
+ top value
82
+ ) -> ([true, top, nil] | [false, bool, Integer])
83
+ end
84
+
85
+ class Union
86
+ extend FinchAPI::Converter
87
+
88
+ private def self.known_variants: -> ::Array[[Symbol?, Proc]]
89
+
90
+ def self.variants: -> ::Array[[Symbol?, top]]
91
+
92
+ private def self.discriminator: (Symbol property) -> void
93
+
94
+ private def self.variant: (
95
+ Symbol
96
+ | ::Hash[Symbol, top]
97
+ | ^-> FinchAPI::Converter::input
98
+ | FinchAPI::Converter::input key,
99
+ ?::Hash[Symbol, top]
100
+ | ^-> FinchAPI::Converter::input
101
+ | FinchAPI::Converter::input spec
102
+ ) -> void
103
+
104
+ private def self.resolve_variant: (top value) -> FinchAPI::Converter::input?
105
+
106
+ def self.===: (top other) -> bool
107
+
108
+ def self.==: (top other) -> bool
109
+
110
+ def self.coerce: (top value) -> top
111
+
112
+ def self.dump: (top value) -> top
113
+
114
+ def self.try_strict_coerce: (
115
+ top value
116
+ ) -> ([true, top, nil] | [false, bool, Integer])
117
+ end
118
+
119
+ class ArrayOf
120
+ include FinchAPI::Converter
121
+
122
+ def ===: (top other) -> bool
123
+
124
+ def ==: (top other) -> bool
125
+
126
+ def coerce: (Enumerable[top] | top value) -> (::Array[top] | top)
127
+
128
+ def dump: (Enumerable[top] | top value) -> (::Array[top] | top)
129
+
130
+ def try_strict_coerce: (
131
+ top value
132
+ ) -> ([true, top, nil] | [false, bool, Integer])
133
+
134
+ def item_type: -> FinchAPI::Converter::input
135
+
136
+ def initialize: (
137
+ ::Hash[Symbol, top]
138
+ | ^-> FinchAPI::Converter::input
139
+ | FinchAPI::Converter::input type_info,
140
+ ?::Hash[Symbol, top] spec
141
+ ) -> void
142
+ end
143
+
144
+ class HashOf
145
+ include FinchAPI::Converter
146
+
147
+ def ===: (top other) -> bool
148
+
149
+ def ==: (top other) -> bool
150
+
151
+ def coerce: (::Hash[top, top] | top value) -> (::Hash[Symbol, top] | top)
152
+
153
+ def dump: (::Hash[top, top] | top value) -> (::Hash[Symbol, top] | top)
154
+
155
+ def try_strict_coerce: (
156
+ top value
157
+ ) -> ([true, top, nil] | [false, bool, Integer])
158
+
159
+ def item_type: -> FinchAPI::Converter::input
160
+
161
+ def initialize: (
162
+ ::Hash[Symbol, top]
163
+ | ^-> FinchAPI::Converter::input
164
+ | FinchAPI::Converter::input type_info,
165
+ ?::Hash[Symbol, top] spec
166
+ ) -> void
167
+ end
168
+
169
+ class BaseModel
170
+ extend FinchAPI::Converter
171
+
172
+ type known_field = { mode: (:coerce | :dump)?, required: bool }
173
+
174
+ def self.known_fields: -> ::Hash[Symbol, (FinchAPI::BaseModel::known_field
175
+ & { type_fn: (^-> FinchAPI::Converter::input) })]
176
+
177
+ def self.fields: -> ::Hash[Symbol, (FinchAPI::BaseModel::known_field
178
+ & { type: FinchAPI::Converter::input })]
179
+
180
+ def self.defaults: -> ::Hash[Symbol, (^-> Class)]
181
+
182
+ private def self.add_field: (
183
+ Symbol name_sym,
184
+ required: bool,
185
+ type_info: {
186
+ const: (nil | bool | Integer | Float | Symbol)?,
187
+ enum: ^-> FinchAPI::Converter::input?,
188
+ union: ^-> FinchAPI::Converter::input?,
189
+ api_name: Symbol
190
+ }
191
+ | ^-> FinchAPI::Converter::input
192
+ | FinchAPI::Converter::input,
193
+ spec: ::Hash[Symbol, top]
194
+ ) -> void
195
+
196
+ def self.required: (
197
+ Symbol name_sym,
198
+ ::Hash[Symbol, top]
199
+ | ^-> FinchAPI::Converter::input
200
+ | FinchAPI::Converter::input type_info,
201
+ ?::Hash[Symbol, top] spec
202
+ ) -> void
203
+
204
+ def self.optional: (
205
+ Symbol name_sym,
206
+ ::Hash[Symbol, top]
207
+ | ^-> FinchAPI::Converter::input
208
+ | FinchAPI::Converter::input type_info,
209
+ ?::Hash[Symbol, top] spec
210
+ ) -> void
211
+
212
+ private def self.request_only: { -> void } -> void
213
+
214
+ private def self.response_only: { -> void } -> void
215
+
216
+ def ==: (top other) -> bool
217
+
218
+ def self.coerce: (
219
+ FinchAPI::BaseModel | ::Hash[top, top] | top value
220
+ ) -> (instance | top)
221
+
222
+ def self.dump: (instance | top value) -> (::Hash[top, top] | top)
223
+
224
+ def self.try_strict_coerce: (
225
+ top value
226
+ ) -> ([true, top, nil] | [false, bool, Integer])
227
+
228
+ def []: (Symbol key) -> top?
229
+
230
+ def to_h: -> ::Hash[Symbol, top]
231
+
232
+ alias to_hash to_h
233
+
234
+ def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
235
+
236
+ def initialize: (?::Hash[Symbol, top] | self data) -> void
237
+
238
+ def to_s: -> String
239
+
240
+ def inspect: -> String
241
+ end
242
+ end
@@ -0,0 +1,20 @@
1
+ module FinchAPI
2
+ module BasePage[Elem]
3
+ def next_page?: -> bool
4
+
5
+ def next_page: -> self
6
+
7
+ def auto_paging_each: { (Elem arg0) -> void } -> void
8
+
9
+ def to_enum: -> Enumerable[Elem]
10
+
11
+ alias enum_for to_enum
12
+
13
+ def initialize: (
14
+ client: FinchAPI::BaseClient,
15
+ req: FinchAPI::BaseClient::request_components,
16
+ headers: ::Hash[String, String],
17
+ unwrapped: top
18
+ ) -> void
19
+ end
20
+ end
@@ -0,0 +1,54 @@
1
+ module FinchAPI
2
+ class Client < FinchAPI::BaseClient
3
+ DEFAULT_MAX_RETRIES: 2
4
+
5
+ DEFAULT_TIMEOUT_IN_SECONDS: Float
6
+
7
+ DEFAULT_INITIAL_RETRY_DELAY: Float
8
+
9
+ DEFAULT_MAX_RETRY_DELAY: Float
10
+
11
+ attr_reader access_token: String?
12
+
13
+ attr_reader client_id: String?
14
+
15
+ attr_reader client_secret: String?
16
+
17
+ attr_reader access_tokens: FinchAPI::Resources::AccessTokens
18
+
19
+ attr_reader hris: FinchAPI::Resources::HRIS
20
+
21
+ attr_reader providers: FinchAPI::Resources::Providers
22
+
23
+ attr_reader account: FinchAPI::Resources::Account
24
+
25
+ attr_reader webhooks: FinchAPI::Resources::Webhooks
26
+
27
+ attr_reader request_forwarding: FinchAPI::Resources::RequestForwarding
28
+
29
+ attr_reader jobs: FinchAPI::Resources::Jobs
30
+
31
+ attr_reader sandbox: FinchAPI::Resources::Sandbox
32
+
33
+ attr_reader payroll: FinchAPI::Resources::Payroll
34
+
35
+ attr_reader connect: FinchAPI::Resources::Connect
36
+
37
+ private def auth_headers: -> ::Hash[String, String]
38
+
39
+ private def bearer_auth: -> ::Hash[String, String]
40
+
41
+ private def basic_auth: -> ::Hash[String, String]
42
+
43
+ def initialize: (
44
+ base_url: String?,
45
+ access_token: String?,
46
+ client_id: String?,
47
+ client_secret: String?,
48
+ max_retries: Integer,
49
+ timeout: Float,
50
+ initial_retry_delay: Float,
51
+ max_retry_delay: Float
52
+ ) -> void
53
+ end
54
+ end
@@ -0,0 +1,99 @@
1
+ module FinchAPI
2
+ class Error < StandardError
3
+ attr_reader cause: StandardError?
4
+ end
5
+
6
+ class ConversionError < FinchAPI::Error
7
+ end
8
+
9
+ class APIError < FinchAPI::Error
10
+ attr_reader url: URI::Generic
11
+
12
+ attr_reader status: Integer?
13
+
14
+ attr_reader body: top?
15
+
16
+ def initialize: (
17
+ url: URI::Generic,
18
+ status: Integer?,
19
+ body: Object?,
20
+ request: nil,
21
+ response: nil,
22
+ message: String?
23
+ ) -> void
24
+ end
25
+
26
+ class APIConnectionError < FinchAPI::APIError
27
+ def initialize: (
28
+ url: URI::Generic,
29
+ status: nil,
30
+ body: nil,
31
+ request: nil,
32
+ response: nil,
33
+ message: String?
34
+ ) -> void
35
+ end
36
+
37
+ class APITimeoutError < FinchAPI::APIConnectionError
38
+ def initialize: (
39
+ url: URI::Generic,
40
+ status: nil,
41
+ body: nil,
42
+ request: nil,
43
+ response: nil,
44
+ message: String?
45
+ ) -> void
46
+ end
47
+
48
+ class APIStatusError < FinchAPI::APIError
49
+ def self.for: (
50
+ url: URI::Generic,
51
+ status: Integer,
52
+ body: Object?,
53
+ request: nil,
54
+ response: nil,
55
+ message: String?
56
+ ) -> instance
57
+
58
+ def initialize: (
59
+ url: URI::Generic,
60
+ status: Integer,
61
+ body: Object?,
62
+ request: nil,
63
+ response: nil,
64
+ message: String?
65
+ ) -> void
66
+ end
67
+
68
+ class BadRequestError < FinchAPI::APIStatusError
69
+ HTTP_STATUS: 400
70
+ end
71
+
72
+ class AuthenticationError < FinchAPI::APIStatusError
73
+ HTTP_STATUS: 401
74
+ end
75
+
76
+ class PermissionDeniedError < FinchAPI::APIStatusError
77
+ HTTP_STATUS: 403
78
+ end
79
+
80
+ class NotFoundError < FinchAPI::APIStatusError
81
+ HTTP_STATUS: 404
82
+ end
83
+
84
+ class ConflictError < FinchAPI::APIStatusError
85
+ HTTP_STATUS: 409
86
+ end
87
+
88
+ class UnprocessableEntityError < FinchAPI::APIStatusError
89
+ HTTP_STATUS: 422
90
+ end
91
+
92
+ class RateLimitError < FinchAPI::APIStatusError
93
+ HTTP_STATUS: 429
94
+ end
95
+
96
+ class InternalServerError < FinchAPI::APIStatusError
97
+ HTTP_STATUS: Range[Integer]
98
+ end
99
+ end
@@ -0,0 +1,4 @@
1
+ module FinchAPI
2
+ module Extern
3
+ end
4
+ end
@@ -0,0 +1,16 @@
1
+ module FinchAPI
2
+ class IndividualsPage[Elem]
3
+ include FinchAPI::BasePage[Elem]
4
+
5
+ attr_accessor individuals: ::Array[Elem]
6
+
7
+ attr_accessor paging: FinchAPI::Models::Paging
8
+
9
+ def initialize: (
10
+ client: FinchAPI::BaseClient,
11
+ req: FinchAPI::BaseClient::request_components,
12
+ headers: ::Hash[String, String],
13
+ unwrapped: ::Hash[Symbol, top]
14
+ ) -> void
15
+ end
16
+ end