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.
- checksums.yaml +7 -0
- data/lib/base_gusto.rb +175 -0
- data/lib/core/file_utilities.rb +27 -0
- data/lib/environment.rb +9 -0
- data/lib/fern_gusto/ach_transactions/client.rb +119 -0
- data/lib/fern_gusto/admins/types/admin.rb +82 -0
- data/lib/fern_gusto/companies/attachments/client.rb +335 -0
- data/lib/fern_gusto/companies/attachments/types/attachments_create_request_category.rb +15 -0
- data/lib/fern_gusto/companies/attachments/types/attachments_get_download_url_response.rb +56 -0
- data/lib/fern_gusto/companies/bank_accounts/client.rb +435 -0
- data/lib/fern_gusto/companies/bank_accounts/types/bank_accounts_create_request_account_type.rb +15 -0
- data/lib/fern_gusto/companies/benefits/client.rb +862 -0
- data/lib/fern_gusto/companies/client.rb +1104 -0
- data/lib/fern_gusto/companies/departments/client.rb +587 -0
- data/lib/fern_gusto/companies/departments/types/departments_add_people_request_contractors_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_add_people_request_employees_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_contractors_item.rb +59 -0
- data/lib/fern_gusto/companies/departments/types/departments_remove_people_request_employees_item.rb +59 -0
- data/lib/fern_gusto/companies/employees/client.rb +376 -0
- data/lib/fern_gusto/companies/external_payrolls/client.rb +605 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item.rb +98 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_benefits_item.rb +79 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item.rb +87 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_earnings_item_earning_type.rb +15 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_request_external_payroll_items_item_taxes_item.rb +69 -0
- data/lib/fern_gusto/companies/external_payrolls/types/external_payrolls_update_tax_liabilities_request_liability_selections_item.rb +80 -0
- data/lib/fern_gusto/companies/federal_tax_details/client.rb +212 -0
- data/lib/fern_gusto/companies/federal_tax_details/types/federal_tax_details_update_request_tax_payer_type.rb +25 -0
- data/lib/fern_gusto/companies/forms/client.rb +345 -0
- data/lib/fern_gusto/companies/industry_selection/client.rb +207 -0
- data/lib/fern_gusto/companies/locations/client.rb +417 -0
- data/lib/fern_gusto/companies/pay_schedules/client.rb +377 -0
- data/lib/fern_gusto/companies/payment_configs/client.rb +198 -0
- data/lib/fern_gusto/companies/payment_configs/types/payment_configs_update_request_payment_speed.rb +19 -0
- data/lib/fern_gusto/companies/signatories/client.rb +513 -0
- data/lib/fern_gusto/companies/signatories/types/signatories_create_request_home_address.rb +89 -0
- data/lib/fern_gusto/companies/signatories/types/signatories_update_request_home_address.rb +88 -0
- data/lib/fern_gusto/companies/tax_requirements/client.rb +367 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_list_response_item.rb +75 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item.rb +88 -0
- data/lib/fern_gusto/companies/tax_requirements/types/tax_requirements_update_state_request_requirement_sets_item_requirements_item.rb +70 -0
- data/lib/fern_gusto/companies/types/companies_accept_terms_response.rb +56 -0
- data/lib/fern_gusto/companies/types/companies_create_request_company.rb +83 -0
- data/lib/fern_gusto/companies/types/companies_create_request_user.rb +81 -0
- data/lib/fern_gusto/companies/types/companies_create_response.rb +82 -0
- data/lib/fern_gusto/companies/types/companies_get_custom_fields_response.rb +59 -0
- data/lib/fern_gusto/companies/types/companies_migrate_to_embedded_payroll_response.rb +68 -0
- data/lib/fern_gusto/companies/types/companies_retrieve_terms_response.rb +56 -0
- data/lib/fern_gusto/companies/types/company.rb +223 -0
- data/lib/fern_gusto/companies/types/company_company_status.rb +21 -0
- data/lib/fern_gusto/companies/types/company_compensations.rb +85 -0
- data/lib/fern_gusto/companies/types/company_compensations_fixed_item.rb +55 -0
- data/lib/fern_gusto/companies/types/company_compensations_hourly_item.rb +65 -0
- data/lib/fern_gusto/companies/types/company_compensations_paid_time_off_item.rb +55 -0
- data/lib/fern_gusto/companies/types/company_entity_type.rb +23 -0
- data/lib/fern_gusto/companies/types/company_funding_type.rb +15 -0
- data/lib/fern_gusto/companies/types/company_onboarding_status.rb +77 -0
- data/lib/fern_gusto/companies/types/company_onboarding_status_onboarding_steps_item.rb +97 -0
- data/lib/fern_gusto/companies/types/company_pay_schedule_type.rb +15 -0
- data/lib/fern_gusto/companies/types/company_primary_payroll_admin.rb +80 -0
- data/lib/fern_gusto/companies/types/company_primary_signatory.rb +100 -0
- data/lib/fern_gusto/companies/types/company_primary_signatory_home_address.rb +93 -0
- data/lib/fern_gusto/companies/types/company_tier.rb +20 -0
- data/lib/fern_gusto/company_attachment/types/company_attachment.rb +81 -0
- data/lib/fern_gusto/company_attachment/types/company_attachment_category.rb +13 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account.rb +157 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_plaid_status.rb +14 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_status.rb +19 -0
- data/lib/fern_gusto/company_bank_accounts/types/company_bank_account_verification_type.rb +17 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary.rb +104 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees.rb +113 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits.rb +107 -0
- data/lib/fern_gusto/company_benefits/types/benefit_summary_employees_payroll_benefits_pay_period.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements.rb +156 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_catch_up_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_company_contribution_annual_maximum_default_value.rb +68 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_contribution_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount.rb +87 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_amount_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_coverage_salary_multiplier_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_deduct_as_percentage_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction.rb +88 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_employee_deduction_default_value.rb +67 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option.rb +86 -0
- data/lib/fern_gusto/company_benefits/types/benefit_type_requirements_limit_option_default_value.rb +67 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_info.rb +78 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_status.rb +14 -0
- data/lib/fern_gusto/contractor/types/contractor_onboarding_status_onboarding_steps_item.rb +88 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group.rb +145 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_payment_method.rb +15 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_for_group_wage_type.rb +13 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group.rb +127 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal.rb +116 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_minimal_totals.rb +74 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_status.rb +16 -0
- data/lib/fern_gusto/contractor_payment_groups/types/contractor_payment_group_totals.rb +74 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account.rb +94 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method.rb +96 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_split_by.rb +15 -0
- data/lib/fern_gusto/contractor_payment_method/types/contractor_payment_method_type.rb +14 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment.rb +146 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_payment_method.rb +15 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_status.rb +13 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary.rb +81 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates.rb +81 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_contractor_payments_item.rb +93 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_by_dates_total.rb +67 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_contractor_payments_item.rb +86 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_summary_total.rb +67 -0
- data/lib/fern_gusto/contractor_payments/types/contractor_payment_wage_type.rb +13 -0
- data/lib/fern_gusto/contractors/client.rb +1025 -0
- data/lib/fern_gusto/contractors/documents/client.rb +269 -0
- data/lib/fern_gusto/contractors/documents/types/documents_sign_request_fields_item.rb +67 -0
- data/lib/fern_gusto/contractors/forms/client.rb +343 -0
- data/lib/fern_gusto/contractors/payment_groups/client.rb +569 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item.rb +102 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_create_request_contractor_payments_item_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item.rb +102 -0
- data/lib/fern_gusto/contractors/payment_groups/types/payment_groups_preview_request_contractor_payments_item_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payment_method/client.rb +369 -0
- data/lib/fern_gusto/contractors/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/contractors/payment_method/types/payment_method_update_request_type.rb +17 -0
- data/lib/fern_gusto/contractors/payments/client.rb +558 -0
- data/lib/fern_gusto/contractors/payments/types/payments_create_request_payment_method.rb +15 -0
- data/lib/fern_gusto/contractors/payments/types/payments_list_response.rb +62 -0
- data/lib/fern_gusto/contractors/types/contractor.rb +227 -0
- data/lib/fern_gusto/contractors/types/contractor_address.rb +94 -0
- data/lib/fern_gusto/contractors/types/contractor_onboarding_status.rb +18 -0
- data/lib/fern_gusto/contractors/types/contractor_type.rb +13 -0
- data/lib/fern_gusto/contractors/types/contractor_wage_type.rb +13 -0
- data/lib/fern_gusto/custom_fields/types/company_custom_field.rb +88 -0
- data/lib/fern_gusto/custom_fields/types/custom_field_type.rb +16 -0
- data/lib/fern_gusto/custom_fields/types/employee_custom_field.rb +104 -0
- data/lib/fern_gusto/documents/types/document.rb +167 -0
- data/lib/fern_gusto/documents/types/document_fields_item.rb +114 -0
- data/lib/fern_gusto/documents/types/document_pages_item.rb +65 -0
- data/lib/fern_gusto/documents/types/document_recipient_type.rb +15 -0
- data/lib/fern_gusto/documents/types/document_signed.rb +137 -0
- data/lib/fern_gusto/documents/types/document_signed_recipient_type.rb +15 -0
- data/lib/fern_gusto/earning_types/types/earning_type.rb +66 -0
- data/lib/fern_gusto/employee_employments/types/unprocessed_termination_pay_period.rb +101 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_bank_account.rb +94 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_bank_account_account_type.rb +13 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_info.rb +96 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_split_by.rb +15 -0
- data/lib/fern_gusto/employee_payment_method/types/employee_payment_method_type.rb +14 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax.rb +144 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_federal_tax_w4data_type.rb +13 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax.rb +90 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_answer.rb +74 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format.rb +69 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_input_question_format_options_item.rb +67 -0
- data/lib/fern_gusto/employee_tax_setup/types/employee_state_tax_question.rb +96 -0
- data/lib/fern_gusto/employees/adresses/client.rb +885 -0
- data/lib/fern_gusto/employees/benefits/client.rb +656 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution.rb +93 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_type.rb +23 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value.rb +67 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_contribution_value_item.rb +80 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_create_request_deduction_reduces_taxable_income.rb +18 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution.rb +93 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_type.rb +23 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value.rb +67 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_contribution_value_item.rb +80 -0
- data/lib/fern_gusto/employees/benefits/types/benefits_update_request_deduction_reduces_taxable_income.rb +18 -0
- data/lib/fern_gusto/employees/client.rb +822 -0
- data/lib/fern_gusto/employees/employments/client.rb +799 -0
- data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item.rb +95 -0
- data/lib/fern_gusto/employees/employments/types/employments_get_history_response_item_employment_status.rb +20 -0
- data/lib/fern_gusto/employees/forms/client.rb +433 -0
- data/lib/fern_gusto/employees/forms/types/forms_generate_w2response.rb +132 -0
- data/lib/fern_gusto/employees/garnishments/client.rb +558 -0
- data/lib/fern_gusto/employees/garnishments/types/garnishments_create_request_garnishment_type.rb +20 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/client.rb +938 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_minimum_wages_item.rb +62 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_create_compensation_request_payment_unit.rb +19 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_minimum_wages_item.rb +62 -0
- data/lib/fern_gusto/employees/jobs_and_compensations/types/jobs_and_compensations_update_compensation_request_payment_unit.rb +19 -0
- data/lib/fern_gusto/employees/payment_method/client.rb +484 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_create_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_bank_account_request_account_type.rb +14 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_split_by.rb +17 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_splits_item.rb +83 -0
- data/lib/fern_gusto/employees/payment_method/types/payment_method_update_request_type.rb +16 -0
- data/lib/fern_gusto/employees/tax_setup/client.rb +422 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item.rb +73 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item.rb +73 -0
- data/lib/fern_gusto/employees/tax_setup/types/tax_setup_update_state_taxes_request_states_item_questions_item_answers_item.rb +77 -0
- data/lib/fern_gusto/employees/types/employee.rb +281 -0
- data/lib/fern_gusto/employees/types/employee_current_employment_status.rb +20 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_info.rb +77 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_status.rb +19 -0
- data/lib/fern_gusto/employees/types/employee_onboarding_status_onboarding_steps_item.rb +88 -0
- data/lib/fern_gusto/employees/types/employee_payment_method.rb +13 -0
- data/lib/fern_gusto/employees/types/employees_get_custom_fields_response.rb +59 -0
- data/lib/fern_gusto/employees/types/employees_get_request_include.rb +12 -0
- data/lib/fern_gusto/events/client.rb +144 -0
- data/lib/fern_gusto/events/types/events_list_request_sort_order.rb +12 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll.rb +158 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_benefits_item.rb +73 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_earnings_item.rb +87 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_applicable_taxes_item.rb +85 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_basic.rb +101 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_basic_status.rb +16 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item.rb +93 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_benefits_item.rb +74 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_earnings_item.rb +81 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_external_payroll_items_item_taxes_item.rb +67 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_metadata.rb +56 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_status.rb +16 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions.rb +72 -0
- data/lib/fern_gusto/external_payrolls/types/external_payroll_tax_suggestions_tax_suggestions.rb +68 -0
- data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections.rb +86 -0
- data/lib/fern_gusto/external_payrolls/types/tax_liabilities_selections_possible_liabilities.rb +75 -0
- data/lib/fern_gusto/federal_tax_details/types/federal_tax_details.rb +140 -0
- data/lib/fern_gusto/flows/client.rb +113 -0
- data/lib/fern_gusto/flows/types/flow.rb +66 -0
- data/lib/fern_gusto/flows/types/flows_create_request_entity_type.rb +14 -0
- data/lib/fern_gusto/forms/types/form.rb +123 -0
- data/lib/fern_gusto/forms/types/form1099.rb +126 -0
- data/lib/fern_gusto/generated_documents/client.rb +106 -0
- data/lib/fern_gusto/holiday_pay_policies/client.rb +599 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_add_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays.rb +198 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_christmas_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_columbus_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_independence_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_juneteenth.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_labor_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_memorial_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_mlk_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_new_years_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_presidents_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_thanksgiving.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_create_request_federal_holidays_veterans_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_remove_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays.rb +198 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_christmas_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_columbus_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_independence_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_juneteenth.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_labor_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_memorial_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_mlk_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_new_years_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_presidents_day.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_thanksgiving.rb +57 -0
- data/lib/fern_gusto/holiday_pay_policies/types/holiday_pay_policies_update_request_federal_holidays_veterans_day.rb +57 -0
- data/lib/fern_gusto/industry/types/industry.rb +87 -0
- data/lib/fern_gusto/invoices/client.rb +132 -0
- data/lib/fern_gusto/jobs_and_compensations/types/compensation.rb +120 -0
- data/lib/fern_gusto/jobs_and_compensations/types/compensation_payment_unit.rb +17 -0
- data/lib/fern_gusto/jobs_and_compensations/types/job.rb +161 -0
- data/lib/fern_gusto/locations/types/company_address.rb +103 -0
- data/lib/fern_gusto/locations/types/location.rb +171 -0
- data/lib/fern_gusto/notifications/client.rb +120 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule.rb +151 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment.rb +103 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_department.rb +65 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee.rb +65 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_employee_change.rb +105 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_pay_period.rb +80 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview.rb +71 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_preview_type.rb +15 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_transition_pay_period.rb +68 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_assignment_type.rb +15 -0
- data/lib/fern_gusto/pay_schedules/types/pay_schedule_frequency.rb +17 -0
- data/lib/fern_gusto/payment_configs/types/payment_configs.rb +79 -0
- data/lib/fern_gusto/payroll/client.rb +1644 -0
- data/lib/fern_gusto/payroll/earning_types/client.rb +350 -0
- data/lib/fern_gusto/payroll/earning_types/types/earning_types_get_response.rb +74 -0
- data/lib/fern_gusto/payroll/external_payrolls/client.rb +199 -0
- data/lib/fern_gusto/payroll/pay_schedules/client.rb +584 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_create_request_frequency.rb +17 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_request_frequency.rb +16 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response.rb +72 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_preview_response_pay_periods_item.rb +83 -0
- data/lib/fern_gusto/payroll/pay_schedules/types/pay_schedules_update_request_frequency.rb +17 -0
- data/lib/fern_gusto/payroll/types/payroll_create_request_off_cycle_reason.rb +15 -0
- data/lib/fern_gusto/payroll/types/payroll_create_request_withholding_pay_period.rb +18 -0
- data/lib/fern_gusto/payroll/types/payroll_get_request_include_item.rb +14 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_include_item.rb +13 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_payroll_types_item.rb +13 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_processing_statuses_item.rb +12 -0
- data/lib/fern_gusto/payroll/types/payroll_list_request_sort_order.rb +12 -0
- data/lib/fern_gusto/payroll/types/payroll_skip_payroll_request_payroll_type.rb +15 -0
- data/lib/fern_gusto/payroll/types/payroll_submit_request_submission_blockers_item.rb +67 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item.rb +133 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_fixed_compensations_item.rb +79 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_hourly_compensations_item.rb +79 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_paid_time_off_item.rb +85 -0
- data/lib/fern_gusto/payroll/types/payroll_update_request_employee_compensations_item_payment_method.rb +13 -0
- data/lib/fern_gusto/payrolls/types/employee_pay_stub.rb +94 -0
- data/lib/fern_gusto/payrolls/types/paid_time_off.rb +123 -0
- data/lib/fern_gusto/payrolls/types/paid_time_off_name.rb +14 -0
- data/lib/fern_gusto/payrolls/types/pay_period.rb +86 -0
- data/lib/fern_gusto/payrolls/types/pay_period_payroll.rb +107 -0
- data/lib/fern_gusto/payrolls/types/pay_period_payroll_payroll_type.rb +13 -0
- data/lib/fern_gusto/payrolls/types/payroll.rb +285 -0
- data/lib/fern_gusto/payrolls/types/payroll_minimal.rb +250 -0
- data/lib/fern_gusto/payrolls/types/payroll_prepared.rb +250 -0
- data/lib/fern_gusto/recovery_cases/client.rb +198 -0
- data/lib/fern_gusto/reports/client.rb +306 -0
- data/lib/fern_gusto/reports/types/reports_create_request_columns_item.rb +91 -0
- data/lib/fern_gusto/reports/types/reports_create_request_employment_status.rb +18 -0
- data/lib/fern_gusto/reports/types/reports_create_request_employment_type.rb +16 -0
- data/lib/fern_gusto/reports/types/reports_create_request_file_type.rb +13 -0
- data/lib/fern_gusto/reports/types/reports_create_request_groupings_item.rb +14 -0
- data/lib/fern_gusto/reports/types/reports_create_request_payment_method.rb +13 -0
- data/lib/fern_gusto/signatories/types/signatory.rb +175 -0
- data/lib/fern_gusto/signatories/types/signatory_home_address.rb +93 -0
- data/lib/fern_gusto/signatories/types/signatory_identity_verification_status.rb +28 -0
- data/lib/fern_gusto/terminations/types/termination.rb +109 -0
- data/lib/fern_gusto/time_off_policies/client.rb +863 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_add_employees_request_employees_item.rb +67 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_create_request_accrual_method.rb +19 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_remove_employees_request_employees_item.rb +57 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_balance_request_employees_item.rb +67 -0
- data/lib/fern_gusto/time_off_policies/types/time_off_policies_update_request_accrual_method.rb +19 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request.rb +141 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_approver.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_employee.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_initiator.rb +66 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_request_type.rb +13 -0
- data/lib/fern_gusto/time_off_requests/types/time_off_request_status.rb +14 -0
- data/lib/fern_gusto/token/client.rb +270 -0
- data/lib/fern_gusto/token/types/token_get_info_response.rb +85 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource.rb +64 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource_owner.rb +65 -0
- data/lib/fern_gusto/token/types/token_get_info_response_resource_owner_type.rb +13 -0
- data/lib/fern_gusto/token/types/token_get_system_access_token_response.rb +77 -0
- data/lib/fern_gusto/types/accruing_time_off_hour.rb +64 -0
- data/lib/fern_gusto/types/ach_transaction.rb +162 -0
- data/lib/fern_gusto/types/ach_transaction_payment_direction.rb +11 -0
- data/lib/fern_gusto/types/ach_transaction_payment_event_type.rb +11 -0
- data/lib/fern_gusto/types/ach_transaction_payment_status.rb +13 -0
- data/lib/fern_gusto/types/ach_transaction_recipient_type.rb +11 -0
- data/lib/fern_gusto/types/address.rb +111 -0
- data/lib/fern_gusto/types/authentication.rb +96 -0
- data/lib/fern_gusto/types/child_support_data.rb +58 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item.rb +104 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_fips_codes_item.rb +67 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item.rb +70 -0
- data/lib/fern_gusto/types/child_support_data_agencies_item_required_attributes_item_key.rb +14 -0
- data/lib/fern_gusto/types/company_benefit.rb +135 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits.rb +148 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item.rb +115 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution.rb +91 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value.rb +61 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers.rb +60 -0
- data/lib/fern_gusto/types/company_benefit_with_employee_benefits_employee_benefits_item_contribution_value_tiers_tiers_item.rb +86 -0
- data/lib/fern_gusto/types/contractor_address_info.rb +118 -0
- data/lib/fern_gusto/types/contractor_body.rb +200 -0
- data/lib/fern_gusto/types/contractor_body_type.rb +11 -0
- data/lib/fern_gusto/types/contractor_body_wage_type.rb +11 -0
- data/lib/fern_gusto/types/contractor_payment_receipt.rb +161 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_contractor_payments_item.rb +120 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_licensee.rb +92 -0
- data/lib/fern_gusto/types/contractor_payment_receipt_totals.rb +54 -0
- data/lib/fern_gusto/types/create_report.rb +77 -0
- data/lib/fern_gusto/types/department.rb +103 -0
- data/lib/fern_gusto/types/department_contractors_item.rb +53 -0
- data/lib/fern_gusto/types/department_employees_item.rb +53 -0
- data/lib/fern_gusto/types/document_pdf.rb +63 -0
- data/lib/fern_gusto/types/employee_address.rb +139 -0
- data/lib/fern_gusto/types/employee_benefit.rb +220 -0
- data/lib/fern_gusto/types/employee_benefit_base_object.rb +199 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution.rb +89 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value.rb +61 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers.rb +59 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_contribution_value_tiers_tiers_item.rb +85 -0
- data/lib/fern_gusto/types/employee_benefit_base_object_deduction_reduces_taxable_income.rb +14 -0
- data/lib/fern_gusto/types/employee_benefit_for_company_benefit.rb +220 -0
- data/lib/fern_gusto/types/employee_work_address.rb +137 -0
- data/lib/fern_gusto/types/entity_error_object.rb +102 -0
- data/lib/fern_gusto/types/entity_error_object_errors_item.rb +89 -0
- data/lib/fern_gusto/types/event.rb +99 -0
- data/lib/fern_gusto/types/flsa_status_type.rb +23 -0
- data/lib/fern_gusto/types/form_pdf.rb +63 -0
- data/lib/fern_gusto/types/garnishment.rb +172 -0
- data/lib/fern_gusto/types/garnishment_child_support.rb +113 -0
- data/lib/fern_gusto/types/garnishment_child_support_payment_period.rb +14 -0
- data/lib/fern_gusto/types/garnishment_garnishment_type.rb +16 -0
- data/lib/fern_gusto/types/generated_document.rb +70 -0
- data/lib/fern_gusto/types/gross_up_pay.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body.rb +156 -0
- data/lib/fern_gusto/types/historical_employee_body_employee_state_taxes.rb +80 -0
- data/lib/fern_gusto/types/historical_employee_body_home_address.rb +84 -0
- data/lib/fern_gusto/types/historical_employee_body_job.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body_termination.rb +53 -0
- data/lib/fern_gusto/types/historical_employee_body_work_address.rb +53 -0
- data/lib/fern_gusto/types/holiday_pay_policy.rb +88 -0
- data/lib/fern_gusto/types/holiday_pay_policy_employees_item.rb +53 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item.rb +179 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_columbus_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_independence_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_juneteenth.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_labor_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_memorial_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_mlk_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_new_years_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_presidents_day.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_thanksgiving.rb +72 -0
- data/lib/fern_gusto/types/holiday_pay_policy_federal_holidays_item_veterans_day.rb +72 -0
- data/lib/fern_gusto/types/invoice_data.rb +58 -0
- data/lib/fern_gusto/types/invoice_data_active_companies_item.rb +91 -0
- data/lib/fern_gusto/types/minimum_wage.rb +96 -0
- data/lib/fern_gusto/types/notification.rb +125 -0
- data/lib/fern_gusto/types/notification_resources_item.rb +85 -0
- data/lib/fern_gusto/types/off_cycle_reason_type.rb +19 -0
- data/lib/fern_gusto/types/paid_holidays.rb +61 -0
- data/lib/fern_gusto/types/paid_holidays_schema.rb +77 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body.rb +111 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_departments_item.rb +65 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_employees_item.rb +64 -0
- data/lib/fern_gusto/types/pay_schedule_assignment_body_type.rb +13 -0
- data/lib/fern_gusto/types/payment_method_bank_account.rb +87 -0
- data/lib/fern_gusto/types/payroll_blocker.rb +63 -0
- data/lib/fern_gusto/types/payroll_blockers_error.rb +60 -0
- data/lib/fern_gusto/types/payroll_blockers_error_errors_item.rb +83 -0
- data/lib/fern_gusto/types/payroll_blockers_error_errors_item_metadata.rb +54 -0
- data/lib/fern_gusto/types/payroll_check.rb +84 -0
- data/lib/fern_gusto/types/payroll_company_taxes_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_company_taxes_type_item.rb +70 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item.rb +89 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item_status.rb +13 -0
- data/lib/fern_gusto/types/payroll_credit_blockers_type_item_unblock_options_item.rb +72 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item.rb +216 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_benefits_item.rb +79 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_deductions_item.rb +65 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_fixed_compensations_item.rb +74 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_hourly_compensations_item.rb +92 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_paid_time_off_item.rb +76 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_payment_method.rb +11 -0
- data/lib/fern_gusto/types/payroll_employee_compensations_type_item_taxes_item.rb +70 -0
- data/lib/fern_gusto/types/payroll_fixed_compensation_types_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_fixed_compensation_types_type_item.rb +54 -0
- data/lib/fern_gusto/types/payroll_pay_period_type.rb +70 -0
- data/lib/fern_gusto/types/payroll_payment_speed_changed_type.rb +86 -0
- data/lib/fern_gusto/types/payroll_payroll_status_meta_type.rb +92 -0
- data/lib/fern_gusto/types/payroll_processing_request.rb +68 -0
- data/lib/fern_gusto/types/payroll_processing_request_status.rb +14 -0
- data/lib/fern_gusto/types/payroll_receipt.rb +177 -0
- data/lib/fern_gusto/types/payroll_receipt_employee_compensations_item.rb +116 -0
- data/lib/fern_gusto/types/payroll_receipt_licensee.rb +92 -0
- data/lib/fern_gusto/types/payroll_receipt_taxes_item.rb +63 -0
- data/lib/fern_gusto/types/payroll_receipt_totals.rb +85 -0
- data/lib/fern_gusto/types/payroll_reversal.rb +91 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type.rb +6 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item.rb +89 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item_status.rb +11 -0
- data/lib/fern_gusto/types/payroll_submission_blockers_type_item_unblock_options_item.rb +72 -0
- data/lib/fern_gusto/types/payroll_totals_type.rb +199 -0
- data/lib/fern_gusto/types/payroll_withholding_pay_period_type.rb +17 -0
- data/lib/fern_gusto/types/recovery_case.rb +131 -0
- data/lib/fern_gusto/types/recovery_case_status.rb +14 -0
- data/lib/fern_gusto/types/rehire.rb +116 -0
- data/lib/fern_gusto/types/rehire_body.rb +91 -0
- data/lib/fern_gusto/types/rehire_body_employment_status.rb +16 -0
- data/lib/fern_gusto/types/rehire_employment_status.rb +16 -0
- data/lib/fern_gusto/types/report.rb +72 -0
- data/lib/fern_gusto/types/report_template.rb +77 -0
- data/lib/fern_gusto/types/supported_benefit.rb +122 -0
- data/lib/fern_gusto/types/tax_requirement.rb +111 -0
- data/lib/fern_gusto/types/tax_requirement_applicable_if_item.rb +69 -0
- data/lib/fern_gusto/types/tax_requirement_applicable_if_item_value.rb +72 -0
- data/lib/fern_gusto/types/tax_requirement_effective_from.rb +5 -0
- data/lib/fern_gusto/types/tax_requirement_metadata.rb +182 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_options_item.rb +70 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_rate_type.rb +13 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_type.rb +31 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_validation.rb +81 -0
- data/lib/fern_gusto/types/tax_requirement_metadata_validation_type.rb +11 -0
- data/lib/fern_gusto/types/tax_requirement_set.rb +90 -0
- data/lib/fern_gusto/types/tax_requirements_state.rb +75 -0
- data/lib/fern_gusto/types/time_off_activity.rb +107 -0
- data/lib/fern_gusto/types/time_off_activity_time_off_type.rb +11 -0
- data/lib/fern_gusto/types/time_off_policy.rb +183 -0
- data/lib/fern_gusto/types/time_off_policy_employees_item.rb +53 -0
- data/lib/fern_gusto/types/time_off_policy_policy_type.rb +11 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body.rb +59 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_errors.rb +57 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_errors_base_item.rb +72 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item.rb +65 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item.rb +69 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_body_item_questions_item_answers_item.rb +72 -0
- data/lib/fern_gusto/types/unprocessable_entity_error_object.rb +63 -0
- data/lib/fern_gusto/types/versionable.rb +57 -0
- data/lib/fern_gusto/types/versionable_required.rb +55 -0
- data/lib/fern_gusto/types/wire_in_request.rb +170 -0
- data/lib/fern_gusto/types/wire_in_request_status.rb +14 -0
- data/lib/fern_gusto/webhooks/client.rb +627 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription.rb +82 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription_status.rb +14 -0
- data/lib/fern_gusto/webhooks/types/webhook_subscription_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/webhooks/types/webhooks_create_request_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/webhooks/types/webhooks_update_request_subscription_types_item.rb +25 -0
- data/lib/fern_gusto/wire_in_requests/client.rb +273 -0
- data/lib/fern_gusto.rb +310 -0
- data/lib/gemconfig.rb +13 -0
- data/lib/gusto_legacy.rb +19 -0
- data/lib/requests.rb +206 -0
- data/lib/types_export.rb +461 -0
- metadata +671 -0
@@ -0,0 +1,182 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "tax_requirement_metadata_type"
|
3
|
+
require_relative "tax_requirement_metadata_options_item"
|
4
|
+
require_relative "tax_requirement_metadata_rate_type"
|
5
|
+
require_relative "tax_requirement_metadata_validation"
|
6
|
+
require "ostruct"
|
7
|
+
require "json"
|
8
|
+
|
9
|
+
module Gusto
|
10
|
+
|
11
|
+
class TaxRequirementMetadata
|
12
|
+
# @return [Gusto::TaxRequirementMetadataType] Describes the type of requirement - each type may have additional metadata
|
13
|
+
# properties to describe possible values, formats, etc.
|
14
|
+
# - `text`: free-text input, no additional requirements
|
15
|
+
# - `currency`: a value representing a dollar amount, e.g. `374.55` representing
|
16
|
+
# `$374.55`
|
17
|
+
# - `radio`: choose one of options provided, see `options`
|
18
|
+
# - `select`: choose one of options provided, see `options`
|
19
|
+
# - `percent`: A decimal value representing a percentage, e.g. `0.034`
|
20
|
+
# representing `3.4%`
|
21
|
+
# - `account_number`: An account number for a tax agency, more information
|
22
|
+
# provided by `mask` and `prefix`
|
23
|
+
# - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing
|
24
|
+
# a tax rate of `3.4%`, see `validation` for additional validation guidance
|
25
|
+
# - `workers_compensation_rate`: A decimal value representing a percentage, see
|
26
|
+
# `risk_class_code`, `risk_class_description`, and `rate_type`
|
27
|
+
attr_reader :type
|
28
|
+
# @return [Array<Gusto::TaxRequirementMetadataOptionsItem>] [for `select` or `radio`] An array of objects describing the possible values.
|
29
|
+
attr_reader :options
|
30
|
+
# @return [String] [for `workers_compensation_rate`] The industry risk class code for the rate
|
31
|
+
# being requested
|
32
|
+
attr_reader :risk_class_code
|
33
|
+
# @return [String] [for `workers_compensation_rate`] A description of the industry risk class for
|
34
|
+
# the rate being requested
|
35
|
+
attr_reader :risk_class_description
|
36
|
+
# @return [Gusto::TaxRequirementMetadataRateType] [for `workers_compensation_rate`] The type of rate being collected. Either:
|
37
|
+
# - `percent`: A percentage formatted as a decimal, e.g. `0.01` for 1%
|
38
|
+
# - `currency_per_hour`: A dollar amount per hour, e.g. `3.24` for $3.24/hr
|
39
|
+
attr_reader :rate_type
|
40
|
+
# @return [String] [for `account_number`] A pattern describing the format of the account number
|
41
|
+
# The mask is a sequence of characters representing the requirements of the actual
|
42
|
+
# account number. Each character in the mask represents a single character in the
|
43
|
+
# account number as follows:
|
44
|
+
# - `#`: a digit (`\d`)
|
45
|
+
# - `@`: a upper or lower case letter (`[a-zA-Z]`)
|
46
|
+
# - `^`: an uppercase letter (`[A-Z]`)
|
47
|
+
# - `%`: a digit or uppercase letter (`[0-9A-Z]`)
|
48
|
+
# - any other character represents the literal character
|
49
|
+
# Examples:
|
50
|
+
# - mask: `WHT-######` represents `WHT-` followed by 5 digits, e.g. `WHT-33421`
|
51
|
+
# - mask: `%####-^^` supports values of `75544-AB` and `Z7654-HK`
|
52
|
+
attr_reader :mask
|
53
|
+
# @return [String] [for `account_number`] A value that precedes the value to be collected - useful
|
54
|
+
# for display, but should not be submitted as part of the value. E.g. some tax
|
55
|
+
# agencies use an account number that is a company's federal ein plus two digits.
|
56
|
+
# In that case the mask would be `##` and the prefix `XXXXX1234`.
|
57
|
+
attr_reader :prefix
|
58
|
+
# @return [Gusto::TaxRequirementMetadataValidation] [for `tax_rate`] Describes the validation required for the tax rate
|
59
|
+
attr_reader :validation
|
60
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
61
|
+
attr_reader :additional_properties
|
62
|
+
# @return [Object]
|
63
|
+
attr_reader :_field_set
|
64
|
+
protected :_field_set
|
65
|
+
|
66
|
+
OMIT = Object.new
|
67
|
+
|
68
|
+
# @param type [Gusto::TaxRequirementMetadataType] Describes the type of requirement - each type may have additional metadata
|
69
|
+
# properties to describe possible values, formats, etc.
|
70
|
+
# - `text`: free-text input, no additional requirements
|
71
|
+
# - `currency`: a value representing a dollar amount, e.g. `374.55` representing
|
72
|
+
# `$374.55`
|
73
|
+
# - `radio`: choose one of options provided, see `options`
|
74
|
+
# - `select`: choose one of options provided, see `options`
|
75
|
+
# - `percent`: A decimal value representing a percentage, e.g. `0.034`
|
76
|
+
# representing `3.4%`
|
77
|
+
# - `account_number`: An account number for a tax agency, more information
|
78
|
+
# provided by `mask` and `prefix`
|
79
|
+
# - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing
|
80
|
+
# a tax rate of `3.4%`, see `validation` for additional validation guidance
|
81
|
+
# - `workers_compensation_rate`: A decimal value representing a percentage, see
|
82
|
+
# `risk_class_code`, `risk_class_description`, and `rate_type`
|
83
|
+
# @param options [Array<Gusto::TaxRequirementMetadataOptionsItem>] [for `select` or `radio`] An array of objects describing the possible values.
|
84
|
+
# @param risk_class_code [String] [for `workers_compensation_rate`] The industry risk class code for the rate
|
85
|
+
# being requested
|
86
|
+
# @param risk_class_description [String] [for `workers_compensation_rate`] A description of the industry risk class for
|
87
|
+
# the rate being requested
|
88
|
+
# @param rate_type [Gusto::TaxRequirementMetadataRateType] [for `workers_compensation_rate`] The type of rate being collected. Either:
|
89
|
+
# - `percent`: A percentage formatted as a decimal, e.g. `0.01` for 1%
|
90
|
+
# - `currency_per_hour`: A dollar amount per hour, e.g. `3.24` for $3.24/hr
|
91
|
+
# @param mask [String] [for `account_number`] A pattern describing the format of the account number
|
92
|
+
# The mask is a sequence of characters representing the requirements of the actual
|
93
|
+
# account number. Each character in the mask represents a single character in the
|
94
|
+
# account number as follows:
|
95
|
+
# - `#`: a digit (`\d`)
|
96
|
+
# - `@`: a upper or lower case letter (`[a-zA-Z]`)
|
97
|
+
# - `^`: an uppercase letter (`[A-Z]`)
|
98
|
+
# - `%`: a digit or uppercase letter (`[0-9A-Z]`)
|
99
|
+
# - any other character represents the literal character
|
100
|
+
# Examples:
|
101
|
+
# - mask: `WHT-######` represents `WHT-` followed by 5 digits, e.g. `WHT-33421`
|
102
|
+
# - mask: `%####-^^` supports values of `75544-AB` and `Z7654-HK`
|
103
|
+
# @param prefix [String] [for `account_number`] A value that precedes the value to be collected - useful
|
104
|
+
# for display, but should not be submitted as part of the value. E.g. some tax
|
105
|
+
# agencies use an account number that is a company's federal ein plus two digits.
|
106
|
+
# In that case the mask would be `##` and the prefix `XXXXX1234`.
|
107
|
+
# @param validation [Gusto::TaxRequirementMetadataValidation] [for `tax_rate`] Describes the validation required for the tax rate
|
108
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
109
|
+
# @return [Gusto::TaxRequirementMetadata]
|
110
|
+
def initialize(type:, options: OMIT, risk_class_code: OMIT, risk_class_description: OMIT, rate_type: OMIT, mask: OMIT, prefix: OMIT, validation: OMIT, additional_properties: nil)
|
111
|
+
@type = type
|
112
|
+
@options = options if options != OMIT
|
113
|
+
@risk_class_code = risk_class_code if risk_class_code != OMIT
|
114
|
+
@risk_class_description = risk_class_description if risk_class_description != OMIT
|
115
|
+
@rate_type = rate_type if rate_type != OMIT
|
116
|
+
@mask = mask if mask != OMIT
|
117
|
+
@prefix = prefix if prefix != OMIT
|
118
|
+
@validation = validation if validation != OMIT
|
119
|
+
@additional_properties = additional_properties
|
120
|
+
@_field_set = { "type": type, "options": options, "risk_class_code": risk_class_code, "risk_class_description": risk_class_description, "rate_type": rate_type, "mask": mask, "prefix": prefix, "validation": validation }.reject do | _k, v |
|
121
|
+
v == OMIT
|
122
|
+
end
|
123
|
+
end
|
124
|
+
# Deserialize a JSON object to an instance of TaxRequirementMetadata
|
125
|
+
#
|
126
|
+
# @param json_object [String]
|
127
|
+
# @return [Gusto::TaxRequirementMetadata]
|
128
|
+
def self.from_json(json_object:)
|
129
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
130
|
+
parsed_json = JSON.parse(json_object)
|
131
|
+
type = parsed_json["type"]
|
132
|
+
options = parsed_json["options"]&.map do | item |
|
133
|
+
item = item.to_json
|
134
|
+
Gusto::TaxRequirementMetadataOptionsItem.from_json(json_object: item)
|
135
|
+
end
|
136
|
+
risk_class_code = parsed_json["risk_class_code"]
|
137
|
+
risk_class_description = parsed_json["risk_class_description"]
|
138
|
+
rate_type = parsed_json["rate_type"]
|
139
|
+
mask = parsed_json["mask"]
|
140
|
+
prefix = parsed_json["prefix"]
|
141
|
+
unless parsed_json["validation"].nil?
|
142
|
+
validation = parsed_json["validation"].to_json
|
143
|
+
validation = Gusto::TaxRequirementMetadataValidation.from_json(json_object: validation)
|
144
|
+
else
|
145
|
+
validation = nil
|
146
|
+
end
|
147
|
+
new(
|
148
|
+
type: type,
|
149
|
+
options: options,
|
150
|
+
risk_class_code: risk_class_code,
|
151
|
+
risk_class_description: risk_class_description,
|
152
|
+
rate_type: rate_type,
|
153
|
+
mask: mask,
|
154
|
+
prefix: prefix,
|
155
|
+
validation: validation,
|
156
|
+
additional_properties: struct
|
157
|
+
)
|
158
|
+
end
|
159
|
+
# Serialize an instance of TaxRequirementMetadata to a JSON object
|
160
|
+
#
|
161
|
+
# @return [String]
|
162
|
+
def to_json
|
163
|
+
@_field_set&.to_json
|
164
|
+
end
|
165
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
166
|
+
# hash and check each fields type against the current object's property
|
167
|
+
# definitions.
|
168
|
+
#
|
169
|
+
# @param obj [Object]
|
170
|
+
# @return [Void]
|
171
|
+
def self.validate_raw(obj:)
|
172
|
+
obj.type.is_a?(Gusto::TaxRequirementMetadataType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
173
|
+
obj.options&.is_a?(Array) != false || raise("Passed value for field obj.options is not the expected type, validation failed.")
|
174
|
+
obj.risk_class_code&.is_a?(String) != false || raise("Passed value for field obj.risk_class_code is not the expected type, validation failed.")
|
175
|
+
obj.risk_class_description&.is_a?(String) != false || raise("Passed value for field obj.risk_class_description is not the expected type, validation failed.")
|
176
|
+
obj.rate_type&.is_a?(Gusto::TaxRequirementMetadataRateType) != false || raise("Passed value for field obj.rate_type is not the expected type, validation failed.")
|
177
|
+
obj.mask&.is_a?(String) != false || raise("Passed value for field obj.mask is not the expected type, validation failed.")
|
178
|
+
obj.prefix&.is_a?(String) != false || raise("Passed value for field obj.prefix is not the expected type, validation failed.")
|
179
|
+
obj.validation.nil? || Gusto::TaxRequirementMetadataValidation.validate_raw(obj: obj.validation)
|
180
|
+
end
|
181
|
+
end
|
182
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require "ostruct"
|
3
|
+
require "json"
|
4
|
+
|
5
|
+
module Gusto
|
6
|
+
class TaxRequirementMetadataOptionsItem
|
7
|
+
# @return [String] A customer facing label for the answer
|
8
|
+
attr_reader :label
|
9
|
+
# @return [String] The actual value to be submitted
|
10
|
+
attr_reader :value
|
11
|
+
# @return [String] A less verbose label that may sometimes be available
|
12
|
+
attr_reader :short_label
|
13
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
14
|
+
attr_reader :additional_properties
|
15
|
+
# @return [Object]
|
16
|
+
attr_reader :_field_set
|
17
|
+
protected :_field_set
|
18
|
+
|
19
|
+
OMIT = Object.new
|
20
|
+
|
21
|
+
# @param label [String] A customer facing label for the answer
|
22
|
+
# @param value [String] The actual value to be submitted
|
23
|
+
# @param short_label [String] A less verbose label that may sometimes be available
|
24
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
25
|
+
# @return [Gusto::TaxRequirementMetadataOptionsItem]
|
26
|
+
def initialize(label:, value:, short_label: OMIT, additional_properties: nil)
|
27
|
+
@label = label
|
28
|
+
@value = value
|
29
|
+
@short_label = short_label if short_label != OMIT
|
30
|
+
@additional_properties = additional_properties
|
31
|
+
@_field_set = { "label": label, "value": value, "short_label": short_label }.reject do | _k, v |
|
32
|
+
v == OMIT
|
33
|
+
end
|
34
|
+
end
|
35
|
+
# Deserialize a JSON object to an instance of TaxRequirementMetadataOptionsItem
|
36
|
+
#
|
37
|
+
# @param json_object [String]
|
38
|
+
# @return [Gusto::TaxRequirementMetadataOptionsItem]
|
39
|
+
def self.from_json(json_object:)
|
40
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
41
|
+
parsed_json = JSON.parse(json_object)
|
42
|
+
label = parsed_json["label"]
|
43
|
+
value = parsed_json["value"]
|
44
|
+
short_label = parsed_json["short_label"]
|
45
|
+
new(
|
46
|
+
label: label,
|
47
|
+
value: value,
|
48
|
+
short_label: short_label,
|
49
|
+
additional_properties: struct
|
50
|
+
)
|
51
|
+
end
|
52
|
+
# Serialize an instance of TaxRequirementMetadataOptionsItem to a JSON object
|
53
|
+
#
|
54
|
+
# @return [String]
|
55
|
+
def to_json
|
56
|
+
@_field_set&.to_json
|
57
|
+
end
|
58
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
59
|
+
# hash and check each fields type against the current object's property
|
60
|
+
# definitions.
|
61
|
+
#
|
62
|
+
# @param obj [Object]
|
63
|
+
# @return [Void]
|
64
|
+
def self.validate_raw(obj:)
|
65
|
+
obj.label.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
|
66
|
+
obj.value.is_a?(String) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
|
67
|
+
obj.short_label&.is_a?(String) != false || raise("Passed value for field obj.short_label is not the expected type, validation failed.")
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
# [for `workers_compensation_rate`] The type of rate being collected. Either:
|
5
|
+
# - `percent`: A percentage formatted as a decimal, e.g. `0.01` for 1%
|
6
|
+
# - `currency_per_hour`: A dollar amount per hour, e.g. `3.24` for $3.24/hr
|
7
|
+
class TaxRequirementMetadataRateType
|
8
|
+
|
9
|
+
PERCENT = "percent"
|
10
|
+
CURRENCY_PER_HOUR = "currency_per_hour"
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Gusto
|
4
|
+
# Describes the type of requirement - each type may have additional metadata
|
5
|
+
# properties to describe possible values, formats, etc.
|
6
|
+
# - `text`: free-text input, no additional requirements
|
7
|
+
# - `currency`: a value representing a dollar amount, e.g. `374.55` representing
|
8
|
+
# `$374.55`
|
9
|
+
# - `radio`: choose one of options provided, see `options`
|
10
|
+
# - `select`: choose one of options provided, see `options`
|
11
|
+
# - `percent`: A decimal value representing a percentage, e.g. `0.034`
|
12
|
+
# representing `3.4%`
|
13
|
+
# - `account_number`: An account number for a tax agency, more information
|
14
|
+
# provided by `mask` and `prefix`
|
15
|
+
# - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing
|
16
|
+
# a tax rate of `3.4%`, see `validation` for additional validation guidance
|
17
|
+
# - `workers_compensation_rate`: A decimal value representing a percentage, see
|
18
|
+
# `risk_class_code`, `risk_class_description`, and `rate_type`
|
19
|
+
class TaxRequirementMetadataType
|
20
|
+
|
21
|
+
TEXT = "text"
|
22
|
+
CURRENCY = "currency"
|
23
|
+
RADIO = "radio"
|
24
|
+
SELECT = "select"
|
25
|
+
PERCENT = "percent"
|
26
|
+
ACCOUNT_NUMBER = "account_number"
|
27
|
+
TAX_RATE = "tax_rate"
|
28
|
+
WORKERS_COMPENSATION_RATE = "workers_compensation_rate"
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "tax_requirement_metadata_validation_type"
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Gusto
|
7
|
+
# [for `tax_rate`] Describes the validation required for the tax rate
|
8
|
+
class TaxRequirementMetadataValidation
|
9
|
+
# @return [Gusto::TaxRequirementMetadataValidationType] Describes the type of tax_rate validation rule
|
10
|
+
attr_reader :type
|
11
|
+
# @return [String] [for `min_max`] The inclusive lower bound of the tax rate
|
12
|
+
attr_reader :min
|
13
|
+
# @return [String] [for `min_max`] The inclusive upper bound of the tax rate
|
14
|
+
attr_reader :max
|
15
|
+
# @return [Array<String>] [for `one_of`] The possible, unformatted tax rates for selection.
|
16
|
+
# - e.g. ["0.0", "0.001"] representing 0% and 0.1%
|
17
|
+
attr_reader :rates
|
18
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
19
|
+
attr_reader :additional_properties
|
20
|
+
# @return [Object]
|
21
|
+
attr_reader :_field_set
|
22
|
+
protected :_field_set
|
23
|
+
|
24
|
+
OMIT = Object.new
|
25
|
+
|
26
|
+
# @param type [Gusto::TaxRequirementMetadataValidationType] Describes the type of tax_rate validation rule
|
27
|
+
# @param min [String] [for `min_max`] The inclusive lower bound of the tax rate
|
28
|
+
# @param max [String] [for `min_max`] The inclusive upper bound of the tax rate
|
29
|
+
# @param rates [Array<String>] [for `one_of`] The possible, unformatted tax rates for selection.
|
30
|
+
# - e.g. ["0.0", "0.001"] representing 0% and 0.1%
|
31
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
32
|
+
# @return [Gusto::TaxRequirementMetadataValidation]
|
33
|
+
def initialize(type:, min: OMIT, max: OMIT, rates: OMIT, additional_properties: nil)
|
34
|
+
@type = type
|
35
|
+
@min = min if min != OMIT
|
36
|
+
@max = max if max != OMIT
|
37
|
+
@rates = rates if rates != OMIT
|
38
|
+
@additional_properties = additional_properties
|
39
|
+
@_field_set = { "type": type, "min": min, "max": max, "rates": rates }.reject do | _k, v |
|
40
|
+
v == OMIT
|
41
|
+
end
|
42
|
+
end
|
43
|
+
# Deserialize a JSON object to an instance of TaxRequirementMetadataValidation
|
44
|
+
#
|
45
|
+
# @param json_object [String]
|
46
|
+
# @return [Gusto::TaxRequirementMetadataValidation]
|
47
|
+
def self.from_json(json_object:)
|
48
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
49
|
+
parsed_json = JSON.parse(json_object)
|
50
|
+
type = parsed_json["type"]
|
51
|
+
min = parsed_json["min"]
|
52
|
+
max = parsed_json["max"]
|
53
|
+
rates = parsed_json["rates"]
|
54
|
+
new(
|
55
|
+
type: type,
|
56
|
+
min: min,
|
57
|
+
max: max,
|
58
|
+
rates: rates,
|
59
|
+
additional_properties: struct
|
60
|
+
)
|
61
|
+
end
|
62
|
+
# Serialize an instance of TaxRequirementMetadataValidation to a JSON object
|
63
|
+
#
|
64
|
+
# @return [String]
|
65
|
+
def to_json
|
66
|
+
@_field_set&.to_json
|
67
|
+
end
|
68
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
69
|
+
# hash and check each fields type against the current object's property
|
70
|
+
# definitions.
|
71
|
+
#
|
72
|
+
# @param obj [Object]
|
73
|
+
# @return [Void]
|
74
|
+
def self.validate_raw(obj:)
|
75
|
+
obj.type.is_a?(Gusto::TaxRequirementMetadataValidationType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
|
76
|
+
obj.min&.is_a?(String) != false || raise("Passed value for field obj.min is not the expected type, validation failed.")
|
77
|
+
obj.max&.is_a?(String) != false || raise("Passed value for field obj.max is not the expected type, validation failed.")
|
78
|
+
obj.rates&.is_a?(Array) != false || raise("Passed value for field obj.rates is not the expected type, validation failed.")
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "tax_requirement_effective_from"
|
3
|
+
require_relative "tax_requirement"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module Gusto
|
8
|
+
|
9
|
+
class TaxRequirementSet
|
10
|
+
# @return [String]
|
11
|
+
attr_reader :state
|
12
|
+
# @return [String]
|
13
|
+
attr_reader :key
|
14
|
+
# @return [String] Customer facing label for the requirement set, e.g. "Registrations"
|
15
|
+
attr_reader :label
|
16
|
+
# @return [Gusto::TAX_REQUIREMENT_EFFECTIVE_FROM]
|
17
|
+
attr_reader :effective_from
|
18
|
+
# @return [Array<Gusto::TaxRequirement>]
|
19
|
+
attr_reader :requirements
|
20
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
21
|
+
attr_reader :additional_properties
|
22
|
+
# @return [Object]
|
23
|
+
attr_reader :_field_set
|
24
|
+
protected :_field_set
|
25
|
+
|
26
|
+
OMIT = Object.new
|
27
|
+
|
28
|
+
# @param state [String]
|
29
|
+
# @param key [String]
|
30
|
+
# @param label [String] Customer facing label for the requirement set, e.g. "Registrations"
|
31
|
+
# @param effective_from [Gusto::TAX_REQUIREMENT_EFFECTIVE_FROM]
|
32
|
+
# @param requirements [Array<Gusto::TaxRequirement>]
|
33
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
34
|
+
# @return [Gusto::TaxRequirementSet]
|
35
|
+
def initialize(state: OMIT, key: OMIT, label: OMIT, effective_from: OMIT, requirements: OMIT, additional_properties: nil)
|
36
|
+
@state = state if state != OMIT
|
37
|
+
@key = key if key != OMIT
|
38
|
+
@label = label if label != OMIT
|
39
|
+
@effective_from = effective_from if effective_from != OMIT
|
40
|
+
@requirements = requirements if requirements != OMIT
|
41
|
+
@additional_properties = additional_properties
|
42
|
+
@_field_set = { "state": state, "key": key, "label": label, "effective_from": effective_from, "requirements": requirements }.reject do | _k, v |
|
43
|
+
v == OMIT
|
44
|
+
end
|
45
|
+
end
|
46
|
+
# Deserialize a JSON object to an instance of TaxRequirementSet
|
47
|
+
#
|
48
|
+
# @param json_object [String]
|
49
|
+
# @return [Gusto::TaxRequirementSet]
|
50
|
+
def self.from_json(json_object:)
|
51
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
52
|
+
parsed_json = JSON.parse(json_object)
|
53
|
+
state = parsed_json["state"]
|
54
|
+
key = parsed_json["key"]
|
55
|
+
label = parsed_json["label"]
|
56
|
+
effective_from = parsed_json["effective_from"]
|
57
|
+
requirements = parsed_json["requirements"]&.map do | item |
|
58
|
+
item = item.to_json
|
59
|
+
Gusto::TaxRequirement.from_json(json_object: item)
|
60
|
+
end
|
61
|
+
new(
|
62
|
+
state: state,
|
63
|
+
key: key,
|
64
|
+
label: label,
|
65
|
+
effective_from: effective_from,
|
66
|
+
requirements: requirements,
|
67
|
+
additional_properties: struct
|
68
|
+
)
|
69
|
+
end
|
70
|
+
# Serialize an instance of TaxRequirementSet to a JSON object
|
71
|
+
#
|
72
|
+
# @return [String]
|
73
|
+
def to_json
|
74
|
+
@_field_set&.to_json
|
75
|
+
end
|
76
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
77
|
+
# hash and check each fields type against the current object's property
|
78
|
+
# definitions.
|
79
|
+
#
|
80
|
+
# @param obj [Object]
|
81
|
+
# @return [Void]
|
82
|
+
def self.validate_raw(obj:)
|
83
|
+
obj.state&.is_a?(String) != false || raise("Passed value for field obj.state is not the expected type, validation failed.")
|
84
|
+
obj.key&.is_a?(String) != false || raise("Passed value for field obj.key is not the expected type, validation failed.")
|
85
|
+
obj.label&.is_a?(String) != false || raise("Passed value for field obj.label is not the expected type, validation failed.")
|
86
|
+
obj.effective_from&.is_a?(String) != false || raise("Passed value for field obj.effective_from is not the expected type, validation failed.")
|
87
|
+
obj.requirements&.is_a?(Array) != false || raise("Passed value for field obj.requirements is not the expected type, validation failed.")
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,75 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "tax_requirement_set"
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Gusto
|
7
|
+
|
8
|
+
class TaxRequirementsState
|
9
|
+
# @return [String]
|
10
|
+
attr_reader :company_uuid
|
11
|
+
# @return [String]
|
12
|
+
attr_reader :state
|
13
|
+
# @return [Array<Gusto::TaxRequirementSet>]
|
14
|
+
attr_reader :requirement_sets
|
15
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
16
|
+
attr_reader :additional_properties
|
17
|
+
# @return [Object]
|
18
|
+
attr_reader :_field_set
|
19
|
+
protected :_field_set
|
20
|
+
|
21
|
+
OMIT = Object.new
|
22
|
+
|
23
|
+
# @param company_uuid [String]
|
24
|
+
# @param state [String]
|
25
|
+
# @param requirement_sets [Array<Gusto::TaxRequirementSet>]
|
26
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
27
|
+
# @return [Gusto::TaxRequirementsState]
|
28
|
+
def initialize(company_uuid: OMIT, state: OMIT, requirement_sets: OMIT, additional_properties: nil)
|
29
|
+
@company_uuid = company_uuid if company_uuid != OMIT
|
30
|
+
@state = state if state != OMIT
|
31
|
+
@requirement_sets = requirement_sets if requirement_sets != OMIT
|
32
|
+
@additional_properties = additional_properties
|
33
|
+
@_field_set = { "company_uuid": company_uuid, "state": state, "requirement_sets": requirement_sets }.reject do | _k, v |
|
34
|
+
v == OMIT
|
35
|
+
end
|
36
|
+
end
|
37
|
+
# Deserialize a JSON object to an instance of TaxRequirementsState
|
38
|
+
#
|
39
|
+
# @param json_object [String]
|
40
|
+
# @return [Gusto::TaxRequirementsState]
|
41
|
+
def self.from_json(json_object:)
|
42
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
43
|
+
parsed_json = JSON.parse(json_object)
|
44
|
+
company_uuid = parsed_json["company_uuid"]
|
45
|
+
state = parsed_json["state"]
|
46
|
+
requirement_sets = parsed_json["requirement_sets"]&.map do | item |
|
47
|
+
item = item.to_json
|
48
|
+
Gusto::TaxRequirementSet.from_json(json_object: item)
|
49
|
+
end
|
50
|
+
new(
|
51
|
+
company_uuid: company_uuid,
|
52
|
+
state: state,
|
53
|
+
requirement_sets: requirement_sets,
|
54
|
+
additional_properties: struct
|
55
|
+
)
|
56
|
+
end
|
57
|
+
# Serialize an instance of TaxRequirementsState to a JSON object
|
58
|
+
#
|
59
|
+
# @return [String]
|
60
|
+
def to_json
|
61
|
+
@_field_set&.to_json
|
62
|
+
end
|
63
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
64
|
+
# hash and check each fields type against the current object's property
|
65
|
+
# definitions.
|
66
|
+
#
|
67
|
+
# @param obj [Object]
|
68
|
+
# @return [Void]
|
69
|
+
def self.validate_raw(obj:)
|
70
|
+
obj.company_uuid&.is_a?(String) != false || raise("Passed value for field obj.company_uuid is not the expected type, validation failed.")
|
71
|
+
obj.state&.is_a?(String) != false || raise("Passed value for field obj.state is not the expected type, validation failed.")
|
72
|
+
obj.requirement_sets&.is_a?(Array) != false || raise("Passed value for field obj.requirement_sets is not the expected type, validation failed.")
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -0,0 +1,107 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require_relative "time_off_activity_time_off_type"
|
3
|
+
require "ostruct"
|
4
|
+
require "json"
|
5
|
+
|
6
|
+
module Gusto
|
7
|
+
# Representation of a Time Off Activity
|
8
|
+
class TimeOffActivity
|
9
|
+
# @return [String] unique identifier of a time off policy
|
10
|
+
attr_reader :policy_uuid
|
11
|
+
# @return [Gusto::TimeOffActivityTimeOffType] Type of the time off activity
|
12
|
+
attr_reader :time_off_type
|
13
|
+
# @return [String] The name of the time off policy for this activity
|
14
|
+
attr_reader :policy_name
|
15
|
+
# @return [String] The type of the time off event/activity
|
16
|
+
attr_reader :event_type
|
17
|
+
# @return [String] A description for the time off event/activity
|
18
|
+
attr_reader :event_description
|
19
|
+
# @return [String] The datetime of the time off activity
|
20
|
+
attr_reader :effective_time
|
21
|
+
# @return [String] The time off balance at the time of the activity
|
22
|
+
attr_reader :balance
|
23
|
+
# @return [String] The amount the time off balance changed as a result of the activity
|
24
|
+
attr_reader :balance_change
|
25
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
26
|
+
attr_reader :additional_properties
|
27
|
+
# @return [Object]
|
28
|
+
attr_reader :_field_set
|
29
|
+
protected :_field_set
|
30
|
+
|
31
|
+
OMIT = Object.new
|
32
|
+
|
33
|
+
# @param policy_uuid [String] unique identifier of a time off policy
|
34
|
+
# @param time_off_type [Gusto::TimeOffActivityTimeOffType] Type of the time off activity
|
35
|
+
# @param policy_name [String] The name of the time off policy for this activity
|
36
|
+
# @param event_type [String] The type of the time off event/activity
|
37
|
+
# @param event_description [String] A description for the time off event/activity
|
38
|
+
# @param effective_time [String] The datetime of the time off activity
|
39
|
+
# @param balance [String] The time off balance at the time of the activity
|
40
|
+
# @param balance_change [String] The amount the time off balance changed as a result of the activity
|
41
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
42
|
+
# @return [Gusto::TimeOffActivity]
|
43
|
+
def initialize(policy_uuid: OMIT, time_off_type: OMIT, policy_name: OMIT, event_type: OMIT, event_description: OMIT, effective_time: OMIT, balance: OMIT, balance_change: OMIT, additional_properties: nil)
|
44
|
+
@policy_uuid = policy_uuid if policy_uuid != OMIT
|
45
|
+
@time_off_type = time_off_type if time_off_type != OMIT
|
46
|
+
@policy_name = policy_name if policy_name != OMIT
|
47
|
+
@event_type = event_type if event_type != OMIT
|
48
|
+
@event_description = event_description if event_description != OMIT
|
49
|
+
@effective_time = effective_time if effective_time != OMIT
|
50
|
+
@balance = balance if balance != OMIT
|
51
|
+
@balance_change = balance_change if balance_change != OMIT
|
52
|
+
@additional_properties = additional_properties
|
53
|
+
@_field_set = { "policy_uuid": policy_uuid, "time_off_type": time_off_type, "policy_name": policy_name, "event_type": event_type, "event_description": event_description, "effective_time": effective_time, "balance": balance, "balance_change": balance_change }.reject do | _k, v |
|
54
|
+
v == OMIT
|
55
|
+
end
|
56
|
+
end
|
57
|
+
# Deserialize a JSON object to an instance of TimeOffActivity
|
58
|
+
#
|
59
|
+
# @param json_object [String]
|
60
|
+
# @return [Gusto::TimeOffActivity]
|
61
|
+
def self.from_json(json_object:)
|
62
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
63
|
+
parsed_json = JSON.parse(json_object)
|
64
|
+
policy_uuid = parsed_json["policy_uuid"]
|
65
|
+
time_off_type = parsed_json["time_off_type"]
|
66
|
+
policy_name = parsed_json["policy_name"]
|
67
|
+
event_type = parsed_json["event_type"]
|
68
|
+
event_description = parsed_json["event_description"]
|
69
|
+
effective_time = parsed_json["effective_time"]
|
70
|
+
balance = parsed_json["balance"]
|
71
|
+
balance_change = parsed_json["balance_change"]
|
72
|
+
new(
|
73
|
+
policy_uuid: policy_uuid,
|
74
|
+
time_off_type: time_off_type,
|
75
|
+
policy_name: policy_name,
|
76
|
+
event_type: event_type,
|
77
|
+
event_description: event_description,
|
78
|
+
effective_time: effective_time,
|
79
|
+
balance: balance,
|
80
|
+
balance_change: balance_change,
|
81
|
+
additional_properties: struct
|
82
|
+
)
|
83
|
+
end
|
84
|
+
# Serialize an instance of TimeOffActivity to a JSON object
|
85
|
+
#
|
86
|
+
# @return [String]
|
87
|
+
def to_json
|
88
|
+
@_field_set&.to_json
|
89
|
+
end
|
90
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
91
|
+
# hash and check each fields type against the current object's property
|
92
|
+
# definitions.
|
93
|
+
#
|
94
|
+
# @param obj [Object]
|
95
|
+
# @return [Void]
|
96
|
+
def self.validate_raw(obj:)
|
97
|
+
obj.policy_uuid&.is_a?(String) != false || raise("Passed value for field obj.policy_uuid is not the expected type, validation failed.")
|
98
|
+
obj.time_off_type&.is_a?(Gusto::TimeOffActivityTimeOffType) != false || raise("Passed value for field obj.time_off_type is not the expected type, validation failed.")
|
99
|
+
obj.policy_name&.is_a?(String) != false || raise("Passed value for field obj.policy_name is not the expected type, validation failed.")
|
100
|
+
obj.event_type&.is_a?(String) != false || raise("Passed value for field obj.event_type is not the expected type, validation failed.")
|
101
|
+
obj.event_description&.is_a?(String) != false || raise("Passed value for field obj.event_description is not the expected type, validation failed.")
|
102
|
+
obj.effective_time&.is_a?(String) != false || raise("Passed value for field obj.effective_time is not the expected type, validation failed.")
|
103
|
+
obj.balance&.is_a?(String) != false || raise("Passed value for field obj.balance is not the expected type, validation failed.")
|
104
|
+
obj.balance_change&.is_a?(String) != false || raise("Passed value for field obj.balance_change is not the expected type, validation failed.")
|
105
|
+
end
|
106
|
+
end
|
107
|
+
end
|