/** * Xero Payroll NZ * This is the Xero Payroll API for orgs in the NZ region. * * The version of the OpenAPI document: 9.0.0 * Contact: api@xero.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { Benefit } from '../model/payroll-nz/benefit'; import { Deduction } from '../model/payroll-nz/deduction'; import { DeductionObject } from '../model/payroll-nz/deductionObject'; import { Deductions } from '../model/payroll-nz/deductions'; import { EarningsRate } from '../model/payroll-nz/earningsRate'; import { EarningsRateObject } from '../model/payroll-nz/earningsRateObject'; import { EarningsRates } from '../model/payroll-nz/earningsRates'; import { EarningsTemplate } from '../model/payroll-nz/earningsTemplate'; import { EarningsTemplateObject } from '../model/payroll-nz/earningsTemplateObject'; import { Employee } from '../model/payroll-nz/employee'; import { EmployeeEarningsTemplates } from '../model/payroll-nz/employeeEarningsTemplates'; import { EmployeeLeave } from '../model/payroll-nz/employeeLeave'; import { EmployeeLeaveBalances } from '../model/payroll-nz/employeeLeaveBalances'; import { EmployeeLeaveObject } from '../model/payroll-nz/employeeLeaveObject'; import { EmployeeLeaveSetup } from '../model/payroll-nz/employeeLeaveSetup'; import { EmployeeLeaveSetupObject } from '../model/payroll-nz/employeeLeaveSetupObject'; import { EmployeeLeaveType } from '../model/payroll-nz/employeeLeaveType'; import { EmployeeLeaveTypeObject } from '../model/payroll-nz/employeeLeaveTypeObject'; import { EmployeeLeaveTypes } from '../model/payroll-nz/employeeLeaveTypes'; import { EmployeeLeaves } from '../model/payroll-nz/employeeLeaves'; import { EmployeeObject } from '../model/payroll-nz/employeeObject'; import { EmployeeOpeningBalance } from '../model/payroll-nz/employeeOpeningBalance'; import { EmployeeOpeningBalancesObject } from '../model/payroll-nz/employeeOpeningBalancesObject'; import { EmployeePayTemplates } from '../model/payroll-nz/employeePayTemplates'; import { EmployeeTax } from '../model/payroll-nz/employeeTax'; import { EmployeeTaxObject } from '../model/payroll-nz/employeeTaxObject'; import { EmployeeWorkingPatternWithWorkingWeeksObject } from '../model/payroll-nz/employeeWorkingPatternWithWorkingWeeksObject'; import { EmployeeWorkingPatternWithWorkingWeeksRequest } from '../model/payroll-nz/employeeWorkingPatternWithWorkingWeeksRequest'; import { EmployeeWorkingPatternsObject } from '../model/payroll-nz/employeeWorkingPatternsObject'; import { Employees } from '../model/payroll-nz/employees'; import { Employment } from '../model/payroll-nz/employment'; import { EmploymentObject } from '../model/payroll-nz/employmentObject'; import { LeavePeriods } from '../model/payroll-nz/leavePeriods'; import { LeaveType } from '../model/payroll-nz/leaveType'; import { LeaveTypeObject } from '../model/payroll-nz/leaveTypeObject'; import { LeaveTypes } from '../model/payroll-nz/leaveTypes'; import { PayRun } from '../model/payroll-nz/payRun'; import { PayRunCalendar } from '../model/payroll-nz/payRunCalendar'; import { PayRunCalendarObject } from '../model/payroll-nz/payRunCalendarObject'; import { PayRunCalendars } from '../model/payroll-nz/payRunCalendars'; import { PayRunObject } from '../model/payroll-nz/payRunObject'; import { PayRuns } from '../model/payroll-nz/payRuns'; import { PaySlip } from '../model/payroll-nz/paySlip'; import { PaySlipObject } from '../model/payroll-nz/paySlipObject'; import { PaySlips } from '../model/payroll-nz/paySlips'; import { PaymentMethod } from '../model/payroll-nz/paymentMethod'; import { PaymentMethodObject } from '../model/payroll-nz/paymentMethodObject'; import { Reimbursement } from '../model/payroll-nz/reimbursement'; import { ReimbursementObject } from '../model/payroll-nz/reimbursementObject'; import { Reimbursements } from '../model/payroll-nz/reimbursements'; import { SalaryAndWage } from '../model/payroll-nz/salaryAndWage'; import { SalaryAndWageObject } from '../model/payroll-nz/salaryAndWageObject'; import { SalaryAndWages } from '../model/payroll-nz/salaryAndWages'; import { Settings } from '../model/payroll-nz/settings'; import { StatutoryDeductionObject } from '../model/payroll-nz/statutoryDeductionObject'; import { StatutoryDeductions } from '../model/payroll-nz/statutoryDeductions'; import { SuperannuationObject } from '../model/payroll-nz/superannuationObject'; import { Superannuations } from '../model/payroll-nz/superannuations'; import { Timesheet } from '../model/payroll-nz/timesheet'; import { TimesheetLine } from '../model/payroll-nz/timesheetLine'; import { TimesheetLineObject } from '../model/payroll-nz/timesheetLineObject'; import { TimesheetObject } from '../model/payroll-nz/timesheetObject'; import { Timesheets } from '../model/payroll-nz/timesheets'; import { TrackingCategories } from '../model/payroll-nz/trackingCategories'; import { Authentication } from '../model/payroll-nz/models'; import { AxiosResponse } from 'axios'; import { OAuth } from '../model/payroll-nz/models'; export declare enum PayrollNzApiApiKeys { } export declare class PayrollNzApi { protected _basePath: string; protected defaultHeaders: any; protected _useQuerystring: boolean; protected binaryHeaders: any; protected authentications: { default: Authentication; OAuth2: OAuth; }; constructor(basePath?: string); set useQuerystring(value: boolean); set basePath(basePath: string); get basePath(): string; setDefaultAuthentication(auth: Authentication): void; setApiKey(key: PayrollNzApiApiKeys, value: string): void; set accessToken(token: string); /** * * @summary Approves a timesheet * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ approveTimesheet(xeroTenantId: string, timesheetID: string, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetObject; }>; /** * * @summary Creates a new deduction for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param deduction * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createDeduction(xeroTenantId: string, deduction: Deduction, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: DeductionObject; }>; /** * * @summary Creates a new earnings rate * @param xeroTenantId Xero identifier for Tenant * @param earningsRate * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEarningsRate(xeroTenantId: string, earningsRate: EarningsRate, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsRateObject; }>; /** * * @summary Creates an employees * @param xeroTenantId Xero identifier for Tenant * @param employee * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployee(xeroTenantId: string, employee: Employee, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeObject; }>; /** * * @summary Creates earnings template records for an employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param earningsTemplate * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeEarningsTemplate(xeroTenantId: string, employeeID: string, earningsTemplate: EarningsTemplate, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsTemplateObject; }>; /** * * @summary Creates leave records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeLeave * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeLeave(xeroTenantId: string, employeeID: string, employeeLeave: EmployeeLeave, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveObject; }>; /** * * @summary Creates a leave set-up for a specific employee. This is required before viewing, configuring and requesting leave for an employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeLeaveSetup * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeLeaveSetup(xeroTenantId: string, employeeID: string, employeeLeaveSetup: EmployeeLeaveSetup, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveSetupObject; }>; /** * * @summary Creates leave type records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeLeaveType * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeLeaveType(xeroTenantId: string, employeeID: string, employeeLeaveType: EmployeeLeaveType, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveTypeObject; }>; /** * * @summary Creates opening balances for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeOpeningBalance * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeOpeningBalances(xeroTenantId: string, employeeID: string, employeeOpeningBalance: Array, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeOpeningBalancesObject; }>; /** * * @summary Creates a payment method for an employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param paymentMethod * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeePaymentMethod(xeroTenantId: string, employeeID: string, paymentMethod: PaymentMethod, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PaymentMethodObject; }>; /** * * @summary Creates an employee salary and wage record * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param salaryAndWage * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeSalaryAndWage(xeroTenantId: string, employeeID: string, salaryAndWage: SalaryAndWage, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SalaryAndWageObject; }>; /** * * @summary Creates an employee working pattern * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeWorkingPatternWithWorkingWeeksRequest * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployeeWorkingPattern(xeroTenantId: string, employeeID: string, employeeWorkingPatternWithWorkingWeeksRequest: EmployeeWorkingPatternWithWorkingWeeksRequest, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeWorkingPatternWithWorkingWeeksObject; }>; /** * * @summary Creates an employment detail for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employment * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createEmployment(xeroTenantId: string, employeeID: string, employment: Employment, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmploymentObject; }>; /** * * @summary Creates a new leave type * @param xeroTenantId Xero identifier for Tenant * @param leaveType * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createLeaveType(xeroTenantId: string, leaveType: LeaveType, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: LeaveTypeObject; }>; /** * * @summary Creates multiple employee earnings template records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param earningsTemplate * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createMultipleEmployeeEarningsTemplate(xeroTenantId: string, employeeID: string, earningsTemplate: Array, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeEarningsTemplates; }>; /** * * @summary Creates a pay run * @param xeroTenantId Xero identifier for Tenant * @param payRun * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createPayRun(xeroTenantId: string, payRun: PayRun, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunObject; }>; /** * * @summary Creates a new payrun calendar * @param xeroTenantId Xero identifier for Tenant * @param payRunCalendar * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createPayRunCalendar(xeroTenantId: string, payRunCalendar: PayRunCalendar, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunCalendarObject; }>; /** * * @summary Creates a new reimbursement * @param xeroTenantId Xero identifier for Tenant * @param reimbursement * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createReimbursement(xeroTenantId: string, reimbursement: Reimbursement, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: ReimbursementObject; }>; /** * * @summary Creates a new superannuation * @param xeroTenantId Xero identifier for Tenant * @param benefit * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createSuperannuation(xeroTenantId: string, benefit: Benefit, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SuperannuationObject; }>; /** * * @summary Creates a new timesheet * @param xeroTenantId Xero identifier for Tenant * @param timesheet * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createTimesheet(xeroTenantId: string, timesheet: Timesheet, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetObject; }>; /** * * @summary Create a new timesheet line for a specific time sheet * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet * @param timesheetLine * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ createTimesheetLine(xeroTenantId: string, timesheetID: string, timesheetLine: TimesheetLine, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetLineObject; }>; /** * * @summary Deletes an employee\'s earnings template record * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param payTemplateEarningID Id for single pay template earnings object */ deleteEmployeeEarningsTemplate(xeroTenantId: string, employeeID: string, payTemplateEarningID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsTemplateObject; }>; /** * * @summary Deletes a leave record for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param leaveID Leave id for single object */ deleteEmployeeLeave(xeroTenantId: string, employeeID: string, leaveID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveObject; }>; /** * * @summary Deletes an employee\'s salary and wages record * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param salaryAndWagesID Id for single salary and wages object */ deleteEmployeeSalaryAndWage(xeroTenantId: string, employeeID: string, salaryAndWagesID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SalaryAndWageObject; }>; /** * * @summary deletes employee\'s working patterns * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeWorkingPatternID Employee working pattern id for single object */ deleteEmployeeWorkingPattern(xeroTenantId: string, employeeID: string, employeeWorkingPatternID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveObject; }>; /** * * @summary Deletes a timesheet * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet */ deleteTimesheet(xeroTenantId: string, timesheetID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetLine; }>; /** * * @summary Deletes a timesheet line for a specific timesheet * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet * @param timesheetLineID Identifier for the timesheet line */ deleteTimesheetLine(xeroTenantId: string, timesheetID: string, timesheetLineID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetLine; }>; /** * * @summary Retrieves a single deduction by using a unique deduction ID * @param xeroTenantId Xero identifier for Tenant * @param deductionId Identifier for the deduction */ getDeduction(xeroTenantId: string, deductionId: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: DeductionObject; }>; /** * * @summary Retrieves deductions for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getDeductions(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Deductions; }>; /** * * @summary Retrieves a specific earnings rates by using a unique earnings rate id * @param xeroTenantId Xero identifier for Tenant * @param earningsRateID Identifier for the earnings rate */ getEarningsRate(xeroTenantId: string, earningsRateID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsRateObject; }>; /** * * @summary Retrieves earnings rates * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getEarningsRates(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsRates; }>; /** * * @summary Retrieves an employees using a unique employee ID * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployee(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeObject; }>; /** * * @summary Retrieves leave balances for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeLeaveBalances(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveBalances; }>; /** * * @summary Retrieves leave periods for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param startDate Filter by start date * @param endDate Filter by end date */ getEmployeeLeavePeriods(xeroTenantId: string, employeeID: string, startDate?: string, endDate?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: LeavePeriods; }>; /** * * @summary Retrieves leave types for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeLeaveTypes(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveTypes; }>; /** * * @summary Retrieves leave records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeLeaves(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaves; }>; /** * * @summary Retrieves the opening balance for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeOpeningBalances(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeOpeningBalancesObject; }>; /** * * @summary Retrieves pay templates for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeePayTemplates(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeePayTemplates; }>; /** * * @summary Retrieves available payment methods for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeePaymentMethod(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PaymentMethodObject; }>; /** * * @summary Retrieves an employee\'s salary and wages record by using a unique salary and wage ID * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param salaryAndWagesID Id for single pay template earnings object */ getEmployeeSalaryAndWage(xeroTenantId: string, employeeID: string, salaryAndWagesID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SalaryAndWages; }>; /** * * @summary Retrieves an employee\'s salary and wages * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getEmployeeSalaryAndWages(xeroTenantId: string, employeeID: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SalaryAndWages; }>; /** * * @summary Retrieves tax records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeTax(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeTaxObject; }>; /** * * @summary Retrieves employee\'s working patterns * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeWorkingPatternID Employee working pattern id for single object */ getEmployeeWorkingPattern(xeroTenantId: string, employeeID: string, employeeWorkingPatternID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeWorkingPatternWithWorkingWeeksObject; }>; /** * * @summary Retrieves employee\'s working patterns * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object */ getEmployeeWorkingPatterns(xeroTenantId: string, employeeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeWorkingPatternsObject; }>; /** * * @summary Retrieves employees * @param xeroTenantId Xero identifier for Tenant * @param filter Filter by first name and/or lastname * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getEmployees(xeroTenantId: string, filter?: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Employees; }>; /** * * @summary Retrieves a specific leave type by using a unique leave type ID * @param xeroTenantId Xero identifier for Tenant * @param leaveTypeID Identifier for the leave type */ getLeaveType(xeroTenantId: string, leaveTypeID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: LeaveTypeObject; }>; /** * * @summary Retrieves leave types * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. * @param activeOnly Filters leave types by active status. By default the API returns all leave types. */ getLeaveTypes(xeroTenantId: string, page?: number, activeOnly?: boolean, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: LeaveTypes; }>; /** * * @summary Retrieves a specific pay run by using a unique pay run ID * @param xeroTenantId Xero identifier for Tenant * @param payRunID Identifier for the pay run */ getPayRun(xeroTenantId: string, payRunID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunObject; }>; /** * * @summary Retrieves a specific payrun calendar by using a unique payroll calendar ID * @param xeroTenantId Xero identifier for Tenant * @param payrollCalendarID Identifier for the payrun calendars */ getPayRunCalendar(xeroTenantId: string, payrollCalendarID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunCalendarObject; }>; /** * * @summary Retrieves payrun calendars * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getPayRunCalendars(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunCalendars; }>; /** * * @summary Retrieves pay runs * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. * @param status By default get payruns will return all the payruns for an organization. You can add GET https://api.xero.com/payroll.xro/2.0/payRuns?statu={PayRunStatus} to filter the payruns by status. */ getPayRuns(xeroTenantId: string, page?: number, status?: 'Draft' | 'Posted', options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRuns; }>; /** * * @summary Retrieves a specific payslip by a unique pay slip ID * @param xeroTenantId Xero identifier for Tenant * @param paySlipID Identifier for the payslip */ getPaySlip(xeroTenantId: string, paySlipID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PaySlipObject; }>; /** * * @summary Retrieves payslips * @param xeroTenantId Xero identifier for Tenant * @param payRunID PayrunID which specifies the containing payrun of payslips to retrieve. By default, the API does not group payslips by payrun. * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getPaySlips(xeroTenantId: string, payRunID: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PaySlips; }>; /** * * @summary Retrieves a specific reimbursement by using a unique reimbursement ID * @param xeroTenantId Xero identifier for Tenant * @param reimbursementID Identifier for the reimbursement */ getReimbursement(xeroTenantId: string, reimbursementID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: ReimbursementObject; }>; /** * * @summary Retrieves reimbursements * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getReimbursements(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Reimbursements; }>; /** * * @summary Retrieves settings * @param xeroTenantId Xero identifier for Tenant */ getSettings(xeroTenantId: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Settings; }>; /** * * @summary Retrieves a specific statutory deduction by using a unique statutory deductions id * @param xeroTenantId Xero identifier for Tenant * @param id Identifier for the statutory deduction */ getStatutoryDeduction(xeroTenantId: string, id: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: StatutoryDeductionObject; }>; /** * * @summary Retrieves statutory deductions * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getStatutoryDeductions(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: StatutoryDeductions; }>; /** * * @summary Retrieves a specific superannuation using a unique superannuation ID * @param xeroTenantId Xero identifier for Tenant * @param superannuationID Identifier for the superannuation */ getSuperannuation(xeroTenantId: string, superannuationID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SuperannuationObject; }>; /** * * @summary Retrieves superannuations * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. */ getSuperannuations(xeroTenantId: string, page?: number, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Superannuations; }>; /** * * @summary Retrieves a specific timesheet by using a unique timesheet ID * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet */ getTimesheet(xeroTenantId: string, timesheetID: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetObject; }>; /** * * @summary Retrieves timesheets * @param xeroTenantId Xero identifier for Tenant * @param page Page number which specifies the set of records to retrieve. By default the number of the records per set is 100. * @param filter Filter by employeeId and/or payrollCalendarId * @param status filter results by any timesheets with a matching timesheet status * @param startDate filter results by any timesheets with a startDate on or after the provided date * @param endDate filter results by any timesheets with a endDate on or before the provided date * @param sort sort the order of timesheets returned. The default is based on the timesheets createdDate, sorted oldest to newest. Currently, the only other option is to reverse the order based on the timesheets startDate, sorted newest to oldest. */ getTimesheets(xeroTenantId: string, page?: number, filter?: string, status?: string, startDate?: string, endDate?: string, sort?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: Timesheets; }>; /** * * @summary Retrieves tracking categories * @param xeroTenantId Xero identifier for Tenant */ getTrackingCategories(xeroTenantId: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TrackingCategories; }>; /** * * @summary Reverts a timesheet to draft * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ revertTimesheet(xeroTenantId: string, timesheetID: string, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetObject; }>; /** * * @summary Updates an existing employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employee * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateEmployee(xeroTenantId: string, employeeID: string, employee: Employee, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeObject; }>; /** * * @summary Updates an earnings template records for an employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param payTemplateEarningID Id for single pay template earnings object * @param earningsTemplate * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateEmployeeEarningsTemplate(xeroTenantId: string, employeeID: string, payTemplateEarningID: string, earningsTemplate: EarningsTemplate, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EarningsTemplateObject; }>; /** * * @summary Updates leave records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param leaveID Leave id for single object * @param employeeLeave * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateEmployeeLeave(xeroTenantId: string, employeeID: string, leaveID: string, employeeLeave: EmployeeLeave, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeLeaveObject; }>; /** * * @summary Updates an employee\'s salary and wages record * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param salaryAndWagesID Id for single pay template earnings object * @param salaryAndWage * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateEmployeeSalaryAndWage(xeroTenantId: string, employeeID: string, salaryAndWagesID: string, salaryAndWage: SalaryAndWage, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: SalaryAndWageObject; }>; /** * * @summary Updates the tax records for a specific employee * @param xeroTenantId Xero identifier for Tenant * @param employeeID Employee id for single object * @param employeeTax * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateEmployeeTax(xeroTenantId: string, employeeID: string, employeeTax: EmployeeTax, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: EmployeeTaxObject; }>; /** * * @summary Updates a pay run * @param xeroTenantId Xero identifier for Tenant * @param payRunID Identifier for the pay run * @param payRun * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updatePayRun(xeroTenantId: string, payRunID: string, payRun: PayRun, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PayRunObject; }>; /** * * @summary Creates an employee pay slip * @param xeroTenantId Xero identifier for Tenant * @param paySlipID Identifier for the payslip * @param paySlip * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updatePaySlipLineItems(xeroTenantId: string, paySlipID: string, paySlip: PaySlip, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: PaySlipObject; }>; /** * * @summary Updates a timesheet line for a specific timesheet * @param xeroTenantId Xero identifier for Tenant * @param timesheetID Identifier for the timesheet * @param timesheetLineID Identifier for the timesheet line * @param timesheetLine * @param idempotencyKey This allows you to safely retry requests without the risk of duplicate processing. 128 character max. */ updateTimesheetLine(xeroTenantId: string, timesheetID: string, timesheetLineID: string, timesheetLine: TimesheetLine, idempotencyKey?: string, options?: { headers: { [name: string]: string; }; }): Promise<{ response: AxiosResponse; body: TimesheetLineObject; }>; }