fern_gusto 0.0.6.pre.alpha6

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 (515) hide show
  1. checksums.yaml +7 -0
  2. data/lib/base_gusto.rb +175 -0
  3. data/lib/core/file_utilities.rb +27 -0
  4. data/lib/environment.rb +9 -0
  5. data/lib/fern_gusto/ach_transactions/client.rb +119 -0
  6. data/lib/fern_gusto/admins/types/admin.rb +82 -0
  7. data/lib/fern_gusto/companies/attachments/client.rb +335 -0
  8. data/lib/fern_gusto/companies/attachments/types/attachments_create_request_category.rb +15 -0
  9. data/lib/fern_gusto/companies/attachments/types/attachments_get_download_url_response.rb +56 -0
  10. data/lib/fern_gusto/companies/bank_accounts/client.rb +435 -0
  11. data/lib/fern_gusto/companies/bank_accounts/types/bank_accounts_create_request_account_type.rb +15 -0
  12. data/lib/fern_gusto/companies/benefits/client.rb +862 -0
  13. data/lib/fern_gusto/companies/client.rb +1104 -0
  14. data/lib/fern_gusto/companies/departments/client.rb +587 -0
  15. data/lib/fern_gusto/companies/departments/types/departments_add_people_request_contractors_item.rb +59 -0
  16. data/lib/fern_gusto/companies/departments/types/departments_add_people_request_employees_item.rb +59 -0
  17. data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_contractors_item.rb +59 -0
  18. data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_employees_item.rb +59 -0
  19. data/lib/fern_gusto/companies/employees/client.rb +376 -0
  20. data/lib/fern_gusto/companies/external_payrolls/client.rb +605 -0
  21. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item.rb +98 -0
  22. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_benefits_item.rb +79 -0
  23. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item.rb +87 -0
  24. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item_earning_type.rb +15 -0
  25. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_taxes_item.rb +69 -0
  26. data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_tax_liabilities_request_liability_selections_item.rb +80 -0
  27. data/lib/fern_gusto/companies/federal_tax_details/client.rb +212 -0
  28. data/lib/fern_gusto/companies/federal_tax_details/types/federal_tax_details_update_request_tax_payer_type.rb +25 -0
  29. data/lib/fern_gusto/companies/forms/client.rb +345 -0
  30. data/lib/fern_gusto/companies/industry_selection/client.rb +207 -0
  31. data/lib/fern_gusto/companies/locations/client.rb +417 -0
  32. data/lib/fern_gusto/companies/pay_schedules/client.rb +377 -0
  33. data/lib/fern_gusto/companies/payment_configs/client.rb +198 -0
  34. data/lib/fern_gusto/companies/payment_configs/types/payment_configs_update_request_payment_speed.rb +19 -0
  35. data/lib/fern_gusto/companies/signatories/client.rb +513 -0
  36. data/lib/fern_gusto/companies/signatories/types/signatories_create_request_home_address.rb +89 -0
  37. data/lib/fern_gusto/companies/signatories/types/signatories_update_request_home_address.rb +88 -0
  38. data/lib/fern_gusto/companies/tax_requirements/client.rb +367 -0
  39. data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_list_response_item.rb +75 -0
  40. data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item.rb +88 -0
  41. data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item_requirements_item.rb +70 -0
  42. data/lib/fern_gusto/companies/types/companies_accept_terms_response.rb +56 -0
  43. data/lib/fern_gusto/companies/types/companies_create_request_company.rb +83 -0
  44. data/lib/fern_gusto/companies/types/companies_create_request_user.rb +81 -0
  45. data/lib/fern_gusto/companies/types/companies_create_response.rb +82 -0
  46. data/lib/fern_gusto/companies/types/companies_get_custom_fields_response.rb +59 -0
  47. data/lib/fern_gusto/companies/types/companies_migrate_to_embedded_payroll_response.rb +68 -0
  48. data/lib/fern_gusto/companies/types/companies_retrieve_terms_response.rb +56 -0
  49. data/lib/fern_gusto/companies/types/company.rb +223 -0
  50. data/lib/fern_gusto/companies/types/company_company_status.rb +21 -0
  51. data/lib/fern_gusto/companies/types/company_compensations.rb +85 -0
  52. data/lib/fern_gusto/companies/types/company_compensations_fixed_item.rb +55 -0
  53. data/lib/fern_gusto/companies/types/company_compensations_hourly_item.rb +65 -0
  54. data/lib/fern_gusto/companies/types/company_compensations_paid_time_off_item.rb +55 -0
  55. data/lib/fern_gusto/companies/types/company_entity_type.rb +23 -0
  56. data/lib/fern_gusto/companies/types/company_funding_type.rb +15 -0
  57. data/lib/fern_gusto/companies/types/company_onboarding_status.rb +77 -0
  58. data/lib/fern_gusto/companies/types/company_onboarding_status_onboarding_steps_item.rb +97 -0
  59. data/lib/fern_gusto/companies/types/company_pay_schedule_type.rb +15 -0
  60. data/lib/fern_gusto/companies/types/company_primary_payroll_admin.rb +80 -0
  61. data/lib/fern_gusto/companies/types/company_primary_signatory.rb +100 -0
  62. data/lib/fern_gusto/companies/types/company_primary_signatory_home_address.rb +93 -0
  63. data/lib/fern_gusto/companies/types/company_tier.rb +20 -0
  64. data/lib/fern_gusto/company_attachment/types/company_attachment.rb +81 -0
  65. data/lib/fern_gusto/company_attachment/types/company_attachment_category.rb +13 -0
  66. data/lib/fern_gusto/company_bank_accounts/types/company_bank_account.rb +157 -0
  67. data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_account_type.rb +13 -0
  68. data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_plaid_status.rb +14 -0
  69. data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_status.rb +19 -0
  70. data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_type.rb +17 -0
  71. data/lib/fern_gusto/company_benefits/types/benefit_summary.rb +104 -0
  72. data/lib/fern_gusto/company_benefits/types/benefit_summary_employees.rb +113 -0
  73. data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits.rb +107 -0
  74. data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits_pay_period.rb +67 -0
  75. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements.rb +156 -0
  76. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up.rb +86 -0
  77. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up_default_value.rb +67 -0
  78. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum.rb +88 -0
  79. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum_default_value.rb +68 -0
  80. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution.rb +86 -0
  81. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution_default_value.rb +67 -0
  82. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount.rb +87 -0
  83. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount_default_value.rb +67 -0
  84. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier.rb +88 -0
  85. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier_default_value.rb +67 -0
  86. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage.rb +88 -0
  87. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage_default_value.rb +67 -0
  88. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction.rb +88 -0
  89. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction_default_value.rb +67 -0
  90. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option.rb +86 -0
  91. data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option_default_value.rb +67 -0
  92. data/lib/fern_gusto/contractor/types/contractor_onboarding_info.rb +78 -0
  93. data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_status.rb +14 -0
  94. data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_steps_item.rb +88 -0
  95. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group.rb +145 -0
  96. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_payment_method.rb +15 -0
  97. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_status.rb +16 -0
  98. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_wage_type.rb +13 -0
  99. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group.rb +127 -0
  100. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal.rb +116 -0
  101. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_status.rb +16 -0
  102. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_totals.rb +74 -0
  103. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_status.rb +16 -0
  104. data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_totals.rb +74 -0
  105. data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account.rb +94 -0
  106. data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account_account_type.rb +13 -0
  107. data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method.rb +96 -0
  108. data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_split_by.rb +15 -0
  109. data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_type.rb +14 -0
  110. data/lib/fern_gusto/contractor_payments/types/contractor_payment.rb +146 -0
  111. data/lib/fern_gusto/contractor_payments/types/contractor_payment_payment_method.rb +15 -0
  112. data/lib/fern_gusto/contractor_payments/types/contractor_payment_status.rb +13 -0
  113. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary.rb +81 -0
  114. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates.rb +81 -0
  115. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_contractor_payments_item.rb +93 -0
  116. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_total.rb +67 -0
  117. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_contractor_payments_item.rb +86 -0
  118. data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_total.rb +67 -0
  119. data/lib/fern_gusto/contractor_payments/types/contractor_payment_wage_type.rb +13 -0
  120. data/lib/fern_gusto/contractors/client.rb +1025 -0
  121. data/lib/fern_gusto/contractors/documents/client.rb +269 -0
  122. data/lib/fern_gusto/contractors/documents/types/documents_sign_request_fields_item.rb +67 -0
  123. data/lib/fern_gusto/contractors/forms/client.rb +343 -0
  124. data/lib/fern_gusto/contractors/payment_groups/client.rb +569 -0
  125. data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item.rb +102 -0
  126. data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item_payment_method.rb +15 -0
  127. data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item.rb +102 -0
  128. data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item_payment_method.rb +15 -0
  129. data/lib/fern_gusto/contractors/payment_method/client.rb +369 -0
  130. data/lib/fern_gusto/contractors/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
  131. data/lib/fern_gusto/contractors/payment_method/types/payment_method_update_request_type.rb +17 -0
  132. data/lib/fern_gusto/contractors/payments/client.rb +558 -0
  133. data/lib/fern_gusto/contractors/payments/types/payments_create_request_payment_method.rb +15 -0
  134. data/lib/fern_gusto/contractors/payments/types/payments_list_response.rb +62 -0
  135. data/lib/fern_gusto/contractors/types/contractor.rb +227 -0
  136. data/lib/fern_gusto/contractors/types/contractor_address.rb +94 -0
  137. data/lib/fern_gusto/contractors/types/contractor_onboarding_status.rb +18 -0
  138. data/lib/fern_gusto/contractors/types/contractor_type.rb +13 -0
  139. data/lib/fern_gusto/contractors/types/contractor_wage_type.rb +13 -0
  140. data/lib/fern_gusto/custom_fields/types/company_custom_field.rb +88 -0
  141. data/lib/fern_gusto/custom_fields/types/custom_field_type.rb +16 -0
  142. data/lib/fern_gusto/custom_fields/types/employee_custom_field.rb +104 -0
  143. data/lib/fern_gusto/documents/types/document.rb +167 -0
  144. data/lib/fern_gusto/documents/types/document_fields_item.rb +114 -0
  145. data/lib/fern_gusto/documents/types/document_pages_item.rb +65 -0
  146. data/lib/fern_gusto/documents/types/document_recipient_type.rb +15 -0
  147. data/lib/fern_gusto/documents/types/document_signed.rb +137 -0
  148. data/lib/fern_gusto/documents/types/document_signed_recipient_type.rb +15 -0
  149. data/lib/fern_gusto/earning_types/types/earning_type.rb +66 -0
  150. data/lib/fern_gusto/employee_employments/types/unprocessed_termination_pay_period.rb +101 -0
  151. data/lib/fern_gusto/employee_payment_method/types/employee_bank_account.rb +94 -0
  152. data/lib/fern_gusto/employee_payment_method/types/employee_bank_account_account_type.rb +13 -0
  153. data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_info.rb +96 -0
  154. data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_split_by.rb +15 -0
  155. data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_type.rb +14 -0
  156. data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax.rb +144 -0
  157. data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax_w4data_type.rb +13 -0
  158. data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax.rb +90 -0
  159. data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_answer.rb +74 -0
  160. data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format.rb +69 -0
  161. data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format_options_item.rb +67 -0
  162. data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_question.rb +96 -0
  163. data/lib/fern_gusto/employees/adresses/client.rb +885 -0
  164. data/lib/fern_gusto/employees/benefits/client.rb +656 -0
  165. data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution.rb +93 -0
  166. data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_type.rb +23 -0
  167. data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value.rb +67 -0
  168. data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value_item.rb +80 -0
  169. data/lib/fern_gusto/employees/benefits/types/benefits_create_request_deduction_reduces_taxable_income.rb +18 -0
  170. data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution.rb +93 -0
  171. data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_type.rb +23 -0
  172. data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value.rb +67 -0
  173. data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value_item.rb +80 -0
  174. data/lib/fern_gusto/employees/benefits/types/benefits_update_request_deduction_reduces_taxable_income.rb +18 -0
  175. data/lib/fern_gusto/employees/client.rb +822 -0
  176. data/lib/fern_gusto/employees/employments/client.rb +799 -0
  177. data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item.rb +95 -0
  178. data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item_employment_status.rb +20 -0
  179. data/lib/fern_gusto/employees/forms/client.rb +433 -0
  180. data/lib/fern_gusto/employees/forms/types/forms_generate_w2response.rb +132 -0
  181. data/lib/fern_gusto/employees/garnishments/client.rb +558 -0
  182. data/lib/fern_gusto/employees/garnishments/types/garnishments_create_request_garnishment_type.rb +20 -0
  183. data/lib/fern_gusto/employees/jobs_and_compensations/client.rb +938 -0
  184. data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_minimum_wages_item.rb +62 -0
  185. data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_payment_unit.rb +19 -0
  186. data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_minimum_wages_item.rb +62 -0
  187. data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_payment_unit.rb +19 -0
  188. data/lib/fern_gusto/employees/payment_method/client.rb +484 -0
  189. data/lib/fern_gusto/employees/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
  190. data/lib/fern_gusto/employees/payment_method/types/payment_method_update_bank_account_request_account_type.rb +14 -0
  191. data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_split_by.rb +17 -0
  192. data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_splits_item.rb +83 -0
  193. data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_type.rb +16 -0
  194. data/lib/fern_gusto/employees/tax_setup/client.rb +422 -0
  195. data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item.rb +73 -0
  196. data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item.rb +73 -0
  197. data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item_answers_item.rb +77 -0
  198. data/lib/fern_gusto/employees/types/employee.rb +281 -0
  199. data/lib/fern_gusto/employees/types/employee_current_employment_status.rb +20 -0
  200. data/lib/fern_gusto/employees/types/employee_onboarding_info.rb +77 -0
  201. data/lib/fern_gusto/employees/types/employee_onboarding_status.rb +19 -0
  202. data/lib/fern_gusto/employees/types/employee_onboarding_status_onboarding_steps_item.rb +88 -0
  203. data/lib/fern_gusto/employees/types/employee_payment_method.rb +13 -0
  204. data/lib/fern_gusto/employees/types/employees_get_custom_fields_response.rb +59 -0
  205. data/lib/fern_gusto/employees/types/employees_get_request_include.rb +12 -0
  206. data/lib/fern_gusto/events/client.rb +144 -0
  207. data/lib/fern_gusto/events/types/events_list_request_sort_order.rb +12 -0
  208. data/lib/fern_gusto/external_payrolls/types/external_payroll.rb +158 -0
  209. data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_benefits_item.rb +73 -0
  210. data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_earnings_item.rb +87 -0
  211. data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_taxes_item.rb +85 -0
  212. data/lib/fern_gusto/external_payrolls/types/external_payroll_basic.rb +101 -0
  213. data/lib/fern_gusto/external_payrolls/types/external_payroll_basic_status.rb +16 -0
  214. data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item.rb +93 -0
  215. data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_benefits_item.rb +74 -0
  216. data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_earnings_item.rb +81 -0
  217. data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_taxes_item.rb +67 -0
  218. data/lib/fern_gusto/external_payrolls/types/external_payroll_metadata.rb +56 -0
  219. data/lib/fern_gusto/external_payrolls/types/external_payroll_status.rb +16 -0
  220. data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions.rb +72 -0
  221. data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions_tax_suggestions.rb +68 -0
  222. data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections.rb +86 -0
  223. data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections_possible_liabilities.rb +75 -0
  224. data/lib/fern_gusto/federal_tax_details/types/federal_tax_details.rb +140 -0
  225. data/lib/fern_gusto/flows/client.rb +113 -0
  226. data/lib/fern_gusto/flows/types/flow.rb +66 -0
  227. data/lib/fern_gusto/flows/types/flows_create_request_entity_type.rb +14 -0
  228. data/lib/fern_gusto/forms/types/form.rb +123 -0
  229. data/lib/fern_gusto/forms/types/form1099.rb +126 -0
  230. data/lib/fern_gusto/generated_documents/client.rb +106 -0
  231. data/lib/fern_gusto/holiday_pay_policies/client.rb +599 -0
  232. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_add_employees_request_employees_item.rb +57 -0
  233. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays.rb +198 -0
  234. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_christmas_day.rb +57 -0
  235. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_columbus_day.rb +57 -0
  236. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_independence_day.rb +57 -0
  237. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_juneteenth.rb +57 -0
  238. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_labor_day.rb +57 -0
  239. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_memorial_day.rb +57 -0
  240. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_mlk_day.rb +57 -0
  241. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_new_years_day.rb +57 -0
  242. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_presidents_day.rb +57 -0
  243. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_thanksgiving.rb +57 -0
  244. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_veterans_day.rb +57 -0
  245. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_remove_employees_request_employees_item.rb +57 -0
  246. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays.rb +198 -0
  247. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_christmas_day.rb +57 -0
  248. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_columbus_day.rb +57 -0
  249. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_independence_day.rb +57 -0
  250. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_juneteenth.rb +57 -0
  251. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_labor_day.rb +57 -0
  252. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_memorial_day.rb +57 -0
  253. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_mlk_day.rb +57 -0
  254. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_new_years_day.rb +57 -0
  255. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_presidents_day.rb +57 -0
  256. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_thanksgiving.rb +57 -0
  257. data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_veterans_day.rb +57 -0
  258. data/lib/fern_gusto/industry/types/industry.rb +87 -0
  259. data/lib/fern_gusto/invoices/client.rb +132 -0
  260. data/lib/fern_gusto/jobs_and_compensations/types/compensation.rb +120 -0
  261. data/lib/fern_gusto/jobs_and_compensations/types/compensation_payment_unit.rb +17 -0
  262. data/lib/fern_gusto/jobs_and_compensations/types/job.rb +161 -0
  263. data/lib/fern_gusto/locations/types/company_address.rb +103 -0
  264. data/lib/fern_gusto/locations/types/location.rb +171 -0
  265. data/lib/fern_gusto/notifications/client.rb +120 -0
  266. data/lib/fern_gusto/pay_schedules/types/pay_schedule.rb +151 -0
  267. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment.rb +103 -0
  268. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_department.rb +65 -0
  269. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee.rb +65 -0
  270. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee_change.rb +105 -0
  271. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_pay_period.rb +80 -0
  272. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview.rb +71 -0
  273. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview_type.rb +15 -0
  274. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_transition_pay_period.rb +68 -0
  275. data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_type.rb +15 -0
  276. data/lib/fern_gusto/pay_schedules/types/pay_schedule_frequency.rb +17 -0
  277. data/lib/fern_gusto/payment_configs/types/payment_configs.rb +79 -0
  278. data/lib/fern_gusto/payroll/client.rb +1644 -0
  279. data/lib/fern_gusto/payroll/earning_types/client.rb +350 -0
  280. data/lib/fern_gusto/payroll/earning_types/types/earning_types_get_response.rb +74 -0
  281. data/lib/fern_gusto/payroll/external_payrolls/client.rb +199 -0
  282. data/lib/fern_gusto/payroll/pay_schedules/client.rb +584 -0
  283. data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_create_request_frequency.rb +17 -0
  284. data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_request_frequency.rb +16 -0
  285. data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response.rb +72 -0
  286. data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response_pay_periods_item.rb +83 -0
  287. data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_update_request_frequency.rb +17 -0
  288. data/lib/fern_gusto/payroll/types/payroll_create_request_off_cycle_reason.rb +15 -0
  289. data/lib/fern_gusto/payroll/types/payroll_create_request_withholding_pay_period.rb +18 -0
  290. data/lib/fern_gusto/payroll/types/payroll_get_request_include_item.rb +14 -0
  291. data/lib/fern_gusto/payroll/types/payroll_list_request_include_item.rb +13 -0
  292. data/lib/fern_gusto/payroll/types/payroll_list_request_payroll_types_item.rb +13 -0
  293. data/lib/fern_gusto/payroll/types/payroll_list_request_processing_statuses_item.rb +12 -0
  294. data/lib/fern_gusto/payroll/types/payroll_list_request_sort_order.rb +12 -0
  295. data/lib/fern_gusto/payroll/types/payroll_skip_payroll_request_payroll_type.rb +15 -0
  296. data/lib/fern_gusto/payroll/types/payroll_submit_request_submission_blockers_item.rb +67 -0
  297. data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item.rb +133 -0
  298. data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_fixed_compensations_item.rb +79 -0
  299. data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_hourly_compensations_item.rb +79 -0
  300. data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_paid_time_off_item.rb +85 -0
  301. data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_payment_method.rb +13 -0
  302. data/lib/fern_gusto/payrolls/types/employee_pay_stub.rb +94 -0
  303. data/lib/fern_gusto/payrolls/types/paid_time_off.rb +123 -0
  304. data/lib/fern_gusto/payrolls/types/paid_time_off_name.rb +14 -0
  305. data/lib/fern_gusto/payrolls/types/pay_period.rb +86 -0
  306. data/lib/fern_gusto/payrolls/types/pay_period_payroll.rb +107 -0
  307. data/lib/fern_gusto/payrolls/types/pay_period_payroll_payroll_type.rb +13 -0
  308. data/lib/fern_gusto/payrolls/types/payroll.rb +285 -0
  309. data/lib/fern_gusto/payrolls/types/payroll_minimal.rb +250 -0
  310. data/lib/fern_gusto/payrolls/types/payroll_prepared.rb +250 -0
  311. data/lib/fern_gusto/recovery_cases/client.rb +198 -0
  312. data/lib/fern_gusto/reports/client.rb +306 -0
  313. data/lib/fern_gusto/reports/types/reports_create_request_columns_item.rb +91 -0
  314. data/lib/fern_gusto/reports/types/reports_create_request_employment_status.rb +18 -0
  315. data/lib/fern_gusto/reports/types/reports_create_request_employment_type.rb +16 -0
  316. data/lib/fern_gusto/reports/types/reports_create_request_file_type.rb +13 -0
  317. data/lib/fern_gusto/reports/types/reports_create_request_groupings_item.rb +14 -0
  318. data/lib/fern_gusto/reports/types/reports_create_request_payment_method.rb +13 -0
  319. data/lib/fern_gusto/signatories/types/signatory.rb +175 -0
  320. data/lib/fern_gusto/signatories/types/signatory_home_address.rb +93 -0
  321. data/lib/fern_gusto/signatories/types/signatory_identity_verification_status.rb +28 -0
  322. data/lib/fern_gusto/terminations/types/termination.rb +109 -0
  323. data/lib/fern_gusto/time_off_policies/client.rb +863 -0
  324. data/lib/fern_gusto/time_off_policies/types/time_off_policies_add_employees_request_employees_item.rb +67 -0
  325. data/lib/fern_gusto/time_off_policies/types/time_off_policies_create_request_accrual_method.rb +19 -0
  326. data/lib/fern_gusto/time_off_policies/types/time_off_policies_remove_employees_request_employees_item.rb +57 -0
  327. data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_balance_request_employees_item.rb +67 -0
  328. data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_request_accrual_method.rb +19 -0
  329. data/lib/fern_gusto/time_off_requests/types/time_off_request.rb +141 -0
  330. data/lib/fern_gusto/time_off_requests/types/time_off_request_approver.rb +66 -0
  331. data/lib/fern_gusto/time_off_requests/types/time_off_request_employee.rb +66 -0
  332. data/lib/fern_gusto/time_off_requests/types/time_off_request_initiator.rb +66 -0
  333. data/lib/fern_gusto/time_off_requests/types/time_off_request_request_type.rb +13 -0
  334. data/lib/fern_gusto/time_off_requests/types/time_off_request_status.rb +14 -0
  335. data/lib/fern_gusto/token/client.rb +270 -0
  336. data/lib/fern_gusto/token/types/token_get_info_response.rb +85 -0
  337. data/lib/fern_gusto/token/types/token_get_info_response_resource.rb +64 -0
  338. data/lib/fern_gusto/token/types/token_get_info_response_resource_owner.rb +65 -0
  339. data/lib/fern_gusto/token/types/token_get_info_response_resource_owner_type.rb +13 -0
  340. data/lib/fern_gusto/token/types/token_get_system_access_token_response.rb +77 -0
  341. data/lib/fern_gusto/types/accruing_time_off_hour.rb +64 -0
  342. data/lib/fern_gusto/types/ach_transaction.rb +162 -0
  343. data/lib/fern_gusto/types/ach_transaction_payment_direction.rb +11 -0
  344. data/lib/fern_gusto/types/ach_transaction_payment_event_type.rb +11 -0
  345. data/lib/fern_gusto/types/ach_transaction_payment_status.rb +13 -0
  346. data/lib/fern_gusto/types/ach_transaction_recipient_type.rb +11 -0
  347. data/lib/fern_gusto/types/address.rb +111 -0
  348. data/lib/fern_gusto/types/authentication.rb +96 -0
  349. data/lib/fern_gusto/types/child_support_data.rb +58 -0
  350. data/lib/fern_gusto/types/child_support_data_agencies_item.rb +104 -0
  351. data/lib/fern_gusto/types/child_support_data_agencies_item_fips_codes_item.rb +67 -0
  352. data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item.rb +70 -0
  353. data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item_key.rb +14 -0
  354. data/lib/fern_gusto/types/company_benefit.rb +135 -0
  355. data/lib/fern_gusto/types/company_benefit_with_employee_benefits.rb +148 -0
  356. data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item.rb +115 -0
  357. data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution.rb +91 -0
  358. data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value.rb +61 -0
  359. data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers.rb +60 -0
  360. data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers_tiers_item.rb +86 -0
  361. data/lib/fern_gusto/types/contractor_address_info.rb +118 -0
  362. data/lib/fern_gusto/types/contractor_body.rb +200 -0
  363. data/lib/fern_gusto/types/contractor_body_type.rb +11 -0
  364. data/lib/fern_gusto/types/contractor_body_wage_type.rb +11 -0
  365. data/lib/fern_gusto/types/contractor_payment_receipt.rb +161 -0
  366. data/lib/fern_gusto/types/contractor_payment_receipt_contractor_payments_item.rb +120 -0
  367. data/lib/fern_gusto/types/contractor_payment_receipt_licensee.rb +92 -0
  368. data/lib/fern_gusto/types/contractor_payment_receipt_totals.rb +54 -0
  369. data/lib/fern_gusto/types/create_report.rb +77 -0
  370. data/lib/fern_gusto/types/department.rb +103 -0
  371. data/lib/fern_gusto/types/department_contractors_item.rb +53 -0
  372. data/lib/fern_gusto/types/department_employees_item.rb +53 -0
  373. data/lib/fern_gusto/types/document_pdf.rb +63 -0
  374. data/lib/fern_gusto/types/employee_address.rb +139 -0
  375. data/lib/fern_gusto/types/employee_benefit.rb +220 -0
  376. data/lib/fern_gusto/types/employee_benefit_base_object.rb +199 -0
  377. data/lib/fern_gusto/types/employee_benefit_base_object_contribution.rb +89 -0
  378. data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value.rb +61 -0
  379. data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers.rb +59 -0
  380. data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers_tiers_item.rb +85 -0
  381. data/lib/fern_gusto/types/employee_benefit_base_object_deduction_reduces_taxable_income.rb +14 -0
  382. data/lib/fern_gusto/types/employee_benefit_for_company_benefit.rb +220 -0
  383. data/lib/fern_gusto/types/employee_work_address.rb +137 -0
  384. data/lib/fern_gusto/types/entity_error_object.rb +102 -0
  385. data/lib/fern_gusto/types/entity_error_object_errors_item.rb +89 -0
  386. data/lib/fern_gusto/types/event.rb +99 -0
  387. data/lib/fern_gusto/types/flsa_status_type.rb +23 -0
  388. data/lib/fern_gusto/types/form_pdf.rb +63 -0
  389. data/lib/fern_gusto/types/garnishment.rb +172 -0
  390. data/lib/fern_gusto/types/garnishment_child_support.rb +113 -0
  391. data/lib/fern_gusto/types/garnishment_child_support_payment_period.rb +14 -0
  392. data/lib/fern_gusto/types/garnishment_garnishment_type.rb +16 -0
  393. data/lib/fern_gusto/types/generated_document.rb +70 -0
  394. data/lib/fern_gusto/types/gross_up_pay.rb +53 -0
  395. data/lib/fern_gusto/types/historical_employee_body.rb +156 -0
  396. data/lib/fern_gusto/types/historical_employee_body_employee_state_taxes.rb +80 -0
  397. data/lib/fern_gusto/types/historical_employee_body_home_address.rb +84 -0
  398. data/lib/fern_gusto/types/historical_employee_body_job.rb +53 -0
  399. data/lib/fern_gusto/types/historical_employee_body_termination.rb +53 -0
  400. data/lib/fern_gusto/types/historical_employee_body_work_address.rb +53 -0
  401. data/lib/fern_gusto/types/holiday_pay_policy.rb +88 -0
  402. data/lib/fern_gusto/types/holiday_pay_policy_employees_item.rb +53 -0
  403. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item.rb +179 -0
  404. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_columbus_day.rb +72 -0
  405. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_independence_day.rb +72 -0
  406. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_juneteenth.rb +72 -0
  407. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_labor_day.rb +72 -0
  408. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_memorial_day.rb +72 -0
  409. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_mlk_day.rb +72 -0
  410. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_new_years_day.rb +72 -0
  411. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_presidents_day.rb +72 -0
  412. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_thanksgiving.rb +72 -0
  413. data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_veterans_day.rb +72 -0
  414. data/lib/fern_gusto/types/invoice_data.rb +58 -0
  415. data/lib/fern_gusto/types/invoice_data_active_companies_item.rb +91 -0
  416. data/lib/fern_gusto/types/minimum_wage.rb +96 -0
  417. data/lib/fern_gusto/types/notification.rb +125 -0
  418. data/lib/fern_gusto/types/notification_resources_item.rb +85 -0
  419. data/lib/fern_gusto/types/off_cycle_reason_type.rb +19 -0
  420. data/lib/fern_gusto/types/paid_holidays.rb +61 -0
  421. data/lib/fern_gusto/types/paid_holidays_schema.rb +77 -0
  422. data/lib/fern_gusto/types/pay_schedule_assignment_body.rb +111 -0
  423. data/lib/fern_gusto/types/pay_schedule_assignment_body_departments_item.rb +65 -0
  424. data/lib/fern_gusto/types/pay_schedule_assignment_body_employees_item.rb +64 -0
  425. data/lib/fern_gusto/types/pay_schedule_assignment_body_type.rb +13 -0
  426. data/lib/fern_gusto/types/payment_method_bank_account.rb +87 -0
  427. data/lib/fern_gusto/types/payroll_blocker.rb +63 -0
  428. data/lib/fern_gusto/types/payroll_blockers_error.rb +60 -0
  429. data/lib/fern_gusto/types/payroll_blockers_error_errors_item.rb +83 -0
  430. data/lib/fern_gusto/types/payroll_blockers_error_errors_item_metadata.rb +54 -0
  431. data/lib/fern_gusto/types/payroll_check.rb +84 -0
  432. data/lib/fern_gusto/types/payroll_company_taxes_type.rb +6 -0
  433. data/lib/fern_gusto/types/payroll_company_taxes_type_item.rb +70 -0
  434. data/lib/fern_gusto/types/payroll_credit_blockers_type.rb +6 -0
  435. data/lib/fern_gusto/types/payroll_credit_blockers_type_item.rb +89 -0
  436. data/lib/fern_gusto/types/payroll_credit_blockers_type_item_status.rb +13 -0
  437. data/lib/fern_gusto/types/payroll_credit_blockers_type_item_unblock_options_item.rb +72 -0
  438. data/lib/fern_gusto/types/payroll_employee_compensations_type.rb +6 -0
  439. data/lib/fern_gusto/types/payroll_employee_compensations_type_item.rb +216 -0
  440. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_benefits_item.rb +79 -0
  441. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_deductions_item.rb +65 -0
  442. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_fixed_compensations_item.rb +74 -0
  443. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_hourly_compensations_item.rb +92 -0
  444. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_paid_time_off_item.rb +76 -0
  445. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_payment_method.rb +11 -0
  446. data/lib/fern_gusto/types/payroll_employee_compensations_type_item_taxes_item.rb +70 -0
  447. data/lib/fern_gusto/types/payroll_fixed_compensation_types_type.rb +6 -0
  448. data/lib/fern_gusto/types/payroll_fixed_compensation_types_type_item.rb +54 -0
  449. data/lib/fern_gusto/types/payroll_pay_period_type.rb +70 -0
  450. data/lib/fern_gusto/types/payroll_payment_speed_changed_type.rb +86 -0
  451. data/lib/fern_gusto/types/payroll_payroll_status_meta_type.rb +92 -0
  452. data/lib/fern_gusto/types/payroll_processing_request.rb +68 -0
  453. data/lib/fern_gusto/types/payroll_processing_request_status.rb +14 -0
  454. data/lib/fern_gusto/types/payroll_receipt.rb +177 -0
  455. data/lib/fern_gusto/types/payroll_receipt_employee_compensations_item.rb +116 -0
  456. data/lib/fern_gusto/types/payroll_receipt_licensee.rb +92 -0
  457. data/lib/fern_gusto/types/payroll_receipt_taxes_item.rb +63 -0
  458. data/lib/fern_gusto/types/payroll_receipt_totals.rb +85 -0
  459. data/lib/fern_gusto/types/payroll_reversal.rb +91 -0
  460. data/lib/fern_gusto/types/payroll_submission_blockers_type.rb +6 -0
  461. data/lib/fern_gusto/types/payroll_submission_blockers_type_item.rb +89 -0
  462. data/lib/fern_gusto/types/payroll_submission_blockers_type_item_status.rb +11 -0
  463. data/lib/fern_gusto/types/payroll_submission_blockers_type_item_unblock_options_item.rb +72 -0
  464. data/lib/fern_gusto/types/payroll_totals_type.rb +199 -0
  465. data/lib/fern_gusto/types/payroll_withholding_pay_period_type.rb +17 -0
  466. data/lib/fern_gusto/types/recovery_case.rb +131 -0
  467. data/lib/fern_gusto/types/recovery_case_status.rb +14 -0
  468. data/lib/fern_gusto/types/rehire.rb +116 -0
  469. data/lib/fern_gusto/types/rehire_body.rb +91 -0
  470. data/lib/fern_gusto/types/rehire_body_employment_status.rb +16 -0
  471. data/lib/fern_gusto/types/rehire_employment_status.rb +16 -0
  472. data/lib/fern_gusto/types/report.rb +72 -0
  473. data/lib/fern_gusto/types/report_template.rb +77 -0
  474. data/lib/fern_gusto/types/supported_benefit.rb +122 -0
  475. data/lib/fern_gusto/types/tax_requirement.rb +111 -0
  476. data/lib/fern_gusto/types/tax_requirement_applicable_if_item.rb +69 -0
  477. data/lib/fern_gusto/types/tax_requirement_applicable_if_item_value.rb +72 -0
  478. data/lib/fern_gusto/types/tax_requirement_effective_from.rb +5 -0
  479. data/lib/fern_gusto/types/tax_requirement_metadata.rb +182 -0
  480. data/lib/fern_gusto/types/tax_requirement_metadata_options_item.rb +70 -0
  481. data/lib/fern_gusto/types/tax_requirement_metadata_rate_type.rb +13 -0
  482. data/lib/fern_gusto/types/tax_requirement_metadata_type.rb +31 -0
  483. data/lib/fern_gusto/types/tax_requirement_metadata_validation.rb +81 -0
  484. data/lib/fern_gusto/types/tax_requirement_metadata_validation_type.rb +11 -0
  485. data/lib/fern_gusto/types/tax_requirement_set.rb +90 -0
  486. data/lib/fern_gusto/types/tax_requirements_state.rb +75 -0
  487. data/lib/fern_gusto/types/time_off_activity.rb +107 -0
  488. data/lib/fern_gusto/types/time_off_activity_time_off_type.rb +11 -0
  489. data/lib/fern_gusto/types/time_off_policy.rb +183 -0
  490. data/lib/fern_gusto/types/time_off_policy_employees_item.rb +53 -0
  491. data/lib/fern_gusto/types/time_off_policy_policy_type.rb +11 -0
  492. data/lib/fern_gusto/types/unprocessable_entity_error_body.rb +59 -0
  493. data/lib/fern_gusto/types/unprocessable_entity_error_body_errors.rb +57 -0
  494. data/lib/fern_gusto/types/unprocessable_entity_error_body_errors_base_item.rb +72 -0
  495. data/lib/fern_gusto/types/unprocessable_entity_error_body_item.rb +65 -0
  496. data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item.rb +69 -0
  497. data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item_answers_item.rb +72 -0
  498. data/lib/fern_gusto/types/unprocessable_entity_error_object.rb +63 -0
  499. data/lib/fern_gusto/types/versionable.rb +57 -0
  500. data/lib/fern_gusto/types/versionable_required.rb +55 -0
  501. data/lib/fern_gusto/types/wire_in_request.rb +170 -0
  502. data/lib/fern_gusto/types/wire_in_request_status.rb +14 -0
  503. data/lib/fern_gusto/webhooks/client.rb +627 -0
  504. data/lib/fern_gusto/webhooks/types/webhook_subscription.rb +82 -0
  505. data/lib/fern_gusto/webhooks/types/webhook_subscription_status.rb +14 -0
  506. data/lib/fern_gusto/webhooks/types/webhook_subscription_subscription_types_item.rb +25 -0
  507. data/lib/fern_gusto/webhooks/types/webhooks_create_request_subscription_types_item.rb +25 -0
  508. data/lib/fern_gusto/webhooks/types/webhooks_update_request_subscription_types_item.rb +25 -0
  509. data/lib/fern_gusto/wire_in_requests/client.rb +273 -0
  510. data/lib/fern_gusto.rb +310 -0
  511. data/lib/gemconfig.rb +13 -0
  512. data/lib/gusto_legacy.rb +19 -0
  513. data/lib/requests.rb +206 -0
  514. data/lib/types_export.rb +461 -0
  515. metadata +671 -0
