"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from gusto_app_integration.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class PayrollTotalsTypeTypedDict(TypedDict):
    r"""The subtotals for the payroll."""

    company_debit: NotRequired[str]
    r"""The total company debit for the payroll."""
    net_pay_debit: NotRequired[str]
    r"""The total company net pay for the payroll."""
    tax_debit: NotRequired[str]
    r"""The total tax debit for the payroll."""
    reimbursement_debit: NotRequired[str]
    r"""The total reimbursement debit for the payroll."""
    child_support_debit: NotRequired[str]
    r"""The total child support debit for the payroll."""
    reimbursements: NotRequired[str]
    r"""The total reimbursements for the payroll."""
    net_pay: NotRequired[str]
    r"""The net pay amount for the payroll."""
    gross_pay: NotRequired[str]
    r"""The gross pay amount for the payroll."""
    employee_bonuses: NotRequired[str]
    r"""The total employee bonuses amount for the payroll."""
    employee_commissions: NotRequired[str]
    r"""The total employee commissions amount for the payroll."""
    employee_cash_tips: NotRequired[str]
    r"""The total employee cash tips amount for the payroll."""
    employee_paycheck_tips: NotRequired[str]
    r"""The total employee paycheck tips amount for the payroll."""
    additional_earnings: NotRequired[str]
    r"""The total additional earnings amount for the payroll."""
    owners_draw: NotRequired[str]
    r"""The total owner's draw for the payroll."""
    check_amount: NotRequired[str]
    r"""The total check amount for the payroll."""
    employer_taxes: NotRequired[str]
    r"""The total amount of employer paid taxes for the payroll."""
    employee_taxes: NotRequired[str]
    r"""The total amount of employee paid taxes for the payroll."""
    benefits: NotRequired[str]
    r"""The total amount of company contributed benefits for the payroll."""
    employee_benefits_deductions: NotRequired[str]
    r"""The total amount of employee deducted benefits for the payroll."""
    imputed_pay: NotRequired[str]
    r"""The total amount of imputed pay for the payroll."""
    deferred_payroll_taxes: NotRequired[str]
    r"""The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act."""
    other_deductions: NotRequired[str]
    r"""The total amount of deductions for the payroll."""


class PayrollTotalsType(BaseModel):
    r"""The subtotals for the payroll."""

    company_debit: Optional[str] = None
    r"""The total company debit for the payroll."""

    net_pay_debit: Optional[str] = None
    r"""The total company net pay for the payroll."""

    tax_debit: Optional[str] = None
    r"""The total tax debit for the payroll."""

    reimbursement_debit: Optional[str] = None
    r"""The total reimbursement debit for the payroll."""

    child_support_debit: Optional[str] = None
    r"""The total child support debit for the payroll."""

    reimbursements: Optional[str] = None
    r"""The total reimbursements for the payroll."""

    net_pay: Optional[str] = None
    r"""The net pay amount for the payroll."""

    gross_pay: Optional[str] = None
    r"""The gross pay amount for the payroll."""

    employee_bonuses: Optional[str] = None
    r"""The total employee bonuses amount for the payroll."""

    employee_commissions: Optional[str] = None
    r"""The total employee commissions amount for the payroll."""

    employee_cash_tips: Optional[str] = None
    r"""The total employee cash tips amount for the payroll."""

    employee_paycheck_tips: Optional[str] = None
    r"""The total employee paycheck tips amount for the payroll."""

    additional_earnings: Optional[str] = None
    r"""The total additional earnings amount for the payroll."""

    owners_draw: Optional[str] = None
    r"""The total owner's draw for the payroll."""

    check_amount: Optional[str] = None
    r"""The total check amount for the payroll."""

    employer_taxes: Optional[str] = None
    r"""The total amount of employer paid taxes for the payroll."""

    employee_taxes: Optional[str] = None
    r"""The total amount of employee paid taxes for the payroll."""

    benefits: Optional[str] = None
    r"""The total amount of company contributed benefits for the payroll."""

    employee_benefits_deductions: Optional[str] = None
    r"""The total amount of employee deducted benefits for the payroll."""

    imputed_pay: Optional[str] = None
    r"""The total amount of imputed pay for the payroll."""

    deferred_payroll_taxes: Optional[str] = None
    r"""The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act."""

    other_deductions: Optional[str] = None
    r"""The total amount of deductions for the payroll."""