@@ -0,0 +1,285 @@
1
+ # frozen_string_literal: true
2
+ require "date"
3
+ require_relative "../../types/off_cycle_reason_type"
4
+ require_relative "../../types/payroll_withholding_pay_period_type"
5
+ require_relative "../../types/payroll_pay_period_type"
6
+ require_relative "../../types/payroll_payroll_status_meta_type"
7
+ require_relative "../../types/payroll_totals_type"
8
+ require_relative "../../types/payroll_employee_compensations_type"
9
+ require_relative "../../types/payroll_company_taxes_type"
10
+ require_relative "../../types/payroll_payment_speed_changed_type"
11
+ require "date"
12
+ require_relative "../../types/payroll_submission_blockers_type"
13
+ require_relative "../../types/payroll_credit_blockers_type"
14
+ require_relative "../../types/payroll_processing_request"
15
+ require "ostruct"
16
+ require "json"
17
+
18
+ module Gusto
19
+ module Payrolls
20
+
21
+ class Payroll
22
+ # @return [DateTime]
23
+ attr_reader :payroll_deadline
24
+ # @return [String]
25
+ attr_reader :check_date
26
+ # @return [Boolean]
27
+ attr_reader :processed
28
+ # @return [String]
29
+ attr_reader :processed_date
30
+ # @return [String]
31
+ attr_reader :calculated_at
32
+ # @return [String]
33
+ attr_reader :payroll_uuid
34
+ # @return [String]
35
+ attr_reader :company_uuid
36
+ # @return [Boolean]
37
+ attr_reader :off_cycle
38
+ # @return [Gusto::OffCycleReasonType]
39
+ attr_reader :off_cycle_reason
40
+ # @return [Boolean]
41
+ attr_reader :auto_pilot
42
+ # @return [Boolean]
43
+ attr_reader :external
44
+ # @return [Boolean]
45
+ attr_reader :final_termination_payroll
46
+ # @return [Gusto::PayrollWithholdingPayPeriodType]
47
+ attr_reader :withholding_pay_period
48
+ # @return [Boolean]
49
+ attr_reader :skip_regular_deductions
50
+ # @return [Boolean]
51
+ attr_reader :fixed_withholding_rate
52
+ # @return [Gusto::PayrollPayPeriodType]
53
+ attr_reader :pay_period
54
+ # @return [Gusto::PayrollPayrollStatusMetaType]
55
+ attr_reader :payroll_status_meta
56
+ # @return [Gusto::PayrollTotalsType]
57
+ attr_reader :totals
58
+ # @return [Gusto::PAYROLL_EMPLOYEE_COMPENSATIONS_TYPE]
59
+ attr_reader :employee_compensations
60
+ # @return [Gusto::PAYROLL_COMPANY_TAXES_TYPE]
61
+ attr_reader :company_taxes
62
+ # @return [Gusto::PayrollPaymentSpeedChangedType]
63
+ attr_reader :payment_speed_changed
64
+ # @return [DateTime]
65
+ attr_reader :created_at
66
+ # @return [Gusto::PAYROLL_SUBMISSION_BLOCKERS_TYPE]
67
+ attr_reader :submission_blockers
68
+ # @return [Gusto::PAYROLL_CREDIT_BLOCKERS_TYPE]
69
+ attr_reader :credit_blockers
70
+ # @return [Gusto::PayrollProcessingRequest]
71
+ attr_reader :processing_request
72
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
73
+ attr_reader :additional_properties
74
+ # @return [Object]
75
+ attr_reader :_field_set
76
+ protected :_field_set
77
+
78
+ OMIT = Object.new
79
+
80
+ # @param payroll_deadline [DateTime]
81
+ # @param check_date [String]
82
+ # @param processed [Boolean]
83
+ # @param processed_date [String]
84
+ # @param calculated_at [String]
85
+ # @param payroll_uuid [String]
86
+ # @param company_uuid [String]
87
+ # @param off_cycle [Boolean]
88
+ # @param off_cycle_reason [Gusto::OffCycleReasonType]
89
+ # @param auto_pilot [Boolean]
90
+ # @param external [Boolean]
91
+ # @param final_termination_payroll [Boolean]
92
+ # @param withholding_pay_period [Gusto::PayrollWithholdingPayPeriodType]
93
+ # @param skip_regular_deductions [Boolean]
94
+ # @param fixed_withholding_rate [Boolean]
95
+ # @param pay_period [Gusto::PayrollPayPeriodType]
96
+ # @param payroll_status_meta [Gusto::PayrollPayrollStatusMetaType]
97
+ # @param totals [Gusto::PayrollTotalsType]
98
+ # @param employee_compensations [Gusto::PAYROLL_EMPLOYEE_COMPENSATIONS_TYPE]
99
+ # @param company_taxes [Gusto::PAYROLL_COMPANY_TAXES_TYPE]
100
+ # @param payment_speed_changed [Gusto::PayrollPaymentSpeedChangedType]
101
+ # @param created_at [DateTime]
102
+ # @param submission_blockers [Gusto::PAYROLL_SUBMISSION_BLOCKERS_TYPE]
103
+ # @param credit_blockers [Gusto::PAYROLL_CREDIT_BLOCKERS_TYPE]
104
+ # @param processing_request [Gusto::PayrollProcessingRequest]
105
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
106
+ # @return [Gusto::Payrolls::Payroll]
107
+ def initialize(payroll_deadline: OMIT, check_date: OMIT, processed: OMIT, processed_date: OMIT, calculated_at: OMIT, payroll_uuid: OMIT, company_uuid: OMIT, off_cycle: OMIT, off_cycle_reason: OMIT, auto_pilot: OMIT, external: OMIT, final_termination_payroll: OMIT, withholding_pay_period: OMIT, skip_regular_deductions: OMIT, fixed_withholding_rate: OMIT, pay_period: OMIT, payroll_status_meta: OMIT, totals: OMIT, employee_compensations: OMIT, company_taxes: OMIT, payment_speed_changed: OMIT, created_at: OMIT, submission_blockers: OMIT, credit_blockers: OMIT, processing_request: OMIT, additional_properties: nil)
108
+ @payroll_deadline = payroll_deadline if payroll_deadline != OMIT
109
+ @check_date = check_date if check_date != OMIT
110
+ @processed = processed if processed != OMIT
111
+ @processed_date = processed_date if processed_date != OMIT
112
+ @calculated_at = calculated_at if calculated_at != OMIT
113
+ @payroll_uuid = payroll_uuid if payroll_uuid != OMIT
114
+ @company_uuid = company_uuid if company_uuid != OMIT
115
+ @off_cycle = off_cycle if off_cycle != OMIT
116
+ @off_cycle_reason = off_cycle_reason if off_cycle_reason != OMIT
117
+ @auto_pilot = auto_pilot if auto_pilot != OMIT
118
+ @external = external if external != OMIT
119
+ @final_termination_payroll = final_termination_payroll if final_termination_payroll != OMIT
120
+ @withholding_pay_period = withholding_pay_period if withholding_pay_period != OMIT
121
+ @skip_regular_deductions = skip_regular_deductions if skip_regular_deductions != OMIT
122
+ @fixed_withholding_rate = fixed_withholding_rate if fixed_withholding_rate != OMIT
123
+ @pay_period = pay_period if pay_period != OMIT
124
+ @payroll_status_meta = payroll_status_meta if payroll_status_meta != OMIT
125
+ @totals = totals if totals != OMIT
126
+ @employee_compensations = employee_compensations if employee_compensations != OMIT
127
+ @company_taxes = company_taxes if company_taxes != OMIT
128
+ @payment_speed_changed = payment_speed_changed if payment_speed_changed != OMIT
129
+ @created_at = created_at if created_at != OMIT
130
+ @submission_blockers = submission_blockers if submission_blockers != OMIT
131
+ @credit_blockers = credit_blockers if credit_blockers != OMIT
132
+ @processing_request = processing_request if processing_request != OMIT
133
+ @additional_properties = additional_properties
134
+ @_field_set = { "payroll_deadline": payroll_deadline, "check_date": check_date, "processed": processed, "processed_date": processed_date, "calculated_at": calculated_at, "payroll_uuid": payroll_uuid, "company_uuid": company_uuid, "off_cycle": off_cycle, "off_cycle_reason": off_cycle_reason, "auto_pilot": auto_pilot, "external": external, "final_termination_payroll": final_termination_payroll, "withholding_pay_period": withholding_pay_period, "skip_regular_deductions": skip_regular_deductions, "fixed_withholding_rate": fixed_withholding_rate, "pay_period": pay_period, "payroll_status_meta": payroll_status_meta, "totals": totals, "employee_compensations": employee_compensations, "company_taxes": company_taxes, "payment_speed_changed": payment_speed_changed, "created_at": created_at, "submission_blockers": submission_blockers, "credit_blockers": credit_blockers, "processing_request": processing_request }.reject do | _k, v |
135
+ v == OMIT
136
+ end
137
+ end
138
+ # Deserialize a JSON object to an instance of Payroll
139
+ #
140
+ # @param json_object [String]
141
+ # @return [Gusto::Payrolls::Payroll]
142
+ def self.from_json(json_object:)
143
+ struct = JSON.parse(json_object, object_class: OpenStruct)
144
+ parsed_json = JSON.parse(json_object)
145
+ payroll_deadline = unless parsed_json["payroll_deadline"].nil?
146
+ DateTime.parse(parsed_json["payroll_deadline"])
147
+ else
148
+ nil
149
+ end
150
+ check_date = parsed_json["check_date"]
151
+ processed = parsed_json["processed"]
152
+ processed_date = parsed_json["processed_date"]
153
+ calculated_at = parsed_json["calculated_at"]
154
+ payroll_uuid = parsed_json["payroll_uuid"]
155
+ company_uuid = parsed_json["company_uuid"]
156
+ off_cycle = parsed_json["off_cycle"]
157
+ off_cycle_reason = parsed_json["off_cycle_reason"]
158
+ auto_pilot = parsed_json["auto_pilot"]
159
+ external = parsed_json["external"]
160
+ final_termination_payroll = parsed_json["final_termination_payroll"]
161
+ withholding_pay_period = parsed_json["withholding_pay_period"]
162
+ skip_regular_deductions = parsed_json["skip_regular_deductions"]
163
+ fixed_withholding_rate = parsed_json["fixed_withholding_rate"]
164
+ unless parsed_json["pay_period"].nil?
165
+ pay_period = parsed_json["pay_period"].to_json
166
+ pay_period = Gusto::PayrollPayPeriodType.from_json(json_object: pay_period)
167
+ else
168
+ pay_period = nil
169
+ end
170
+ unless parsed_json["payroll_status_meta"].nil?
171
+ payroll_status_meta = parsed_json["payroll_status_meta"].to_json
172
+ payroll_status_meta = Gusto::PayrollPayrollStatusMetaType.from_json(json_object: payroll_status_meta)
173
+ else
174
+ payroll_status_meta = nil
175
+ end
176
+ unless parsed_json["totals"].nil?
177
+ totals = parsed_json["totals"].to_json
178
+ totals = Gusto::PayrollTotalsType.from_json(json_object: totals)
179
+ else
180
+ totals = nil
181
+ end
182
+ employee_compensations = parsed_json["employee_compensations"]&.map do | item |
183
+ item = item.to_json
184
+ Gusto::PayrollEmployeeCompensationsTypeItem.from_json(json_object: item)
185
+ end
186
+ company_taxes = parsed_json["company_taxes"]&.map do | item |
187
+ item = item.to_json
188
+ Gusto::PayrollCompanyTaxesTypeItem.from_json(json_object: item)
189
+ end
190
+ unless parsed_json["payment_speed_changed"].nil?
191
+ payment_speed_changed = parsed_json["payment_speed_changed"].to_json
192
+ payment_speed_changed = Gusto::PayrollPaymentSpeedChangedType.from_json(json_object: payment_speed_changed)
193
+ else
194
+ payment_speed_changed = nil
195
+ end
196
+ created_at = unless parsed_json["created_at"].nil?
197
+ DateTime.parse(parsed_json["created_at"])
198
+ else
199
+ nil
200
+ end
201
+ submission_blockers = parsed_json["submission_blockers"]&.map do | item |
202
+ item = item.to_json
203
+ Gusto::PayrollSubmissionBlockersTypeItem.from_json(json_object: item)
204
+ end
205
+ credit_blockers = parsed_json["credit_blockers"]&.map do | item |
206
+ item = item.to_json
207
+ Gusto::PayrollCreditBlockersTypeItem.from_json(json_object: item)
208
+ end
209
+ unless parsed_json["processing_request"].nil?
210
+ processing_request = parsed_json["processing_request"].to_json
211
+ processing_request = Gusto::PayrollProcessingRequest.from_json(json_object: processing_request)
212
+ else
213
+ processing_request = nil
214
+ end
215
+ new(
216
+ payroll_deadline: payroll_deadline,
217
+ check_date: check_date,
218
+ processed: processed,
219
+ processed_date: processed_date,
220
+ calculated_at: calculated_at,
221
+ payroll_uuid: payroll_uuid,
222
+ company_uuid: company_uuid,
223
+ off_cycle: off_cycle,
224
+ off_cycle_reason: off_cycle_reason,
225
+ auto_pilot: auto_pilot,
226
+ external: external,
227
+ final_termination_payroll: final_termination_payroll,
228
+ withholding_pay_period: withholding_pay_period,
229
+ skip_regular_deductions: skip_regular_deductions,
230
+ fixed_withholding_rate: fixed_withholding_rate,
231
+ pay_period: pay_period,
232
+ payroll_status_meta: payroll_status_meta,
233
+ totals: totals,
234
+ employee_compensations: employee_compensations,
235
+ company_taxes: company_taxes,
236
+ payment_speed_changed: payment_speed_changed,
237
+ created_at: created_at,
238
+ submission_blockers: submission_blockers,
239
+ credit_blockers: credit_blockers,
240
+ processing_request: processing_request,
241
+ additional_properties: struct
242
+ )
243
+ end
244
+ # Serialize an instance of Payroll to a JSON object
245
+ #
246
+ # @return [String]
247
+ def to_json
248
+ @_field_set&.to_json
249
+ end
250
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
251
+ # hash and check each fields type against the current object's property
252
+ # definitions.
253
+ #
254
+ # @param obj [Object]
255
+ # @return [Void]
256
+ def self.validate_raw(obj:)
257
+ obj.payroll_deadline&.is_a?(DateTime) != false || raise("Passed value for field obj.payroll_deadline is not the expected type, validation failed.")
258
+ obj.check_date&.is_a?(String) != false || raise("Passed value for field obj.check_date is not the expected type, validation failed.")
259
+ obj.processed&.is_a?(Boolean) != false || raise("Passed value for field obj.processed is not the expected type, validation failed.")
260
+ obj.processed_date&.is_a?(String) != false || raise("Passed value for field obj.processed_date is not the expected type, validation failed.")
261
+ obj.calculated_at&.is_a?(String) != false || raise("Passed value for field obj.calculated_at is not the expected type, validation failed.")
262
+ obj.payroll_uuid&.is_a?(String) != false || raise("Passed value for field obj.payroll_uuid is not the expected type, validation failed.")
263
+ obj.company_uuid&.is_a?(String) != false || raise("Passed value for field obj.company_uuid is not the expected type, validation failed.")
264
+ obj.off_cycle&.is_a?(Boolean) != false || raise("Passed value for field obj.off_cycle is not the expected type, validation failed.")
265
+ obj.off_cycle_reason&.is_a?(Gusto::OffCycleReasonType) != false || raise("Passed value for field obj.off_cycle_reason is not the expected type, validation failed.")
266
+ obj.auto_pilot&.is_a?(Boolean) != false || raise("Passed value for field obj.auto_pilot is not the expected type, validation failed.")
267
+ obj.external&.is_a?(Boolean) != false || raise("Passed value for field obj.external is not the expected type, validation failed.")
268
+ obj.final_termination_payroll&.is_a?(Boolean) != false || raise("Passed value for field obj.final_termination_payroll is not the expected type, validation failed.")
269
+ obj.withholding_pay_period&.is_a?(Gusto::PayrollWithholdingPayPeriodType) != false || raise("Passed value for field obj.withholding_pay_period is not the expected type, validation failed.")
270
+ obj.skip_regular_deductions&.is_a?(Boolean) != false || raise("Passed value for field obj.skip_regular_deductions is not the expected type, validation failed.")
271
+ obj.fixed_withholding_rate&.is_a?(Boolean) != false || raise("Passed value for field obj.fixed_withholding_rate is not the expected type, validation failed.")
272
+ obj.pay_period.nil? || Gusto::PayrollPayPeriodType.validate_raw(obj: obj.pay_period)
273
+ obj.payroll_status_meta.nil? || Gusto::PayrollPayrollStatusMetaType.validate_raw(obj: obj.payroll_status_meta)
274
+ obj.totals.nil? || Gusto::PayrollTotalsType.validate_raw(obj: obj.totals)
275
+ obj.employee_compensations&.is_a?(Array) != false || raise("Passed value for field obj.employee_compensations is not the expected type, validation failed.")
276
+ obj.company_taxes&.is_a?(Array) != false || raise("Passed value for field obj.company_taxes is not the expected type, validation failed.")
277
+ obj.payment_speed_changed.nil? || Gusto::PayrollPaymentSpeedChangedType.validate_raw(obj: obj.payment_speed_changed)
278
+ obj.created_at&.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
279
+ obj.submission_blockers&.is_a?(Array) != false || raise("Passed value for field obj.submission_blockers is not the expected type, validation failed.")
280
+ obj.credit_blockers&.is_a?(Array) != false || raise("Passed value for field obj.credit_blockers is not the expected type, validation failed.")
281
+ obj.processing_request.nil? || Gusto::PayrollProcessingRequest.validate_raw(obj: obj.processing_request)
282
+ end
283
+ end
284
+ end
285
+ end
@@ -0,0 +1,250 @@
1
+ # frozen_string_literal: true
2
+ require "date"
3
+ require_relative "../../types/off_cycle_reason_type"
4
+ require_relative "../../types/payroll_withholding_pay_period_type"
5
+ require_relative "../../types/payroll_pay_period_type"
6
+ require_relative "../../types/payroll_payroll_status_meta_type"
7
+ require_relative "../../types/payroll_totals_type"
8
+ require_relative "../../types/payroll_payment_speed_changed_type"
9
+ require "date"
10
+ require_relative "../../types/payroll_submission_blockers_type"
11
+ require_relative "../../types/payroll_credit_blockers_type"
12
+ require "ostruct"
13
+ require "json"
14
+
15
+ module Gusto
16
+ module Payrolls
17
+
18
+ class PayrollMinimal
19
+ # @return [DateTime]
20
+ attr_reader :payroll_deadline
21
+ # @return [String]
22
+ attr_reader :check_date
23
+ # @return [Boolean]
24
+ attr_reader :processed
25
+ # @return [String]
26
+ attr_reader :processed_date
27
+ # @return [String]
28
+ attr_reader :calculated_at
29
+ # @return [String]
30
+ attr_reader :payroll_uuid
31
+ # @return [String]
32
+ attr_reader :company_uuid
33
+ # @return [Boolean]
34
+ attr_reader :off_cycle
35
+ # @return [Gusto::OffCycleReasonType]
36
+ attr_reader :off_cycle_reason
37
+ # @return [Boolean]
38
+ attr_reader :auto_pilot
39
+ # @return [Boolean]
40
+ attr_reader :external
41
+ # @return [Boolean]
42
+ attr_reader :final_termination_payroll
43
+ # @return [Gusto::PayrollWithholdingPayPeriodType]
44
+ attr_reader :withholding_pay_period
45
+ # @return [Boolean]
46
+ attr_reader :skip_regular_deductions
47
+ # @return [Boolean]
48
+ attr_reader :fixed_withholding_rate
49
+ # @return [Gusto::PayrollPayPeriodType]
50
+ attr_reader :pay_period
51
+ # @return [Gusto::PayrollPayrollStatusMetaType]
52
+ attr_reader :payroll_status_meta
53
+ # @return [Gusto::PayrollTotalsType]
54
+ attr_reader :totals
55
+ # @return [Gusto::PayrollPaymentSpeedChangedType]
56
+ attr_reader :payment_speed_changed
57
+ # @return [DateTime]
58
+ attr_reader :created_at
59
+ # @return [Gusto::PAYROLL_SUBMISSION_BLOCKERS_TYPE]
60
+ attr_reader :submission_blockers
61
+ # @return [Gusto::PAYROLL_CREDIT_BLOCKERS_TYPE]
62
+ attr_reader :credit_blockers
63
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
64
+ attr_reader :additional_properties
65
+ # @return [Object]
66
+ attr_reader :_field_set
67
+ protected :_field_set
68
+
69
+ OMIT = Object.new
70
+
71
+ # @param payroll_deadline [DateTime]
72
+ # @param check_date [String]
73
+ # @param processed [Boolean]
74
+ # @param processed_date [String]
75
+ # @param calculated_at [String]
76
+ # @param payroll_uuid [String]
77
+ # @param company_uuid [String]
78
+ # @param off_cycle [Boolean]
79
+ # @param off_cycle_reason [Gusto::OffCycleReasonType]
80
+ # @param auto_pilot [Boolean]
81
+ # @param external [Boolean]
82
+ # @param final_termination_payroll [Boolean]
83
+ # @param withholding_pay_period [Gusto::PayrollWithholdingPayPeriodType]
84
+ # @param skip_regular_deductions [Boolean]
85
+ # @param fixed_withholding_rate [Boolean]
86
+ # @param pay_period [Gusto::PayrollPayPeriodType]
87
+ # @param payroll_status_meta [Gusto::PayrollPayrollStatusMetaType]
88
+ # @param totals [Gusto::PayrollTotalsType]
89
+ # @param payment_speed_changed [Gusto::PayrollPaymentSpeedChangedType]
90
+ # @param created_at [DateTime]
91
+ # @param submission_blockers [Gusto::PAYROLL_SUBMISSION_BLOCKERS_TYPE]
92
+ # @param credit_blockers [Gusto::PAYROLL_CREDIT_BLOCKERS_TYPE]
93
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
94
+ # @return [Gusto::Payrolls::PayrollMinimal]
95
+ def initialize(payroll_deadline: OMIT, check_date: OMIT, processed:, processed_date: OMIT, calculated_at: OMIT, payroll_uuid:, company_uuid:, off_cycle: OMIT, off_cycle_reason: OMIT, auto_pilot: OMIT, external: OMIT, final_termination_payroll: OMIT, withholding_pay_period: OMIT, skip_regular_deductions: OMIT, fixed_withholding_rate: OMIT, pay_period: OMIT, payroll_status_meta: OMIT, totals: OMIT, payment_speed_changed: OMIT, created_at: OMIT, submission_blockers: OMIT, credit_blockers: OMIT, additional_properties: nil)
96
+ @payroll_deadline = payroll_deadline if payroll_deadline != OMIT
97
+ @check_date = check_date if check_date != OMIT
98
+ @processed = processed
99
+ @processed_date = processed_date if processed_date != OMIT
100
+ @calculated_at = calculated_at if calculated_at != OMIT
101
+ @payroll_uuid = payroll_uuid
102
+ @company_uuid = company_uuid
103
+ @off_cycle = off_cycle if off_cycle != OMIT
104
+ @off_cycle_reason = off_cycle_reason if off_cycle_reason != OMIT
105
+ @auto_pilot = auto_pilot if auto_pilot != OMIT
106
+ @external = external if external != OMIT
107
+ @final_termination_payroll = final_termination_payroll if final_termination_payroll != OMIT
108
+ @withholding_pay_period = withholding_pay_period if withholding_pay_period != OMIT
109
+ @skip_regular_deductions = skip_regular_deductions if skip_regular_deductions != OMIT
110
+ @fixed_withholding_rate = fixed_withholding_rate if fixed_withholding_rate != OMIT
111
+ @pay_period = pay_period if pay_period != OMIT
112
+ @payroll_status_meta = payroll_status_meta if payroll_status_meta != OMIT
113
+ @totals = totals if totals != OMIT
114
+ @payment_speed_changed = payment_speed_changed if payment_speed_changed != OMIT
115
+ @created_at = created_at if created_at != OMIT
116
+ @submission_blockers = submission_blockers if submission_blockers != OMIT
117
+ @credit_blockers = credit_blockers if credit_blockers != OMIT
118
+ @additional_properties = additional_properties
119
+ @_field_set = { "payroll_deadline": payroll_deadline, "check_date": check_date, "processed": processed, "processed_date": processed_date, "calculated_at": calculated_at, "payroll_uuid": payroll_uuid, "company_uuid": company_uuid, "off_cycle": off_cycle, "off_cycle_reason": off_cycle_reason, "auto_pilot": auto_pilot, "external": external, "final_termination_payroll": final_termination_payroll, "withholding_pay_period": withholding_pay_period, "skip_regular_deductions": skip_regular_deductions, "fixed_withholding_rate": fixed_withholding_rate, "pay_period": pay_period, "payroll_status_meta": payroll_status_meta, "totals": totals, "payment_speed_changed": payment_speed_changed, "created_at": created_at, "submission_blockers": submission_blockers, "credit_blockers": credit_blockers }.reject do | _k, v |
120
+ v == OMIT
121
+ end
122
+ end
123
+ # Deserialize a JSON object to an instance of PayrollMinimal
124
+ #
125
+ # @param json_object [String]
126
+ # @return [Gusto::Payrolls::PayrollMinimal]
127
+ def self.from_json(json_object:)
128
+ struct = JSON.parse(json_object, object_class: OpenStruct)
129
+ parsed_json = JSON.parse(json_object)
130
+ payroll_deadline = unless parsed_json["payroll_deadline"].nil?
131
+ DateTime.parse(parsed_json["payroll_deadline"])
132
+ else
133
+ nil
134
+ end
135
+ check_date = parsed_json["check_date"]
136
+ processed = parsed_json["processed"]
137
+ processed_date = parsed_json["processed_date"]
138
+ calculated_at = parsed_json["calculated_at"]
139
+ payroll_uuid = parsed_json["payroll_uuid"]
140
+ company_uuid = parsed_json["company_uuid"]
141
+ off_cycle = parsed_json["off_cycle"]
142
+ off_cycle_reason = parsed_json["off_cycle_reason"]
143
+ auto_pilot = parsed_json["auto_pilot"]
144
+ external = parsed_json["external"]
145
+ final_termination_payroll = parsed_json["final_termination_payroll"]
146
+ withholding_pay_period = parsed_json["withholding_pay_period"]
147
+ skip_regular_deductions = parsed_json["skip_regular_deductions"]
148
+ fixed_withholding_rate = parsed_json["fixed_withholding_rate"]
149
+ unless parsed_json["pay_period"].nil?
150
+ pay_period = parsed_json["pay_period"].to_json
151
+ pay_period = Gusto::PayrollPayPeriodType.from_json(json_object: pay_period)
152
+ else
153
+ pay_period = nil
154
+ end
155
+ unless parsed_json["payroll_status_meta"].nil?
156
+ payroll_status_meta = parsed_json["payroll_status_meta"].to_json
157
+ payroll_status_meta = Gusto::PayrollPayrollStatusMetaType.from_json(json_object: payroll_status_meta)
158
+ else
159
+ payroll_status_meta = nil
160
+ end
161
+ unless parsed_json["totals"].nil?
162
+ totals = parsed_json["totals"].to_json
163
+ totals = Gusto::PayrollTotalsType.from_json(json_object: totals)
164
+ else
165
+ totals = nil
166
+ end
167
+ unless parsed_json["payment_speed_changed"].nil?
168
+ payment_speed_changed = parsed_json["payment_speed_changed"].to_json
169
+ payment_speed_changed = Gusto::PayrollPaymentSpeedChangedType.from_json(json_object: payment_speed_changed)
170
+ else
171
+ payment_speed_changed = nil
172
+ end
173
+ created_at = unless parsed_json["created_at"].nil?
174
+ DateTime.parse(parsed_json["created_at"])
175
+ else
176
+ nil
177
+ end
178
+ submission_blockers = parsed_json["submission_blockers"]&.map do | item |
179
+ item = item.to_json
180
+ Gusto::PayrollSubmissionBlockersTypeItem.from_json(json_object: item)
181
+ end
182
+ credit_blockers = parsed_json["credit_blockers"]&.map do | item |
183
+ item = item.to_json
184
+ Gusto::PayrollCreditBlockersTypeItem.from_json(json_object: item)
185
+ end
186
+ new(
187
+ payroll_deadline: payroll_deadline,
188
+ check_date: check_date,
189
+ processed: processed,
190
+ processed_date: processed_date,
191
+ calculated_at: calculated_at,
192
+ payroll_uuid: payroll_uuid,
193
+ company_uuid: company_uuid,
194
+ off_cycle: off_cycle,
195
+ off_cycle_reason: off_cycle_reason,
196
+ auto_pilot: auto_pilot,
197
+ external: external,
198
+ final_termination_payroll: final_termination_payroll,
199
+ withholding_pay_period: withholding_pay_period,
200
+ skip_regular_deductions: skip_regular_deductions,
201
+ fixed_withholding_rate: fixed_withholding_rate,
202
+ pay_period: pay_period,
203
+ payroll_status_meta: payroll_status_meta,
204
+ totals: totals,
205
+ payment_speed_changed: payment_speed_changed,
206
+ created_at: created_at,
207
+ submission_blockers: submission_blockers,
208
+ credit_blockers: credit_blockers,
209
+ additional_properties: struct
210
+ )
211
+ end
212
+ # Serialize an instance of PayrollMinimal to a JSON object
213
+ #
214
+ # @return [String]
215
+ def to_json
216
+ @_field_set&.to_json
217
+ end
218
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
219
+ # hash and check each fields type against the current object's property
220
+ # definitions.
221
+ #
222
+ # @param obj [Object]
223
+ # @return [Void]
224
+ def self.validate_raw(obj:)
225
+ obj.payroll_deadline&.is_a?(DateTime) != false || raise("Passed value for field obj.payroll_deadline is not the expected type, validation failed.")
226
+ obj.check_date&.is_a?(String) != false || raise("Passed value for field obj.check_date is not the expected type, validation failed.")
227
+ obj.processed.is_a?(Boolean) != false || raise("Passed value for field obj.processed is not the expected type, validation failed.")
228
+ obj.processed_date&.is_a?(String) != false || raise("Passed value for field obj.processed_date is not the expected type, validation failed.")
229
+ obj.calculated_at&.is_a?(String) != false || raise("Passed value for field obj.calculated_at is not the expected type, validation failed.")
230
+ obj.payroll_uuid.is_a?(String) != false || raise("Passed value for field obj.payroll_uuid is not the expected type, validation failed.")
231
+ obj.company_uuid.is_a?(String) != false || raise("Passed value for field obj.company_uuid is not the expected type, validation failed.")
232
+ obj.off_cycle&.is_a?(Boolean) != false || raise("Passed value for field obj.off_cycle is not the expected type, validation failed.")
233
+ obj.off_cycle_reason&.is_a?(Gusto::OffCycleReasonType) != false || raise("Passed value for field obj.off_cycle_reason is not the expected type, validation failed.")
234
+ obj.auto_pilot&.is_a?(Boolean) != false || raise("Passed value for field obj.auto_pilot is not the expected type, validation failed.")
235
+ obj.external&.is_a?(Boolean) != false || raise("Passed value for field obj.external is not the expected type, validation failed.")
236
+ obj.final_termination_payroll&.is_a?(Boolean) != false || raise("Passed value for field obj.final_termination_payroll is not the expected type, validation failed.")
237
+ obj.withholding_pay_period&.is_a?(Gusto::PayrollWithholdingPayPeriodType) != false || raise("Passed value for field obj.withholding_pay_period is not the expected type, validation failed.")
238
+ obj.skip_regular_deductions&.is_a?(Boolean) != false || raise("Passed value for field obj.skip_regular_deductions is not the expected type, validation failed.")
239
+ obj.fixed_withholding_rate&.is_a?(Boolean) != false || raise("Passed value for field obj.fixed_withholding_rate is not the expected type, validation failed.")
240
+ obj.pay_period.nil? || Gusto::PayrollPayPeriodType.validate_raw(obj: obj.pay_period)
241
+ obj.payroll_status_meta.nil? || Gusto::PayrollPayrollStatusMetaType.validate_raw(obj: obj.payroll_status_meta)
242
+ obj.totals.nil? || Gusto::PayrollTotalsType.validate_raw(obj: obj.totals)
243
+ obj.payment_speed_changed.nil? || Gusto::PayrollPaymentSpeedChangedType.validate_raw(obj: obj.payment_speed_changed)
244
+ obj.created_at&.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
245
+ obj.submission_blockers&.is_a?(Array) != false || raise("Passed value for field obj.submission_blockers is not the expected type, validation failed.")
246
+ obj.credit_blockers&.is_a?(Array) != false || raise("Passed value for field obj.credit_blockers is not the expected type, validation failed.")
247
+ end
248
+ end
249
+ end
250
+ end