From 7fa76c8d13370a198c3a281c22b7a8ea4255e7f0 Mon Sep 17 00:00:00 2001 From: SidneyAllen Date: Fri, 6 Dec 2019 12:38:08 -0800 Subject: [PATCH] Fixing some dependencies to build properly --- dist/XeroClient.d.ts | 26 + dist/XeroClient.js | 90 + dist/XeroClient.js.map | 1 + dist/gen/api.d.ts | 3 + dist/gen/api.js | 9 + dist/gen/api.js.map | 1 + dist/gen/api/accountingApi.d.ts | 1720 +++ dist/gen/api/accountingApi.js | 11914 ++++++++++++++++ dist/gen/api/accountingApi.js.map | 1 + dist/gen/api/apis.d.ts | 3 + dist/gen/api/apis.js | 9 + dist/gen/api/apis.js.map | 1 + dist/gen/model/accounting/account.d.ts | 73 + dist/gen/model/accounting/account.js | 153 + dist/gen/model/accounting/account.js.map | 1 + dist/gen/model/accounting/accountType.d.ts | 24 + dist/gen/model/accounting/accountType.js | 28 + dist/gen/model/accounting/accountType.js.map | 1 + dist/gen/model/accounting/accounts.d.ts | 15 + dist/gen/model/accounting/accounts.js | 17 + dist/gen/model/accounting/accounts.js.map | 1 + .../gen/model/accounting/accountsPayable.d.ts | 15 + dist/gen/model/accounting/accountsPayable.js | 22 + .../model/accounting/accountsPayable.js.map | 1 + .../model/accounting/accountsReceivable.d.ts | 15 + .../model/accounting/accountsReceivable.js | 22 + .../accounting/accountsReceivable.js.map | 1 + dist/gen/model/accounting/address.d.ts | 30 + dist/gen/model/accounting/address.js | 70 + dist/gen/model/accounting/address.js.map | 1 + dist/gen/model/accounting/allocation.d.ts | 17 + dist/gen/model/accounting/allocation.js | 27 + dist/gen/model/accounting/allocation.js.map | 1 + dist/gen/model/accounting/allocations.d.ts | 15 + dist/gen/model/accounting/allocations.js | 17 + dist/gen/model/accounting/allocations.js.map | 1 + dist/gen/model/accounting/attachment.d.ts | 19 + dist/gen/model/accounting/attachment.js | 42 + dist/gen/model/accounting/attachment.js.map | 1 + dist/gen/model/accounting/attachments.d.ts | 15 + dist/gen/model/accounting/attachments.js | 17 + dist/gen/model/accounting/attachments.js.map | 1 + dist/gen/model/accounting/balances.d.ts | 17 + dist/gen/model/accounting/balances.js | 22 + dist/gen/model/accounting/balances.js.map | 1 + .../gen/model/accounting/bankTransaction.d.ts | 58 + dist/gen/model/accounting/bankTransaction.js | 141 + .../model/accounting/bankTransaction.js.map | 1 + .../model/accounting/bankTransactions.d.ts | 15 + dist/gen/model/accounting/bankTransactions.js | 17 + .../model/accounting/bankTransactions.js.map | 1 + dist/gen/model/accounting/bankTransfer.d.ts | 26 + dist/gen/model/accounting/bankTransfer.js | 67 + dist/gen/model/accounting/bankTransfer.js.map | 1 + dist/gen/model/accounting/bankTransfers.d.ts | 15 + dist/gen/model/accounting/bankTransfers.js | 17 + .../gen/model/accounting/bankTransfers.js.map | 1 + dist/gen/model/accounting/batchPayment.d.ts | 37 + dist/gen/model/accounting/batchPayment.js | 99 + dist/gen/model/accounting/batchPayment.js.map | 1 + .../model/accounting/batchPaymentDetails.d.ts | 18 + .../model/accounting/batchPaymentDetails.js | 37 + .../accounting/batchPaymentDetails.js.map | 1 + dist/gen/model/accounting/batchPayments.d.ts | 15 + dist/gen/model/accounting/batchPayments.js | 17 + .../gen/model/accounting/batchPayments.js.map | 1 + dist/gen/model/accounting/bill.d.ts | 16 + dist/gen/model/accounting/bill.js | 22 + dist/gen/model/accounting/bill.js.map | 1 + dist/gen/model/accounting/brandingTheme.d.ts | 24 + dist/gen/model/accounting/brandingTheme.js | 48 + .../gen/model/accounting/brandingTheme.js.map | 1 + dist/gen/model/accounting/brandingThemes.d.ts | 15 + dist/gen/model/accounting/brandingThemes.js | 17 + .../model/accounting/brandingThemes.js.map | 1 + dist/gen/model/accounting/cISOrgSetting.d.ts | 16 + dist/gen/model/accounting/cISOrgSetting.js | 27 + .../gen/model/accounting/cISOrgSetting.js.map | 1 + dist/gen/model/accounting/cISSetting.d.ts | 15 + dist/gen/model/accounting/cISSetting.js | 22 + dist/gen/model/accounting/cISSetting.js.map | 1 + dist/gen/model/accounting/cISSettings.d.ts | 15 + dist/gen/model/accounting/cISSettings.js | 17 + dist/gen/model/accounting/cISSettings.js.map | 1 + dist/gen/model/accounting/contact.d.ts | 70 + dist/gen/model/accounting/contact.js | 210 + dist/gen/model/accounting/contact.js.map | 1 + dist/gen/model/accounting/contactGroup.d.ts | 24 + dist/gen/model/accounting/contactGroup.js | 39 + dist/gen/model/accounting/contactGroup.js.map | 1 + dist/gen/model/accounting/contactGroups.d.ts | 15 + dist/gen/model/accounting/contactGroups.js | 17 + .../gen/model/accounting/contactGroups.js.map | 1 + dist/gen/model/accounting/contactPerson.d.ts | 17 + dist/gen/model/accounting/contactPerson.js | 32 + .../gen/model/accounting/contactPerson.js.map | 1 + dist/gen/model/accounting/contacts.d.ts | 15 + dist/gen/model/accounting/contacts.js | 17 + dist/gen/model/accounting/contacts.js.map | 1 + dist/gen/model/accounting/countryCode.d.ts | 242 + dist/gen/model/accounting/countryCode.js | 246 + dist/gen/model/accounting/countryCode.js.map | 1 + dist/gen/model/accounting/creditNote.d.ts | 57 + dist/gen/model/accounting/creditNote.js | 143 + dist/gen/model/accounting/creditNote.js.map | 1 + dist/gen/model/accounting/creditNotes.d.ts | 15 + dist/gen/model/accounting/creditNotes.js | 17 + dist/gen/model/accounting/creditNotes.js.map | 1 + dist/gen/model/accounting/currencies.d.ts | 15 + dist/gen/model/accounting/currencies.js | 17 + dist/gen/model/accounting/currencies.js.map | 1 + dist/gen/model/accounting/currency.d.ts | 16 + dist/gen/model/accounting/currency.js | 22 + dist/gen/model/accounting/currency.js.map | 1 + dist/gen/model/accounting/currencyCode.d.ts | 164 + dist/gen/model/accounting/currencyCode.js | 168 + dist/gen/model/accounting/currencyCode.js.map | 1 + dist/gen/model/accounting/element.d.ts | 15 + dist/gen/model/accounting/element.js | 17 + dist/gen/model/accounting/element.js.map | 1 + dist/gen/model/accounting/employee.d.ts | 27 + dist/gen/model/accounting/employee.js | 50 + dist/gen/model/accounting/employee.js.map | 1 + dist/gen/model/accounting/employees.d.ts | 15 + dist/gen/model/accounting/employees.js | 17 + dist/gen/model/accounting/employees.js.map | 1 + dist/gen/model/accounting/expenseClaim.d.ts | 37 + dist/gen/model/accounting/expenseClaim.js | 82 + dist/gen/model/accounting/expenseClaim.js.map | 1 + dist/gen/model/accounting/expenseClaims.d.ts | 15 + dist/gen/model/accounting/expenseClaims.js | 17 + .../gen/model/accounting/expenseClaims.js.map | 1 + dist/gen/model/accounting/externalLink.d.ts | 25 + dist/gen/model/accounting/externalLink.js | 37 + dist/gen/model/accounting/externalLink.js.map | 1 + dist/gen/model/accounting/historyRecord.d.ts | 17 + dist/gen/model/accounting/historyRecord.js | 32 + .../gen/model/accounting/historyRecord.js.map | 1 + dist/gen/model/accounting/historyRecords.d.ts | 15 + dist/gen/model/accounting/historyRecords.js | 17 + .../model/accounting/historyRecords.js.map | 1 + dist/gen/model/accounting/invoice.d.ts | 77 + dist/gen/model/accounting/invoice.js | 216 + dist/gen/model/accounting/invoice.js.map | 1 + .../gen/model/accounting/invoiceReminder.d.ts | 14 + dist/gen/model/accounting/invoiceReminder.js | 17 + .../model/accounting/invoiceReminder.js.map | 1 + .../model/accounting/invoiceReminders.d.ts | 15 + dist/gen/model/accounting/invoiceReminders.js | 17 + .../model/accounting/invoiceReminders.js.map | 1 + dist/gen/model/accounting/invoices.d.ts | 15 + dist/gen/model/accounting/invoices.js | 17 + dist/gen/model/accounting/invoices.js.map | 1 + dist/gen/model/accounting/item.d.ts | 30 + dist/gen/model/accounting/item.js | 87 + dist/gen/model/accounting/item.js.map | 1 + dist/gen/model/accounting/items.d.ts | 15 + dist/gen/model/accounting/items.js | 17 + dist/gen/model/accounting/items.js.map | 1 + dist/gen/model/accounting/journal.d.ts | 51 + dist/gen/model/accounting/journal.js | 82 + dist/gen/model/accounting/journal.js.map | 1 + dist/gen/model/accounting/journalLine.d.ts | 27 + dist/gen/model/accounting/journalLine.js | 72 + dist/gen/model/accounting/journalLine.js.map | 1 + dist/gen/model/accounting/journals.d.ts | 15 + dist/gen/model/accounting/journals.js | 17 + dist/gen/model/accounting/journals.js.map | 1 + .../gen/model/accounting/lineAmountTypes.d.ts | 5 + dist/gen/model/accounting/lineAmountTypes.js | 9 + .../model/accounting/lineAmountTypes.js.map | 1 + dist/gen/model/accounting/lineItem.d.ts | 27 + dist/gen/model/accounting/lineItem.js | 77 + dist/gen/model/accounting/lineItem.js.map | 1 + .../model/accounting/lineItemTracking.d.ts | 16 + dist/gen/model/accounting/lineItemTracking.js | 27 + .../model/accounting/lineItemTracking.js.map | 1 + .../model/accounting/linkedTransaction.d.ts | 41 + .../gen/model/accounting/linkedTransaction.js | 86 + .../model/accounting/linkedTransaction.js.map | 1 + .../model/accounting/linkedTransactions.d.ts | 15 + .../model/accounting/linkedTransactions.js | 17 + .../accounting/linkedTransactions.js.map | 1 + dist/gen/model/accounting/manualJournal.d.ts | 38 + dist/gen/model/accounting/manualJournal.js | 86 + .../gen/model/accounting/manualJournal.js.map | 1 + .../model/accounting/manualJournalLine.d.ts | 21 + .../gen/model/accounting/manualJournalLine.js | 47 + .../model/accounting/manualJournalLine.js.map | 1 + dist/gen/model/accounting/manualJournals.d.ts | 15 + dist/gen/model/accounting/manualJournals.js | 17 + .../model/accounting/manualJournals.js.map | 1 + dist/gen/model/accounting/modelError.d.ts | 18 + dist/gen/model/accounting/modelError.js | 32 + dist/gen/model/accounting/modelError.js.map | 1 + dist/gen/model/accounting/models.d.ts | 142 + dist/gen/model/accounting/models.js | 567 + dist/gen/model/accounting/models.js.map | 1 + dist/gen/model/accounting/onlineInvoice.d.ts | 14 + dist/gen/model/accounting/onlineInvoice.js | 17 + .../gen/model/accounting/onlineInvoice.js.map | 1 + dist/gen/model/accounting/onlineInvoices.d.ts | 15 + dist/gen/model/accounting/onlineInvoices.js | 17 + .../model/accounting/onlineInvoices.js.map | 1 + dist/gen/model/accounting/organisation.d.ts | 137 + dist/gen/model/accounting/organisation.js | 264 + dist/gen/model/accounting/organisation.js.map | 1 + dist/gen/model/accounting/organisations.d.ts | 15 + dist/gen/model/accounting/organisations.js | 17 + .../gen/model/accounting/organisations.js.map | 1 + dist/gen/model/accounting/overpayment.d.ts | 50 + dist/gen/model/accounting/overpayment.js | 116 + dist/gen/model/accounting/overpayment.js.map | 1 + dist/gen/model/accounting/overpayments.d.ts | 15 + dist/gen/model/accounting/overpayments.js | 17 + dist/gen/model/accounting/overpayments.js.map | 1 + dist/gen/model/accounting/payment.d.ts | 58 + dist/gen/model/accounting/payment.js | 145 + dist/gen/model/accounting/payment.js.map | 1 + dist/gen/model/accounting/paymentService.d.ts | 20 + dist/gen/model/accounting/paymentService.js | 42 + .../model/accounting/paymentService.js.map | 1 + .../gen/model/accounting/paymentServices.d.ts | 15 + dist/gen/model/accounting/paymentServices.js | 17 + .../model/accounting/paymentServices.js.map | 1 + dist/gen/model/accounting/paymentTerm.d.ts | 16 + dist/gen/model/accounting/paymentTerm.js | 22 + dist/gen/model/accounting/paymentTerm.js.map | 1 + .../gen/model/accounting/paymentTermType.d.ts | 6 + dist/gen/model/accounting/paymentTermType.js | 10 + .../model/accounting/paymentTermType.js.map | 1 + dist/gen/model/accounting/payments.d.ts | 15 + dist/gen/model/accounting/payments.js | 17 + dist/gen/model/accounting/payments.js.map | 1 + dist/gen/model/accounting/phone.d.ts | 26 + dist/gen/model/accounting/phone.js | 42 + dist/gen/model/accounting/phone.js.map | 1 + dist/gen/model/accounting/prepayment.d.ts | 49 + dist/gen/model/accounting/prepayment.js | 112 + dist/gen/model/accounting/prepayment.js.map | 1 + dist/gen/model/accounting/prepayments.d.ts | 15 + dist/gen/model/accounting/prepayments.js | 17 + dist/gen/model/accounting/prepayments.js.map | 1 + dist/gen/model/accounting/purchase.d.ts | 17 + dist/gen/model/accounting/purchase.js | 32 + dist/gen/model/accounting/purchase.js.map | 1 + dist/gen/model/accounting/purchaseOrder.d.ts | 56 + dist/gen/model/accounting/purchaseOrder.js | 162 + .../gen/model/accounting/purchaseOrder.js.map | 1 + dist/gen/model/accounting/purchaseOrders.d.ts | 15 + dist/gen/model/accounting/purchaseOrders.js | 17 + .../model/accounting/purchaseOrders.js.map | 1 + dist/gen/model/accounting/quote.d.ts | 40 + dist/gen/model/accounting/quote.js | 122 + dist/gen/model/accounting/quote.js.map | 1 + .../model/accounting/quoteStatusCodes.d.ts | 7 + dist/gen/model/accounting/quoteStatusCodes.js | 11 + .../model/accounting/quoteStatusCodes.js.map | 1 + dist/gen/model/accounting/quotes.d.ts | 15 + dist/gen/model/accounting/quotes.js | 17 + dist/gen/model/accounting/quotes.js.map | 1 + dist/gen/model/accounting/receipt.d.ts | 44 + dist/gen/model/accounting/receipt.js | 106 + dist/gen/model/accounting/receipt.js.map | 1 + dist/gen/model/accounting/receipts.d.ts | 15 + dist/gen/model/accounting/receipts.js | 17 + dist/gen/model/accounting/receipts.js.map | 1 + .../model/accounting/repeatingInvoice.d.ts | 45 + dist/gen/model/accounting/repeatingInvoice.js | 104 + .../model/accounting/repeatingInvoice.js.map | 1 + .../model/accounting/repeatingInvoices.d.ts | 15 + .../gen/model/accounting/repeatingInvoices.js | 17 + .../model/accounting/repeatingInvoices.js.map | 1 + dist/gen/model/accounting/report.d.ts | 26 + dist/gen/model/accounting/report.js | 53 + dist/gen/model/accounting/report.js.map | 1 + .../gen/model/accounting/reportAttribute.d.ts | 15 + dist/gen/model/accounting/reportAttribute.js | 22 + .../model/accounting/reportAttribute.js.map | 1 + dist/gen/model/accounting/reportCell.d.ts | 16 + dist/gen/model/accounting/reportCell.js | 22 + dist/gen/model/accounting/reportCell.js.map | 1 + dist/gen/model/accounting/reportFields.d.ts | 16 + dist/gen/model/accounting/reportFields.js | 27 + dist/gen/model/accounting/reportFields.js.map | 1 + dist/gen/model/accounting/reportRow.d.ts | 18 + dist/gen/model/accounting/reportRow.js | 27 + dist/gen/model/accounting/reportRow.js.map | 1 + dist/gen/model/accounting/reportRows.d.ts | 20 + dist/gen/model/accounting/reportRows.js | 32 + dist/gen/model/accounting/reportRows.js.map | 1 + dist/gen/model/accounting/reportWithRow.d.ts | 24 + dist/gen/model/accounting/reportWithRow.js | 57 + .../gen/model/accounting/reportWithRow.js.map | 1 + dist/gen/model/accounting/reportWithRows.d.ts | 15 + dist/gen/model/accounting/reportWithRows.js | 17 + .../model/accounting/reportWithRows.js.map | 1 + dist/gen/model/accounting/reports.d.ts | 15 + dist/gen/model/accounting/reports.js | 17 + dist/gen/model/accounting/reports.js.map | 1 + dist/gen/model/accounting/requestEmpty.d.ts | 14 + dist/gen/model/accounting/requestEmpty.js | 17 + dist/gen/model/accounting/requestEmpty.js.map | 1 + dist/gen/model/accounting/rowType.d.ts | 6 + dist/gen/model/accounting/rowType.js | 10 + dist/gen/model/accounting/rowType.js.map | 1 + .../accounting/salesTrackingCategory.d.ts | 15 + .../model/accounting/salesTrackingCategory.js | 22 + .../accounting/salesTrackingCategory.js.map | 1 + dist/gen/model/accounting/schedule.d.ts | 32 + dist/gen/model/accounting/schedule.js | 61 + dist/gen/model/accounting/schedule.js.map | 1 + dist/gen/model/accounting/taxComponent.d.ts | 17 + dist/gen/model/accounting/taxComponent.js | 32 + dist/gen/model/accounting/taxComponent.js.map | 1 + dist/gen/model/accounting/taxRate.d.ts | 68 + dist/gen/model/accounting/taxRate.js | 116 + dist/gen/model/accounting/taxRate.js.map | 1 + dist/gen/model/accounting/taxRates.d.ts | 15 + dist/gen/model/accounting/taxRates.js | 17 + dist/gen/model/accounting/taxRates.js.map | 1 + dist/gen/model/accounting/taxType.d.ts | 54 + dist/gen/model/accounting/taxType.js | 58 + dist/gen/model/accounting/taxType.js.map | 1 + .../accounting/tenNinteyNineContact.d.ts | 35 + .../model/accounting/tenNinteyNineContact.js | 122 + .../accounting/tenNinteyNineContact.js.map | 1 + dist/gen/model/accounting/timeZone.d.ts | 109 + dist/gen/model/accounting/timeZone.js | 113 + dist/gen/model/accounting/timeZone.js.map | 1 + .../model/accounting/trackingCategories.d.ts | 15 + .../model/accounting/trackingCategories.js | 17 + .../accounting/trackingCategories.js.map | 1 + .../model/accounting/trackingCategory.d.ts | 27 + dist/gen/model/accounting/trackingCategory.js | 50 + .../model/accounting/trackingCategory.js.map | 1 + dist/gen/model/accounting/trackingOption.d.ts | 24 + dist/gen/model/accounting/trackingOption.js | 40 + .../model/accounting/trackingOption.js.map | 1 + .../gen/model/accounting/trackingOptions.d.ts | 15 + dist/gen/model/accounting/trackingOptions.js | 17 + .../model/accounting/trackingOptions.js.map | 1 + dist/gen/model/accounting/user.d.ts | 31 + dist/gen/model/accounting/user.js | 59 + dist/gen/model/accounting/user.js.map | 1 + dist/gen/model/accounting/users.d.ts | 15 + dist/gen/model/accounting/users.js | 17 + dist/gen/model/accounting/users.js.map | 1 + .../gen/model/accounting/validationError.d.ts | 14 + dist/gen/model/accounting/validationError.js | 17 + .../model/accounting/validationError.js.map | 1 + dist/index.d.ts | 3 + dist/index.js | 9 + dist/index.js.map | 1 + dist/untyped.d.ts | 406 + dist/untyped.js | 2 + dist/untyped.js.map | 1 + package-lock.json | 5316 +++++++ package.json | 6 +- 359 files changed, 29216 insertions(+), 3 deletions(-) create mode 100644 dist/XeroClient.d.ts create mode 100644 dist/XeroClient.js create mode 100644 dist/XeroClient.js.map create mode 100644 dist/gen/api.d.ts create mode 100644 dist/gen/api.js create mode 100644 dist/gen/api.js.map create mode 100644 dist/gen/api/accountingApi.d.ts create mode 100644 dist/gen/api/accountingApi.js create mode 100644 dist/gen/api/accountingApi.js.map create mode 100644 dist/gen/api/apis.d.ts create mode 100644 dist/gen/api/apis.js create mode 100644 dist/gen/api/apis.js.map create mode 100644 dist/gen/model/accounting/account.d.ts create mode 100644 dist/gen/model/accounting/account.js create mode 100644 dist/gen/model/accounting/account.js.map create mode 100644 dist/gen/model/accounting/accountType.d.ts create mode 100644 dist/gen/model/accounting/accountType.js create mode 100644 dist/gen/model/accounting/accountType.js.map create mode 100644 dist/gen/model/accounting/accounts.d.ts create mode 100644 dist/gen/model/accounting/accounts.js create mode 100644 dist/gen/model/accounting/accounts.js.map create mode 100644 dist/gen/model/accounting/accountsPayable.d.ts create mode 100644 dist/gen/model/accounting/accountsPayable.js create mode 100644 dist/gen/model/accounting/accountsPayable.js.map create mode 100644 dist/gen/model/accounting/accountsReceivable.d.ts create mode 100644 dist/gen/model/accounting/accountsReceivable.js create mode 100644 dist/gen/model/accounting/accountsReceivable.js.map create mode 100644 dist/gen/model/accounting/address.d.ts create mode 100644 dist/gen/model/accounting/address.js create mode 100644 dist/gen/model/accounting/address.js.map create mode 100644 dist/gen/model/accounting/allocation.d.ts create mode 100644 dist/gen/model/accounting/allocation.js create mode 100644 dist/gen/model/accounting/allocation.js.map create mode 100644 dist/gen/model/accounting/allocations.d.ts create mode 100644 dist/gen/model/accounting/allocations.js create mode 100644 dist/gen/model/accounting/allocations.js.map create mode 100644 dist/gen/model/accounting/attachment.d.ts create mode 100644 dist/gen/model/accounting/attachment.js create mode 100644 dist/gen/model/accounting/attachment.js.map create mode 100644 dist/gen/model/accounting/attachments.d.ts create mode 100644 dist/gen/model/accounting/attachments.js create mode 100644 dist/gen/model/accounting/attachments.js.map create mode 100644 dist/gen/model/accounting/balances.d.ts create mode 100644 dist/gen/model/accounting/balances.js create mode 100644 dist/gen/model/accounting/balances.js.map create mode 100644 dist/gen/model/accounting/bankTransaction.d.ts create mode 100644 dist/gen/model/accounting/bankTransaction.js create mode 100644 dist/gen/model/accounting/bankTransaction.js.map create mode 100644 dist/gen/model/accounting/bankTransactions.d.ts create mode 100644 dist/gen/model/accounting/bankTransactions.js create mode 100644 dist/gen/model/accounting/bankTransactions.js.map create mode 100644 dist/gen/model/accounting/bankTransfer.d.ts create mode 100644 dist/gen/model/accounting/bankTransfer.js create mode 100644 dist/gen/model/accounting/bankTransfer.js.map create mode 100644 dist/gen/model/accounting/bankTransfers.d.ts create mode 100644 dist/gen/model/accounting/bankTransfers.js create mode 100644 dist/gen/model/accounting/bankTransfers.js.map create mode 100644 dist/gen/model/accounting/batchPayment.d.ts create mode 100644 dist/gen/model/accounting/batchPayment.js create mode 100644 dist/gen/model/accounting/batchPayment.js.map create mode 100644 dist/gen/model/accounting/batchPaymentDetails.d.ts create mode 100644 dist/gen/model/accounting/batchPaymentDetails.js create mode 100644 dist/gen/model/accounting/batchPaymentDetails.js.map create mode 100644 dist/gen/model/accounting/batchPayments.d.ts create mode 100644 dist/gen/model/accounting/batchPayments.js create mode 100644 dist/gen/model/accounting/batchPayments.js.map create mode 100644 dist/gen/model/accounting/bill.d.ts create mode 100644 dist/gen/model/accounting/bill.js create mode 100644 dist/gen/model/accounting/bill.js.map create mode 100644 dist/gen/model/accounting/brandingTheme.d.ts create mode 100644 dist/gen/model/accounting/brandingTheme.js create mode 100644 dist/gen/model/accounting/brandingTheme.js.map create mode 100644 dist/gen/model/accounting/brandingThemes.d.ts create mode 100644 dist/gen/model/accounting/brandingThemes.js create mode 100644 dist/gen/model/accounting/brandingThemes.js.map create mode 100644 dist/gen/model/accounting/cISOrgSetting.d.ts create mode 100644 dist/gen/model/accounting/cISOrgSetting.js create mode 100644 dist/gen/model/accounting/cISOrgSetting.js.map create mode 100644 dist/gen/model/accounting/cISSetting.d.ts create mode 100644 dist/gen/model/accounting/cISSetting.js create mode 100644 dist/gen/model/accounting/cISSetting.js.map create mode 100644 dist/gen/model/accounting/cISSettings.d.ts create mode 100644 dist/gen/model/accounting/cISSettings.js create mode 100644 dist/gen/model/accounting/cISSettings.js.map create mode 100644 dist/gen/model/accounting/contact.d.ts create mode 100644 dist/gen/model/accounting/contact.js create mode 100644 dist/gen/model/accounting/contact.js.map create mode 100644 dist/gen/model/accounting/contactGroup.d.ts create mode 100644 dist/gen/model/accounting/contactGroup.js create mode 100644 dist/gen/model/accounting/contactGroup.js.map create mode 100644 dist/gen/model/accounting/contactGroups.d.ts create mode 100644 dist/gen/model/accounting/contactGroups.js create mode 100644 dist/gen/model/accounting/contactGroups.js.map create mode 100644 dist/gen/model/accounting/contactPerson.d.ts create mode 100644 dist/gen/model/accounting/contactPerson.js create mode 100644 dist/gen/model/accounting/contactPerson.js.map create mode 100644 dist/gen/model/accounting/contacts.d.ts create mode 100644 dist/gen/model/accounting/contacts.js create mode 100644 dist/gen/model/accounting/contacts.js.map create mode 100644 dist/gen/model/accounting/countryCode.d.ts create mode 100644 dist/gen/model/accounting/countryCode.js create mode 100644 dist/gen/model/accounting/countryCode.js.map create mode 100644 dist/gen/model/accounting/creditNote.d.ts create mode 100644 dist/gen/model/accounting/creditNote.js create mode 100644 dist/gen/model/accounting/creditNote.js.map create mode 100644 dist/gen/model/accounting/creditNotes.d.ts create mode 100644 dist/gen/model/accounting/creditNotes.js create mode 100644 dist/gen/model/accounting/creditNotes.js.map create mode 100644 dist/gen/model/accounting/currencies.d.ts create mode 100644 dist/gen/model/accounting/currencies.js create mode 100644 dist/gen/model/accounting/currencies.js.map create mode 100644 dist/gen/model/accounting/currency.d.ts create mode 100644 dist/gen/model/accounting/currency.js create mode 100644 dist/gen/model/accounting/currency.js.map create mode 100644 dist/gen/model/accounting/currencyCode.d.ts create mode 100644 dist/gen/model/accounting/currencyCode.js create mode 100644 dist/gen/model/accounting/currencyCode.js.map create mode 100644 dist/gen/model/accounting/element.d.ts create mode 100644 dist/gen/model/accounting/element.js create mode 100644 dist/gen/model/accounting/element.js.map create mode 100644 dist/gen/model/accounting/employee.d.ts create mode 100644 dist/gen/model/accounting/employee.js create mode 100644 dist/gen/model/accounting/employee.js.map create mode 100644 dist/gen/model/accounting/employees.d.ts create mode 100644 dist/gen/model/accounting/employees.js create mode 100644 dist/gen/model/accounting/employees.js.map create mode 100644 dist/gen/model/accounting/expenseClaim.d.ts create mode 100644 dist/gen/model/accounting/expenseClaim.js create mode 100644 dist/gen/model/accounting/expenseClaim.js.map create mode 100644 dist/gen/model/accounting/expenseClaims.d.ts create mode 100644 dist/gen/model/accounting/expenseClaims.js create mode 100644 dist/gen/model/accounting/expenseClaims.js.map create mode 100644 dist/gen/model/accounting/externalLink.d.ts create mode 100644 dist/gen/model/accounting/externalLink.js create mode 100644 dist/gen/model/accounting/externalLink.js.map create mode 100644 dist/gen/model/accounting/historyRecord.d.ts create mode 100644 dist/gen/model/accounting/historyRecord.js create mode 100644 dist/gen/model/accounting/historyRecord.js.map create mode 100644 dist/gen/model/accounting/historyRecords.d.ts create mode 100644 dist/gen/model/accounting/historyRecords.js create mode 100644 dist/gen/model/accounting/historyRecords.js.map create mode 100644 dist/gen/model/accounting/invoice.d.ts create mode 100644 dist/gen/model/accounting/invoice.js create mode 100644 dist/gen/model/accounting/invoice.js.map create mode 100644 dist/gen/model/accounting/invoiceReminder.d.ts create mode 100644 dist/gen/model/accounting/invoiceReminder.js create mode 100644 dist/gen/model/accounting/invoiceReminder.js.map create mode 100644 dist/gen/model/accounting/invoiceReminders.d.ts create mode 100644 dist/gen/model/accounting/invoiceReminders.js create mode 100644 dist/gen/model/accounting/invoiceReminders.js.map create mode 100644 dist/gen/model/accounting/invoices.d.ts create mode 100644 dist/gen/model/accounting/invoices.js create mode 100644 dist/gen/model/accounting/invoices.js.map create mode 100644 dist/gen/model/accounting/item.d.ts create mode 100644 dist/gen/model/accounting/item.js create mode 100644 dist/gen/model/accounting/item.js.map create mode 100644 dist/gen/model/accounting/items.d.ts create mode 100644 dist/gen/model/accounting/items.js create mode 100644 dist/gen/model/accounting/items.js.map create mode 100644 dist/gen/model/accounting/journal.d.ts create mode 100644 dist/gen/model/accounting/journal.js create mode 100644 dist/gen/model/accounting/journal.js.map create mode 100644 dist/gen/model/accounting/journalLine.d.ts create mode 100644 dist/gen/model/accounting/journalLine.js create mode 100644 dist/gen/model/accounting/journalLine.js.map create mode 100644 dist/gen/model/accounting/journals.d.ts create mode 100644 dist/gen/model/accounting/journals.js create mode 100644 dist/gen/model/accounting/journals.js.map create mode 100644 dist/gen/model/accounting/lineAmountTypes.d.ts create mode 100644 dist/gen/model/accounting/lineAmountTypes.js create mode 100644 dist/gen/model/accounting/lineAmountTypes.js.map create mode 100644 dist/gen/model/accounting/lineItem.d.ts create mode 100644 dist/gen/model/accounting/lineItem.js create mode 100644 dist/gen/model/accounting/lineItem.js.map create mode 100644 dist/gen/model/accounting/lineItemTracking.d.ts create mode 100644 dist/gen/model/accounting/lineItemTracking.js create mode 100644 dist/gen/model/accounting/lineItemTracking.js.map create mode 100644 dist/gen/model/accounting/linkedTransaction.d.ts create mode 100644 dist/gen/model/accounting/linkedTransaction.js create mode 100644 dist/gen/model/accounting/linkedTransaction.js.map create mode 100644 dist/gen/model/accounting/linkedTransactions.d.ts create mode 100644 dist/gen/model/accounting/linkedTransactions.js create mode 100644 dist/gen/model/accounting/linkedTransactions.js.map create mode 100644 dist/gen/model/accounting/manualJournal.d.ts create mode 100644 dist/gen/model/accounting/manualJournal.js create mode 100644 dist/gen/model/accounting/manualJournal.js.map create mode 100644 dist/gen/model/accounting/manualJournalLine.d.ts create mode 100644 dist/gen/model/accounting/manualJournalLine.js create mode 100644 dist/gen/model/accounting/manualJournalLine.js.map create mode 100644 dist/gen/model/accounting/manualJournals.d.ts create mode 100644 dist/gen/model/accounting/manualJournals.js create mode 100644 dist/gen/model/accounting/manualJournals.js.map create mode 100644 dist/gen/model/accounting/modelError.d.ts create mode 100644 dist/gen/model/accounting/modelError.js create mode 100644 dist/gen/model/accounting/modelError.js.map create mode 100644 dist/gen/model/accounting/models.d.ts create mode 100644 dist/gen/model/accounting/models.js create mode 100644 dist/gen/model/accounting/models.js.map create mode 100644 dist/gen/model/accounting/onlineInvoice.d.ts create mode 100644 dist/gen/model/accounting/onlineInvoice.js create mode 100644 dist/gen/model/accounting/onlineInvoice.js.map create mode 100644 dist/gen/model/accounting/onlineInvoices.d.ts create mode 100644 dist/gen/model/accounting/onlineInvoices.js create mode 100644 dist/gen/model/accounting/onlineInvoices.js.map create mode 100644 dist/gen/model/accounting/organisation.d.ts create mode 100644 dist/gen/model/accounting/organisation.js create mode 100644 dist/gen/model/accounting/organisation.js.map create mode 100644 dist/gen/model/accounting/organisations.d.ts create mode 100644 dist/gen/model/accounting/organisations.js create mode 100644 dist/gen/model/accounting/organisations.js.map create mode 100644 dist/gen/model/accounting/overpayment.d.ts create mode 100644 dist/gen/model/accounting/overpayment.js create mode 100644 dist/gen/model/accounting/overpayment.js.map create mode 100644 dist/gen/model/accounting/overpayments.d.ts create mode 100644 dist/gen/model/accounting/overpayments.js create mode 100644 dist/gen/model/accounting/overpayments.js.map create mode 100644 dist/gen/model/accounting/payment.d.ts create mode 100644 dist/gen/model/accounting/payment.js create mode 100644 dist/gen/model/accounting/payment.js.map create mode 100644 dist/gen/model/accounting/paymentService.d.ts create mode 100644 dist/gen/model/accounting/paymentService.js create mode 100644 dist/gen/model/accounting/paymentService.js.map create mode 100644 dist/gen/model/accounting/paymentServices.d.ts create mode 100644 dist/gen/model/accounting/paymentServices.js create mode 100644 dist/gen/model/accounting/paymentServices.js.map create mode 100644 dist/gen/model/accounting/paymentTerm.d.ts create mode 100644 dist/gen/model/accounting/paymentTerm.js create mode 100644 dist/gen/model/accounting/paymentTerm.js.map create mode 100644 dist/gen/model/accounting/paymentTermType.d.ts create mode 100644 dist/gen/model/accounting/paymentTermType.js create mode 100644 dist/gen/model/accounting/paymentTermType.js.map create mode 100644 dist/gen/model/accounting/payments.d.ts create mode 100644 dist/gen/model/accounting/payments.js create mode 100644 dist/gen/model/accounting/payments.js.map create mode 100644 dist/gen/model/accounting/phone.d.ts create mode 100644 dist/gen/model/accounting/phone.js create mode 100644 dist/gen/model/accounting/phone.js.map create mode 100644 dist/gen/model/accounting/prepayment.d.ts create mode 100644 dist/gen/model/accounting/prepayment.js create mode 100644 dist/gen/model/accounting/prepayment.js.map create mode 100644 dist/gen/model/accounting/prepayments.d.ts create mode 100644 dist/gen/model/accounting/prepayments.js create mode 100644 dist/gen/model/accounting/prepayments.js.map create mode 100644 dist/gen/model/accounting/purchase.d.ts create mode 100644 dist/gen/model/accounting/purchase.js create mode 100644 dist/gen/model/accounting/purchase.js.map create mode 100644 dist/gen/model/accounting/purchaseOrder.d.ts create mode 100644 dist/gen/model/accounting/purchaseOrder.js create mode 100644 dist/gen/model/accounting/purchaseOrder.js.map create mode 100644 dist/gen/model/accounting/purchaseOrders.d.ts create mode 100644 dist/gen/model/accounting/purchaseOrders.js create mode 100644 dist/gen/model/accounting/purchaseOrders.js.map create mode 100644 dist/gen/model/accounting/quote.d.ts create mode 100644 dist/gen/model/accounting/quote.js create mode 100644 dist/gen/model/accounting/quote.js.map create mode 100644 dist/gen/model/accounting/quoteStatusCodes.d.ts create mode 100644 dist/gen/model/accounting/quoteStatusCodes.js create mode 100644 dist/gen/model/accounting/quoteStatusCodes.js.map create mode 100644 dist/gen/model/accounting/quotes.d.ts create mode 100644 dist/gen/model/accounting/quotes.js create mode 100644 dist/gen/model/accounting/quotes.js.map create mode 100644 dist/gen/model/accounting/receipt.d.ts create mode 100644 dist/gen/model/accounting/receipt.js create mode 100644 dist/gen/model/accounting/receipt.js.map create mode 100644 dist/gen/model/accounting/receipts.d.ts create mode 100644 dist/gen/model/accounting/receipts.js create mode 100644 dist/gen/model/accounting/receipts.js.map create mode 100644 dist/gen/model/accounting/repeatingInvoice.d.ts create mode 100644 dist/gen/model/accounting/repeatingInvoice.js create mode 100644 dist/gen/model/accounting/repeatingInvoice.js.map create mode 100644 dist/gen/model/accounting/repeatingInvoices.d.ts create mode 100644 dist/gen/model/accounting/repeatingInvoices.js create mode 100644 dist/gen/model/accounting/repeatingInvoices.js.map create mode 100644 dist/gen/model/accounting/report.d.ts create mode 100644 dist/gen/model/accounting/report.js create mode 100644 dist/gen/model/accounting/report.js.map create mode 100644 dist/gen/model/accounting/reportAttribute.d.ts create mode 100644 dist/gen/model/accounting/reportAttribute.js create mode 100644 dist/gen/model/accounting/reportAttribute.js.map create mode 100644 dist/gen/model/accounting/reportCell.d.ts create mode 100644 dist/gen/model/accounting/reportCell.js create mode 100644 dist/gen/model/accounting/reportCell.js.map create mode 100644 dist/gen/model/accounting/reportFields.d.ts create mode 100644 dist/gen/model/accounting/reportFields.js create mode 100644 dist/gen/model/accounting/reportFields.js.map create mode 100644 dist/gen/model/accounting/reportRow.d.ts create mode 100644 dist/gen/model/accounting/reportRow.js create mode 100644 dist/gen/model/accounting/reportRow.js.map create mode 100644 dist/gen/model/accounting/reportRows.d.ts create mode 100644 dist/gen/model/accounting/reportRows.js create mode 100644 dist/gen/model/accounting/reportRows.js.map create mode 100644 dist/gen/model/accounting/reportWithRow.d.ts create mode 100644 dist/gen/model/accounting/reportWithRow.js create mode 100644 dist/gen/model/accounting/reportWithRow.js.map create mode 100644 dist/gen/model/accounting/reportWithRows.d.ts create mode 100644 dist/gen/model/accounting/reportWithRows.js create mode 100644 dist/gen/model/accounting/reportWithRows.js.map create mode 100644 dist/gen/model/accounting/reports.d.ts create mode 100644 dist/gen/model/accounting/reports.js create mode 100644 dist/gen/model/accounting/reports.js.map create mode 100644 dist/gen/model/accounting/requestEmpty.d.ts create mode 100644 dist/gen/model/accounting/requestEmpty.js create mode 100644 dist/gen/model/accounting/requestEmpty.js.map create mode 100644 dist/gen/model/accounting/rowType.d.ts create mode 100644 dist/gen/model/accounting/rowType.js create mode 100644 dist/gen/model/accounting/rowType.js.map create mode 100644 dist/gen/model/accounting/salesTrackingCategory.d.ts create mode 100644 dist/gen/model/accounting/salesTrackingCategory.js create mode 100644 dist/gen/model/accounting/salesTrackingCategory.js.map create mode 100644 dist/gen/model/accounting/schedule.d.ts create mode 100644 dist/gen/model/accounting/schedule.js create mode 100644 dist/gen/model/accounting/schedule.js.map create mode 100644 dist/gen/model/accounting/taxComponent.d.ts create mode 100644 dist/gen/model/accounting/taxComponent.js create mode 100644 dist/gen/model/accounting/taxComponent.js.map create mode 100644 dist/gen/model/accounting/taxRate.d.ts create mode 100644 dist/gen/model/accounting/taxRate.js create mode 100644 dist/gen/model/accounting/taxRate.js.map create mode 100644 dist/gen/model/accounting/taxRates.d.ts create mode 100644 dist/gen/model/accounting/taxRates.js create mode 100644 dist/gen/model/accounting/taxRates.js.map create mode 100644 dist/gen/model/accounting/taxType.d.ts create mode 100644 dist/gen/model/accounting/taxType.js create mode 100644 dist/gen/model/accounting/taxType.js.map create mode 100644 dist/gen/model/accounting/tenNinteyNineContact.d.ts create mode 100644 dist/gen/model/accounting/tenNinteyNineContact.js create mode 100644 dist/gen/model/accounting/tenNinteyNineContact.js.map create mode 100644 dist/gen/model/accounting/timeZone.d.ts create mode 100644 dist/gen/model/accounting/timeZone.js create mode 100644 dist/gen/model/accounting/timeZone.js.map create mode 100644 dist/gen/model/accounting/trackingCategories.d.ts create mode 100644 dist/gen/model/accounting/trackingCategories.js create mode 100644 dist/gen/model/accounting/trackingCategories.js.map create mode 100644 dist/gen/model/accounting/trackingCategory.d.ts create mode 100644 dist/gen/model/accounting/trackingCategory.js create mode 100644 dist/gen/model/accounting/trackingCategory.js.map create mode 100644 dist/gen/model/accounting/trackingOption.d.ts create mode 100644 dist/gen/model/accounting/trackingOption.js create mode 100644 dist/gen/model/accounting/trackingOption.js.map create mode 100644 dist/gen/model/accounting/trackingOptions.d.ts create mode 100644 dist/gen/model/accounting/trackingOptions.js create mode 100644 dist/gen/model/accounting/trackingOptions.js.map create mode 100644 dist/gen/model/accounting/user.d.ts create mode 100644 dist/gen/model/accounting/user.js create mode 100644 dist/gen/model/accounting/user.js.map create mode 100644 dist/gen/model/accounting/users.d.ts create mode 100644 dist/gen/model/accounting/users.js create mode 100644 dist/gen/model/accounting/users.js.map create mode 100644 dist/gen/model/accounting/validationError.d.ts create mode 100644 dist/gen/model/accounting/validationError.js create mode 100644 dist/gen/model/accounting/validationError.js.map create mode 100644 dist/index.d.ts create mode 100644 dist/index.js create mode 100644 dist/index.js.map create mode 100644 dist/untyped.d.ts create mode 100644 dist/untyped.js create mode 100644 dist/untyped.js.map create mode 100644 package-lock.json diff --git a/dist/XeroClient.d.ts b/dist/XeroClient.d.ts new file mode 100644 index 000000000..5a510508e --- /dev/null +++ b/dist/XeroClient.d.ts @@ -0,0 +1,26 @@ +/// +import { TokenSet } from 'openid-client'; +import * as xero from './gen/api'; +export interface IXeroClientConfig { + clientId: string; + clientSecret: string; + redirectUris: string[]; + scopes: string[]; +} +export declare class XeroClient { + private readonly config; + readonly accountingApi: xero.AccountingApi; + private openIdClient; + private tokenSet; + private _tenantIds; + get tenantIds(): string[]; + constructor(config: IXeroClientConfig); + buildConsentUrl(): Promise; + setAccessTokenFromRedirectUri(url: string): Promise; + readIdTokenClaims(): Promise; + readTokenSet(): Promise; + setTokenSet(savedTokens: TokenSet): Promise; + refreshToken(): Promise; + private setAccessTokenForAllApis; + private fetchConnectedTenantIds; +} diff --git a/dist/XeroClient.js b/dist/XeroClient.js new file mode 100644 index 000000000..81d81a006 --- /dev/null +++ b/dist/XeroClient.js @@ -0,0 +1,90 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const openid_client_1 = require("openid-client"); +const xero = require("./gen/api"); +const request = require("request"); +class XeroClient { + constructor(config) { + this.config = config; + this.accountingApi = new xero.AccountingApi(); + } + get tenantIds() { + return this._tenantIds; + } + async buildConsentUrl() { + const issuer = await openid_client_1.Issuer.discover('https://identity.xero.com'); + this.openIdClient = new issuer.Client({ + client_id: this.config.clientId, + client_secret: this.config.clientSecret, + redirect_uris: this.config.redirectUris, + }); + this.openIdClient[openid_client_1.custom.clock_tolerance] = 5; + const url = this.openIdClient.authorizationUrl({ + redirect_uri: this.config.redirectUris[0], + scope: this.config.scopes.join(' ') || 'openid email profile' + }); + return url; + } + async setAccessTokenFromRedirectUri(url) { + const urlObject = new URL(url); + let params = {}; + for (const [key, value] of urlObject.searchParams) { + params[key] = value; + } + this.tokenSet = await this.openIdClient.callback(this.config.redirectUris[0], params); + this.setAccessTokenForAllApis(); + await this.fetchConnectedTenantIds(); + } + async readIdTokenClaims() { + return this.tokenSet.claims(); + } + async readTokenSet() { + return this.tokenSet; + } + async setTokenSet(savedTokens) { + this.tokenSet = savedTokens; + this.setAccessTokenForAllApis(); + } + async refreshToken() { + if (!this.tokenSet) { + throw new Error('tokenSet is not defined'); + } + this.tokenSet = await this.openIdClient.refresh(this.tokenSet.refresh_token); + this.setAccessTokenForAllApis(); + await this.fetchConnectedTenantIds(); + } + setAccessTokenForAllApis() { + const accessToken = this.tokenSet.access_token; + if (typeof accessToken === 'undefined') { + throw new Error('Access token is undefined!'); + } + this.accountingApi.accessToken = accessToken; + } + async fetchConnectedTenantIds() { + const result = await new Promise((resolve, reject) => { + request({ + method: 'GET', + uri: 'https://api.xero.com/connections', + auth: { + bearer: this.tokenSet.access_token + }, + json: true + }, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + this._tenantIds = result.body.map(connection => connection.tenantId); + } +} +exports.XeroClient = XeroClient; +//# sourceMappingURL=XeroClient.js.map \ No newline at end of file diff --git a/dist/XeroClient.js.map b/dist/XeroClient.js.map new file mode 100644 index 000000000..f8ed03b5d --- /dev/null +++ b/dist/XeroClient.js.map @@ -0,0 +1 @@ +{"version":3,"file":"XeroClient.js","sourceRoot":"","sources":["../src/XeroClient.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/api.d.ts b/dist/gen/api.d.ts new file mode 100644 index 000000000..b2ee15404 --- /dev/null +++ b/dist/gen/api.d.ts @@ -0,0 +1,3 @@ +export * from './api/apis'; +export * from './model/accounting/models'; +export * from '../XeroClient'; diff --git a/dist/gen/api.js b/dist/gen/api.js new file mode 100644 index 000000000..f453f0699 --- /dev/null +++ b/dist/gen/api.js @@ -0,0 +1,9 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +Object.defineProperty(exports, "__esModule", { value: true }); +__export(require("./api/apis")); +__export(require("./model/accounting/models")); +__export(require("../XeroClient")); +//# sourceMappingURL=api.js.map \ No newline at end of file diff --git a/dist/gen/api.js.map b/dist/gen/api.js.map new file mode 100644 index 000000000..f2b7b81fe --- /dev/null +++ b/dist/gen/api.js.map @@ -0,0 +1 @@ +{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/gen/api.ts"],"names":[],"mappings":";;;;;AACA,gCAA2B;AAC3B,+CAA0C;AAE1C,mCAA8B"} \ No newline at end of file diff --git a/dist/gen/api/accountingApi.d.ts b/dist/gen/api/accountingApi.d.ts new file mode 100644 index 000000000..8277056da --- /dev/null +++ b/dist/gen/api/accountingApi.d.ts @@ -0,0 +1,1720 @@ +/// +import http = require('http'); +import fs = require('fs'); +import { Account } from '../model/accounting/account'; +import { Accounts } from '../model/accounting/accounts'; +import { Allocation } from '../model/accounting/allocation'; +import { Allocations } from '../model/accounting/allocations'; +import { Attachments } from '../model/accounting/attachments'; +import { BankTransaction } from '../model/accounting/bankTransaction'; +import { BankTransactions } from '../model/accounting/bankTransactions'; +import { BankTransfers } from '../model/accounting/bankTransfers'; +import { BatchPayments } from '../model/accounting/batchPayments'; +import { BrandingThemes } from '../model/accounting/brandingThemes'; +import { CISOrgSetting } from '../model/accounting/cISOrgSetting'; +import { CISSettings } from '../model/accounting/cISSettings'; +import { Contact } from '../model/accounting/contact'; +import { ContactGroups } from '../model/accounting/contactGroups'; +import { Contacts } from '../model/accounting/contacts'; +import { CreditNote } from '../model/accounting/creditNote'; +import { CreditNotes } from '../model/accounting/creditNotes'; +import { Currencies } from '../model/accounting/currencies'; +import { Currency } from '../model/accounting/currency'; +import { Employee } from '../model/accounting/employee'; +import { Employees } from '../model/accounting/employees'; +import { ExpenseClaims } from '../model/accounting/expenseClaims'; +import { HistoryRecords } from '../model/accounting/historyRecords'; +import { Invoice } from '../model/accounting/invoice'; +import { InvoiceReminders } from '../model/accounting/invoiceReminders'; +import { Invoices } from '../model/accounting/invoices'; +import { Item } from '../model/accounting/item'; +import { Items } from '../model/accounting/items'; +import { Journals } from '../model/accounting/journals'; +import { LinkedTransaction } from '../model/accounting/linkedTransaction'; +import { LinkedTransactions } from '../model/accounting/linkedTransactions'; +import { ManualJournal } from '../model/accounting/manualJournal'; +import { ManualJournals } from '../model/accounting/manualJournals'; +import { OnlineInvoices } from '../model/accounting/onlineInvoices'; +import { Organisations } from '../model/accounting/organisations'; +import { Overpayments } from '../model/accounting/overpayments'; +import { Payment } from '../model/accounting/payment'; +import { PaymentService } from '../model/accounting/paymentService'; +import { PaymentServices } from '../model/accounting/paymentServices'; +import { Payments } from '../model/accounting/payments'; +import { Prepayments } from '../model/accounting/prepayments'; +import { PurchaseOrder } from '../model/accounting/purchaseOrder'; +import { PurchaseOrders } from '../model/accounting/purchaseOrders'; +import { Quotes } from '../model/accounting/quotes'; +import { Receipts } from '../model/accounting/receipts'; +import { RepeatingInvoices } from '../model/accounting/repeatingInvoices'; +import { ReportWithRows } from '../model/accounting/reportWithRows'; +import { Reports } from '../model/accounting/reports'; +import { RequestEmpty } from '../model/accounting/requestEmpty'; +import { TaxRate } from '../model/accounting/taxRate'; +import { TaxRates } from '../model/accounting/taxRates'; +import { TrackingCategories } from '../model/accounting/trackingCategories'; +import { TrackingCategory } from '../model/accounting/trackingCategory'; +import { TrackingOption } from '../model/accounting/trackingOption'; +import { TrackingOptions } from '../model/accounting/trackingOptions'; +import { Users } from '../model/accounting/users'; +import { Authentication } from '../model/accounting/models'; +import { OAuth } from '../model/accounting/models'; +export declare enum AccountingApiApiKeys { +} +export declare class AccountingApi { + 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: AccountingApiApiKeys, value: string): void; + set accessToken(token: string); + createAccount(xeroTenantId: string, account: Account, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Accounts; + }>; + createAccountAttachmentByFileName(xeroTenantId: string, accountID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createBankTransaction(xeroTenantId: string, bankTransaction: BankTransaction, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransactions; + }>; + createBankTransactionAttachmentByFileName(xeroTenantId: string, bankTransactionID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createBankTransactionHistoryRecord(xeroTenantId: string, bankTransactionID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createBankTransactions(xeroTenantId: string, bankTransactions: BankTransactions, summarizeErrors?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransactions; + }>; + createBankTransfer(xeroTenantId: string, bankTransfers: BankTransfers, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransfers; + }>; + createBankTransferAttachmentByFileName(xeroTenantId: string, bankTransferID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createBankTransferHistoryRecord(xeroTenantId: string, bankTransferID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createBatchPayment(xeroTenantId: string, batchPayments: BatchPayments, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BatchPayments; + }>; + createBatchPaymentHistoryRecord(xeroTenantId: string, batchPaymentID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createBrandingThemePaymentServices(xeroTenantId: string, brandingThemeID: string, paymentService: PaymentService, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PaymentServices; + }>; + createContact(xeroTenantId: string, contact: Contact, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + createContactAttachmentByFileName(xeroTenantId: string, contactID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createContactGroup(xeroTenantId: string, contactGroups: ContactGroups, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ContactGroups; + }>; + createContactGroupContacts(xeroTenantId: string, contactGroupID: string, contacts: Contacts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + createContactHistory(xeroTenantId: string, contactID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createContacts(xeroTenantId: string, contacts: Contacts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + createCreditNote(xeroTenantId: string, creditNote: CreditNote, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CreditNotes; + }>; + createCreditNoteAllocation(xeroTenantId: string, creditNoteID: string, allocations: Allocations, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Allocations; + }>; + createCreditNoteAttachmentByFileName(xeroTenantId: string, creditNoteID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createCreditNoteHistory(xeroTenantId: string, creditNoteID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createCreditNotes(xeroTenantId: string, creditNotes: CreditNotes, summarizeErrors?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CreditNotes; + }>; + createCurrency(xeroTenantId: string, currency: Currency, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Currencies; + }>; + createEmployee(xeroTenantId: string, employee: Employee, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Employees; + }>; + createEmployees(xeroTenantId: string, employees: Employees, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Employees; + }>; + createExpenseClaimHistory(xeroTenantId: string, expenseClaimID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createExpenseClaims(xeroTenantId: string, expenseClaims: ExpenseClaims, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ExpenseClaims; + }>; + createInvoice(xeroTenantId: string, invoice: Invoice, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Invoices; + }>; + createInvoiceAttachmentByFileName(xeroTenantId: string, invoiceID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createInvoiceHistory(xeroTenantId: string, invoiceID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createInvoices(xeroTenantId: string, invoices: Invoices, summarizeErrors?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Invoices; + }>; + createItem(xeroTenantId: string, item: Item, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Items; + }>; + createItemHistory(xeroTenantId: string, itemID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createItems(xeroTenantId: string, items: Items, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Items; + }>; + createLinkedTransaction(xeroTenantId: string, linkedTransaction: LinkedTransaction, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: LinkedTransactions; + }>; + createLinkedTransactions(xeroTenantId: string, linkedTransactions: LinkedTransactions, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: LinkedTransactions; + }>; + createManualJournal(xeroTenantId: string, manualJournal: ManualJournal, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ManualJournals; + }>; + createManualJournalAttachmentByFileName(xeroTenantId: string, manualJournalID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createManualJournals(xeroTenantId: string, manualJournals: ManualJournals, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ManualJournals; + }>; + createOverpaymentAllocation(xeroTenantId: string, overpaymentID: string, allocation: Allocation, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Allocations; + }>; + createOverpaymentAllocations(xeroTenantId: string, overpaymentID: string, allocations: Allocations, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Allocations; + }>; + createOverpaymentHistory(xeroTenantId: string, overpaymentID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createPayment(xeroTenantId: string, payment: Payment, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Payments; + }>; + createPaymentHistory(xeroTenantId: string, paymentID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createPaymentService(xeroTenantId: string, paymentServices: PaymentServices, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PaymentServices; + }>; + createPayments(xeroTenantId: string, payments: Payments, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Payments; + }>; + createPrepaymentAllocation(xeroTenantId: string, prepaymentID: string, allocations: Allocations, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Allocations; + }>; + createPrepaymentHistory(xeroTenantId: string, prepaymentID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createPurchaseOrder(xeroTenantId: string, purchaseOrder: PurchaseOrder, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PurchaseOrders; + }>; + createPurchaseOrderHistory(xeroTenantId: string, purchaseOrderID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createPurchaseOrders(xeroTenantId: string, purchaseOrders: PurchaseOrders, summarizeErrors?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PurchaseOrders; + }>; + createReceipt(xeroTenantId: string, receipts: Receipts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Receipts; + }>; + createReceiptAttachmentByFileName(xeroTenantId: string, receiptID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createReceiptHistory(xeroTenantId: string, receiptID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createRepeatingInvoiceAttachmentByFileName(xeroTenantId: string, repeatingInvoiceID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + createRepeatingInvoiceHistory(xeroTenantId: string, repeatingInvoiceID: string, historyRecords: HistoryRecords, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + createTaxRate(xeroTenantId: string, taxRate: TaxRate, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TaxRates; + }>; + createTaxRates(xeroTenantId: string, taxRates: TaxRates, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TaxRates; + }>; + createTrackingCategory(xeroTenantId: string, trackingCategory: TrackingCategory, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingCategories; + }>; + createTrackingOptions(xeroTenantId: string, trackingCategoryID: string, trackingOption: TrackingOption, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingOptions; + }>; + deleteAccount(xeroTenantId: string, accountID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Accounts; + }>; + deleteContactGroupContact(xeroTenantId: string, contactGroupID: string, contactID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body?: any; + }>; + deleteContactGroupContacts(xeroTenantId: string, contactGroupID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body?: any; + }>; + deleteItem(xeroTenantId: string, itemID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body?: any; + }>; + deleteLinkedTransaction(xeroTenantId: string, linkedTransactionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body?: any; + }>; + deletePayment(xeroTenantId: string, paymentID: string, payments: Payments, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Payments; + }>; + deleteTrackingCategory(xeroTenantId: string, trackingCategoryID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingCategories; + }>; + deleteTrackingOptions(xeroTenantId: string, trackingCategoryID: string, trackingOptionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingOptions; + }>; + emailInvoice(xeroTenantId: string, invoiceID: string, requestEmpty: RequestEmpty, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body?: any; + }>; + getAccount(xeroTenantId: string, accountID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Accounts; + }>; + getAccountAttachmentByFileName(xeroTenantId: string, accountID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getAccountAttachmentById(xeroTenantId: string, accountID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getAccountAttachments(xeroTenantId: string, accountID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getAccounts(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Accounts; + }>; + getBankTransaction(xeroTenantId: string, bankTransactionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransactions; + }>; + getBankTransactionAttachmentByFileName(xeroTenantId: string, bankTransactionID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getBankTransactionAttachmentById(xeroTenantId: string, bankTransactionID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getBankTransactionAttachments(xeroTenantId: string, bankTransactionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getBankTransactions(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, page?: number, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransactions; + }>; + getBankTransactionsHistory(xeroTenantId: string, bankTransactionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getBankTransfer(xeroTenantId: string, bankTransferID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransfers; + }>; + getBankTransferAttachmentByFileName(xeroTenantId: string, bankTransferID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getBankTransferAttachmentById(xeroTenantId: string, bankTransferID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getBankTransferAttachments(xeroTenantId: string, bankTransferID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getBankTransferHistory(xeroTenantId: string, bankTransferID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getBankTransfers(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransfers; + }>; + getBatchPaymentHistory(xeroTenantId: string, batchPaymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getBatchPayments(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BatchPayments; + }>; + getBrandingTheme(xeroTenantId: string, brandingThemeID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BrandingThemes; + }>; + getBrandingThemePaymentServices(xeroTenantId: string, brandingThemeID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PaymentServices; + }>; + getBrandingThemes(xeroTenantId: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BrandingThemes; + }>; + getContact(xeroTenantId: string, contactID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + getContactAttachmentByFileName(xeroTenantId: string, contactID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getContactAttachmentById(xeroTenantId: string, contactID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getContactAttachments(xeroTenantId: string, contactID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getContactCISSettings(xeroTenantId: string, contactID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CISSettings; + }>; + getContactGroup(xeroTenantId: string, contactGroupID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ContactGroups; + }>; + getContactGroups(xeroTenantId: string, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ContactGroups; + }>; + getContactHistory(xeroTenantId: string, contactID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getContacts(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, iDs?: Array, page?: number, includeArchived?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + getCreditNote(xeroTenantId: string, creditNoteID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CreditNotes; + }>; + getCreditNoteAsPdf(xeroTenantId: string, creditNoteID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getCreditNoteAttachmentByFileName(xeroTenantId: string, creditNoteID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getCreditNoteAttachmentById(xeroTenantId: string, creditNoteID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getCreditNoteAttachments(xeroTenantId: string, creditNoteID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getCreditNoteHistory(xeroTenantId: string, creditNoteID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getCreditNotes(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, page?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CreditNotes; + }>; + getCurrencies(xeroTenantId: string, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Currencies; + }>; + getEmployee(xeroTenantId: string, employeeID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Employees; + }>; + getEmployees(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Employees; + }>; + getExpenseClaim(xeroTenantId: string, expenseClaimID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ExpenseClaims; + }>; + getExpenseClaimHistory(xeroTenantId: string, expenseClaimID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getExpenseClaims(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ExpenseClaims; + }>; + getInvoice(xeroTenantId: string, invoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Invoices; + }>; + getInvoiceAsPdf(xeroTenantId: string, invoiceID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getInvoiceAttachmentByFileName(xeroTenantId: string, invoiceID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getInvoiceAttachmentById(xeroTenantId: string, invoiceID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getInvoiceAttachments(xeroTenantId: string, invoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getInvoiceHistory(xeroTenantId: string, invoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getInvoiceReminders(xeroTenantId: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: InvoiceReminders; + }>; + getInvoices(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, iDs?: Array, invoiceNumbers?: Array, contactIDs?: Array, statuses?: Array, page?: number, includeArchived?: boolean, createdByMyApp?: boolean, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Invoices; + }>; + getItem(xeroTenantId: string, itemID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Items; + }>; + getItemHistory(xeroTenantId: string, itemID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getItems(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Items; + }>; + getJournal(xeroTenantId: string, journalID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Journals; + }>; + getJournals(xeroTenantId: string, ifModifiedSince?: Date, offset?: number, paymentsOnly?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Journals; + }>; + getLinkedTransaction(xeroTenantId: string, linkedTransactionID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: LinkedTransactions; + }>; + getLinkedTransactions(xeroTenantId: string, page?: number, linkedTransactionID?: string, sourceTransactionID?: string, contactID?: string, status?: string, targetTransactionID?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: LinkedTransactions; + }>; + getManualJournal(xeroTenantId: string, manualJournalID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ManualJournals; + }>; + getManualJournalAttachmentByFileName(xeroTenantId: string, manualJournalID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getManualJournalAttachmentById(xeroTenantId: string, manualJournalID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getManualJournalAttachments(xeroTenantId: string, manualJournalID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getManualJournals(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, page?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ManualJournals; + }>; + getOnlineInvoice(xeroTenantId: string, invoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: OnlineInvoices; + }>; + getOrganisationCISSettings(xeroTenantId: string, organisationID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CISOrgSetting; + }>; + getOrganisations(xeroTenantId: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Organisations; + }>; + getOverpayment(xeroTenantId: string, overpaymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Overpayments; + }>; + getOverpaymentHistory(xeroTenantId: string, overpaymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getOverpayments(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, page?: number, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Overpayments; + }>; + getPayment(xeroTenantId: string, paymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Payments; + }>; + getPaymentHistory(xeroTenantId: string, paymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getPaymentServices(xeroTenantId: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PaymentServices; + }>; + getPayments(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Payments; + }>; + getPrepayment(xeroTenantId: string, prepaymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Prepayments; + }>; + getPrepaymentHistory(xeroTenantId: string, prepaymentID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getPrepayments(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, page?: number, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Prepayments; + }>; + getPurchaseOrder(xeroTenantId: string, purchaseOrderID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PurchaseOrders; + }>; + getPurchaseOrderHistory(xeroTenantId: string, purchaseOrderID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getPurchaseOrders(xeroTenantId: string, ifModifiedSince?: Date, status?: 'DRAFT' | 'SUBMITTED' | 'AUTHORISED' | 'BILLED' | 'DELETED', dateFrom?: string, dateTo?: string, order?: string, page?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PurchaseOrders; + }>; + getQuote(xeroTenantId: string, quoteID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Quotes; + }>; + getQuotes(xeroTenantId: string, ifModifiedSince?: Date, dateFrom?: string, dateTo?: string, expiryDateFrom?: string, expiryDateTo?: string, contactID?: string, status?: string, page?: number, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Quotes; + }>; + getReceipt(xeroTenantId: string, receiptID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Receipts; + }>; + getReceiptAttachmentByFileName(xeroTenantId: string, receiptID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getReceiptAttachmentById(xeroTenantId: string, receiptID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getReceiptAttachments(xeroTenantId: string, receiptID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getReceiptHistory(xeroTenantId: string, receiptID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getReceipts(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, unitdp?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Receipts; + }>; + getRepeatingInvoice(xeroTenantId: string, repeatingInvoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: RepeatingInvoices; + }>; + getRepeatingInvoiceAttachmentByFileName(xeroTenantId: string, repeatingInvoiceID: string, fileName: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getRepeatingInvoiceAttachmentById(xeroTenantId: string, repeatingInvoiceID: string, attachmentID: string, contentType: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Buffer; + }>; + getRepeatingInvoiceAttachments(xeroTenantId: string, repeatingInvoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + getRepeatingInvoiceHistory(xeroTenantId: string, repeatingInvoiceID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: HistoryRecords; + }>; + getRepeatingInvoices(xeroTenantId: string, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: RepeatingInvoices; + }>; + getReportAgedPayablesByContact(xeroTenantId: string, contactId: string, date?: string, fromDate?: string, toDate?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportAgedReceivablesByContact(xeroTenantId: string, contactId: string, date?: string, fromDate?: string, toDate?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportBASorGST(xeroTenantId: string, reportID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportBASorGSTList(xeroTenantId: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportBalanceSheet(xeroTenantId: string, date?: string, periods?: number, timeframe?: 'MONTH' | 'QUARTER' | 'YEAR', trackingOptionID1?: string, trackingOptionID2?: string, standardLayout?: boolean, paymentsOnly?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportBankSummary(xeroTenantId: string, date?: string, period?: number, timeframe?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportBudgetSummary(xeroTenantId: string, date?: string, period?: number, timeframe?: number, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportExecutiveSummary(xeroTenantId: string, date?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportProfitAndLoss(xeroTenantId: string, fromDate?: string, toDate?: string, periods?: number, timeframe?: 'MONTH' | 'QUARTER' | 'YEAR', trackingCategoryID?: string, trackingCategoryID2?: string, trackingOptionID?: string, trackingOptionID2?: string, standardLayout?: boolean, paymentsOnly?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getReportTenNinetyNine(xeroTenantId: string, reportYear?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Reports; + }>; + getReportTrialBalance(xeroTenantId: string, date?: string, paymentsOnly?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ReportWithRows; + }>; + getTaxRates(xeroTenantId: string, where?: string, order?: string, taxType?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TaxRates; + }>; + getTrackingCategories(xeroTenantId: string, where?: string, order?: string, includeArchived?: boolean, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingCategories; + }>; + getTrackingCategory(xeroTenantId: string, trackingCategoryID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingCategories; + }>; + getUser(xeroTenantId: string, userID: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Users; + }>; + getUsers(xeroTenantId: string, ifModifiedSince?: Date, where?: string, order?: string, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Users; + }>; + updateAccount(xeroTenantId: string, accountID: string, accounts: Accounts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Accounts; + }>; + updateAccountAttachmentByFileName(xeroTenantId: string, accountID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateBankTransaction(xeroTenantId: string, bankTransactionID: string, bankTransactions: BankTransactions, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: BankTransactions; + }>; + updateBankTransactionAttachmentByFileName(xeroTenantId: string, bankTransactionID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateBankTransferAttachmentByFileName(xeroTenantId: string, bankTransferID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateContact(xeroTenantId: string, contactID: string, contacts: Contacts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Contacts; + }>; + updateContactAttachmentByFileName(xeroTenantId: string, contactID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateContactGroup(xeroTenantId: string, contactGroupID: string, contactGroups: ContactGroups, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ContactGroups; + }>; + updateCreditNote(xeroTenantId: string, creditNoteID: string, creditNotes: CreditNotes, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: CreditNotes; + }>; + updateCreditNoteAttachmentByFileName(xeroTenantId: string, creditNoteID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateEmployee(xeroTenantId: string, employeeID: string, employees: Employees, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Employees; + }>; + updateExpenseClaim(xeroTenantId: string, expenseClaimID: string, expenseClaims: ExpenseClaims, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ExpenseClaims; + }>; + updateInvoice(xeroTenantId: string, invoiceID: string, invoices: Invoices, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Invoices; + }>; + updateInvoiceAttachmentByFileName(xeroTenantId: string, invoiceID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateItem(xeroTenantId: string, itemID: string, items: Items, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Items; + }>; + updateLinkedTransaction(xeroTenantId: string, linkedTransactionID: string, linkedTransactions: LinkedTransactions, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: LinkedTransactions; + }>; + updateManualJournal(xeroTenantId: string, manualJournalID: string, manualJournals: ManualJournals, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: ManualJournals; + }>; + updateManualJournalAttachmentByFileName(xeroTenantId: string, manualJournalID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updatePurchaseOrder(xeroTenantId: string, purchaseOrderID: string, purchaseOrders: PurchaseOrders, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: PurchaseOrders; + }>; + updateReceipt(xeroTenantId: string, receiptID: string, receipts: Receipts, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Receipts; + }>; + updateReceiptAttachmentByFileName(xeroTenantId: string, receiptID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateRepeatingInvoiceAttachmentByFileName(xeroTenantId: string, repeatingInvoiceID: string, fileName: string, body: fs.ReadStream, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: Attachments; + }>; + updateTaxRate(xeroTenantId: string, taxRates: TaxRates, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TaxRates; + }>; + updateTrackingCategory(xeroTenantId: string, trackingCategoryID: string, trackingCategory: TrackingCategory, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingCategories; + }>; + updateTrackingOptions(xeroTenantId: string, trackingCategoryID: string, trackingOptionID: string, trackingOption: TrackingOption, options?: { + headers: { + [name: string]: string; + }; + }): Promise<{ + response: http.IncomingMessage; + body: TrackingOptions; + }>; +} diff --git a/dist/gen/api/accountingApi.js b/dist/gen/api/accountingApi.js new file mode 100644 index 000000000..97bb4af48 --- /dev/null +++ b/dist/gen/api/accountingApi.js @@ -0,0 +1,11914 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +const localVarRequest = require("request"); +const models_1 = require("../model/accounting/models"); +const models_2 = require("../model/accounting/models"); +let defaultBasePath = 'https://api.xero.com/api.xro/2.0'; +var AccountingApiApiKeys; +(function (AccountingApiApiKeys) { +})(AccountingApiApiKeys = exports.AccountingApiApiKeys || (exports.AccountingApiApiKeys = {})); +class AccountingApi { + constructor(basePathOrUsername, password, basePath) { + this._basePath = defaultBasePath; + this.defaultHeaders = {}; + this._useQuerystring = false; + this.binaryHeaders = {}; + this.authentications = { + 'default': new models_1.VoidAuth(), + 'OAuth2': new models_2.OAuth(), + }; + if (password) { + if (basePath) { + this.basePath = basePath; + } + } + else { + if (basePathOrUsername) { + this.basePath = basePathOrUsername; + } + } + } + set useQuerystring(value) { + this._useQuerystring = value; + } + set basePath(basePath) { + this._basePath = basePath; + } + get basePath() { + return this._basePath; + } + setDefaultAuthentication(auth) { + this.authentications.default = auth; + } + setApiKey(key, value) { + this.authentications[AccountingApiApiKeys[key]].apiKey = value; + } + set accessToken(token) { + this.authentications.OAuth2.accessToken = token; + } + async createAccount(xeroTenantId, account, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createAccount.'); + } + if (account === null || account === undefined) { + throw new Error('Required parameter account was null or undefined when calling createAccount.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(account, "Account") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Accounts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createAccountAttachmentByFileName(xeroTenantId, accountID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}/Attachments/{FileName}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createAccountAttachmentByFileName.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling createAccountAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createAccountAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createAccountAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransaction(xeroTenantId, bankTransaction, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransaction.'); + } + if (bankTransaction === null || bankTransaction === undefined) { + throw new Error('Required parameter bankTransaction was null or undefined when calling createBankTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(bankTransaction, "BankTransaction") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransactionAttachmentByFileName(xeroTenantId, bankTransactionID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/Attachments/{FileName}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransactionAttachmentByFileName.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling createBankTransactionAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createBankTransactionAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createBankTransactionAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransactionHistoryRecord(xeroTenantId, bankTransactionID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/History' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransactionHistoryRecord.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling createBankTransactionHistoryRecord.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createBankTransactionHistoryRecord.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransactions(xeroTenantId, bankTransactions, summarizeErrors, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransactions.'); + } + if (bankTransactions === null || bankTransactions === undefined) { + throw new Error('Required parameter bankTransactions was null or undefined when calling createBankTransactions.'); + } + if (summarizeErrors !== undefined) { + localVarQueryParameters['SummarizeErrors'] = models_1.ObjectSerializer.serialize(summarizeErrors, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(bankTransactions, "BankTransactions") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransfer(xeroTenantId, bankTransfers, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransfer.'); + } + if (bankTransfers === null || bankTransfers === undefined) { + throw new Error('Required parameter bankTransfers was null or undefined when calling createBankTransfer.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(bankTransfers, "BankTransfers") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransfers"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransferAttachmentByFileName(xeroTenantId, bankTransferID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/Attachments/{FileName}' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransferAttachmentByFileName.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling createBankTransferAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createBankTransferAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createBankTransferAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBankTransferHistoryRecord(xeroTenantId, bankTransferID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/History' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBankTransferHistoryRecord.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling createBankTransferHistoryRecord.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createBankTransferHistoryRecord.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBatchPayment(xeroTenantId, batchPayments, options = { headers: {} }) { + const localVarPath = this.basePath + '/BatchPayments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBatchPayment.'); + } + if (batchPayments === null || batchPayments === undefined) { + throw new Error('Required parameter batchPayments was null or undefined when calling createBatchPayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(batchPayments, "BatchPayments") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BatchPayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBatchPaymentHistoryRecord(xeroTenantId, batchPaymentID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/BatchPayments/{BatchPaymentID}/History' + .replace('{' + 'BatchPaymentID' + '}', encodeURIComponent(String(batchPaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBatchPaymentHistoryRecord.'); + } + if (batchPaymentID === null || batchPaymentID === undefined) { + throw new Error('Required parameter batchPaymentID was null or undefined when calling createBatchPaymentHistoryRecord.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createBatchPaymentHistoryRecord.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createBrandingThemePaymentServices(xeroTenantId, brandingThemeID, paymentService, options = { headers: {} }) { + const localVarPath = this.basePath + '/BrandingThemes/{BrandingThemeID}/PaymentServices' + .replace('{' + 'BrandingThemeID' + '}', encodeURIComponent(String(brandingThemeID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createBrandingThemePaymentServices.'); + } + if (brandingThemeID === null || brandingThemeID === undefined) { + throw new Error('Required parameter brandingThemeID was null or undefined when calling createBrandingThemePaymentServices.'); + } + if (paymentService === null || paymentService === undefined) { + throw new Error('Required parameter paymentService was null or undefined when calling createBrandingThemePaymentServices.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(paymentService, "PaymentService") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PaymentServices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContact(xeroTenantId, contact, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContact.'); + } + if (contact === null || contact === undefined) { + throw new Error('Required parameter contact was null or undefined when calling createContact.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contact, "Contact") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContactAttachmentByFileName(xeroTenantId, contactID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/Attachments/{FileName}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContactAttachmentByFileName.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling createContactAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createContactAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createContactAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContactGroup(xeroTenantId, contactGroups, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContactGroup.'); + } + if (contactGroups === null || contactGroups === undefined) { + throw new Error('Required parameter contactGroups was null or undefined when calling createContactGroup.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contactGroups, "ContactGroups") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ContactGroups"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContactGroupContacts(xeroTenantId, contactGroupID, contacts, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups/{ContactGroupID}/Contacts' + .replace('{' + 'ContactGroupID' + '}', encodeURIComponent(String(contactGroupID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContactGroupContacts.'); + } + if (contactGroupID === null || contactGroupID === undefined) { + throw new Error('Required parameter contactGroupID was null or undefined when calling createContactGroupContacts.'); + } + if (contacts === null || contacts === undefined) { + throw new Error('Required parameter contacts was null or undefined when calling createContactGroupContacts.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contacts, "Contacts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContactHistory(xeroTenantId, contactID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/History' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContactHistory.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling createContactHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createContactHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createContacts(xeroTenantId, contacts, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createContacts.'); + } + if (contacts === null || contacts === undefined) { + throw new Error('Required parameter contacts was null or undefined when calling createContacts.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contacts, "Contacts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCreditNote(xeroTenantId, creditNote, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCreditNote.'); + } + if (creditNote === null || creditNote === undefined) { + throw new Error('Required parameter creditNote was null or undefined when calling createCreditNote.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(creditNote, "CreditNote") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CreditNotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCreditNoteAllocation(xeroTenantId, creditNoteID, allocations, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Allocations' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCreditNoteAllocation.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling createCreditNoteAllocation.'); + } + if (allocations === null || allocations === undefined) { + throw new Error('Required parameter allocations was null or undefined when calling createCreditNoteAllocation.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(allocations, "Allocations") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Allocations"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCreditNoteAttachmentByFileName(xeroTenantId, creditNoteID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Attachments/{FileName}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCreditNoteAttachmentByFileName.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling createCreditNoteAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createCreditNoteAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createCreditNoteAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCreditNoteHistory(xeroTenantId, creditNoteID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/History' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCreditNoteHistory.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling createCreditNoteHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createCreditNoteHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCreditNotes(xeroTenantId, creditNotes, summarizeErrors, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCreditNotes.'); + } + if (creditNotes === null || creditNotes === undefined) { + throw new Error('Required parameter creditNotes was null or undefined when calling createCreditNotes.'); + } + if (summarizeErrors !== undefined) { + localVarQueryParameters['SummarizeErrors'] = models_1.ObjectSerializer.serialize(summarizeErrors, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(creditNotes, "CreditNotes") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CreditNotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createCurrency(xeroTenantId, currency, options = { headers: {} }) { + const localVarPath = this.basePath + '/Currencies'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createCurrency.'); + } + if (currency === null || currency === undefined) { + throw new Error('Required parameter currency was null or undefined when calling createCurrency.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(currency, "Currency") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Currencies"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createEmployee(xeroTenantId, employee, options = { headers: {} }) { + const localVarPath = this.basePath + '/Employees'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createEmployee.'); + } + if (employee === null || employee === undefined) { + throw new Error('Required parameter employee was null or undefined when calling createEmployee.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(employee, "Employee") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Employees"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createEmployees(xeroTenantId, employees, options = { headers: {} }) { + const localVarPath = this.basePath + '/Employees#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createEmployees.'); + } + if (employees === null || employees === undefined) { + throw new Error('Required parameter employees was null or undefined when calling createEmployees.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(employees, "Employees") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Employees"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createExpenseClaimHistory(xeroTenantId, expenseClaimID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims/{ExpenseClaimID}/History' + .replace('{' + 'ExpenseClaimID' + '}', encodeURIComponent(String(expenseClaimID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createExpenseClaimHistory.'); + } + if (expenseClaimID === null || expenseClaimID === undefined) { + throw new Error('Required parameter expenseClaimID was null or undefined when calling createExpenseClaimHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createExpenseClaimHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createExpenseClaims(xeroTenantId, expenseClaims, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createExpenseClaims.'); + } + if (expenseClaims === null || expenseClaims === undefined) { + throw new Error('Required parameter expenseClaims was null or undefined when calling createExpenseClaims.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(expenseClaims, "ExpenseClaims") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ExpenseClaims"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createInvoice(xeroTenantId, invoice, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createInvoice.'); + } + if (invoice === null || invoice === undefined) { + throw new Error('Required parameter invoice was null or undefined when calling createInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(invoice, "Invoice") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Invoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createInvoiceAttachmentByFileName(xeroTenantId, invoiceID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Attachments/{FileName}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createInvoiceAttachmentByFileName.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling createInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createInvoiceAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createInvoiceAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createInvoiceHistory(xeroTenantId, invoiceID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/History' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createInvoiceHistory.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling createInvoiceHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createInvoiceHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createInvoices(xeroTenantId, invoices, summarizeErrors, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createInvoices.'); + } + if (invoices === null || invoices === undefined) { + throw new Error('Required parameter invoices was null or undefined when calling createInvoices.'); + } + if (summarizeErrors !== undefined) { + localVarQueryParameters['SummarizeErrors'] = models_1.ObjectSerializer.serialize(summarizeErrors, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(invoices, "Invoices") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Invoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createItem(xeroTenantId, item, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createItem.'); + } + if (item === null || item === undefined) { + throw new Error('Required parameter item was null or undefined when calling createItem.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(item, "Item") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Items"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createItemHistory(xeroTenantId, itemID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items/{ItemID}/History' + .replace('{' + 'ItemID' + '}', encodeURIComponent(String(itemID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createItemHistory.'); + } + if (itemID === null || itemID === undefined) { + throw new Error('Required parameter itemID was null or undefined when calling createItemHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createItemHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createItems(xeroTenantId, items, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createItems.'); + } + if (items === null || items === undefined) { + throw new Error('Required parameter items was null or undefined when calling createItems.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(items, "Items") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Items"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createLinkedTransaction(xeroTenantId, linkedTransaction, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createLinkedTransaction.'); + } + if (linkedTransaction === null || linkedTransaction === undefined) { + throw new Error('Required parameter linkedTransaction was null or undefined when calling createLinkedTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(linkedTransaction, "LinkedTransaction") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "LinkedTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createLinkedTransactions(xeroTenantId, linkedTransactions, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createLinkedTransactions.'); + } + if (linkedTransactions === null || linkedTransactions === undefined) { + throw new Error('Required parameter linkedTransactions was null or undefined when calling createLinkedTransactions.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(linkedTransactions, "LinkedTransactions") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "LinkedTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createManualJournal(xeroTenantId, manualJournal, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createManualJournal.'); + } + if (manualJournal === null || manualJournal === undefined) { + throw new Error('Required parameter manualJournal was null or undefined when calling createManualJournal.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(manualJournal, "ManualJournal") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ManualJournals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createManualJournalAttachmentByFileName(xeroTenantId, manualJournalID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}/Attachments/{FileName}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createManualJournalAttachmentByFileName.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling createManualJournalAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createManualJournalAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createManualJournalAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createManualJournals(xeroTenantId, manualJournals, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createManualJournals.'); + } + if (manualJournals === null || manualJournals === undefined) { + throw new Error('Required parameter manualJournals was null or undefined when calling createManualJournals.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(manualJournals, "ManualJournals") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ManualJournals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createOverpaymentAllocation(xeroTenantId, overpaymentID, allocation, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments/{OverpaymentID}/Allocations' + .replace('{' + 'OverpaymentID' + '}', encodeURIComponent(String(overpaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createOverpaymentAllocation.'); + } + if (overpaymentID === null || overpaymentID === undefined) { + throw new Error('Required parameter overpaymentID was null or undefined when calling createOverpaymentAllocation.'); + } + if (allocation === null || allocation === undefined) { + throw new Error('Required parameter allocation was null or undefined when calling createOverpaymentAllocation.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(allocation, "Allocation") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Allocations"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createOverpaymentAllocations(xeroTenantId, overpaymentID, allocations, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments/{OverpaymentID}/Allocations#bulk' + .replace('{' + 'OverpaymentID' + '}', encodeURIComponent(String(overpaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createOverpaymentAllocations.'); + } + if (overpaymentID === null || overpaymentID === undefined) { + throw new Error('Required parameter overpaymentID was null or undefined when calling createOverpaymentAllocations.'); + } + if (allocations === null || allocations === undefined) { + throw new Error('Required parameter allocations was null or undefined when calling createOverpaymentAllocations.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(allocations, "Allocations") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Allocations"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createOverpaymentHistory(xeroTenantId, overpaymentID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments/{OverpaymentID}/History' + .replace('{' + 'OverpaymentID' + '}', encodeURIComponent(String(overpaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createOverpaymentHistory.'); + } + if (overpaymentID === null || overpaymentID === undefined) { + throw new Error('Required parameter overpaymentID was null or undefined when calling createOverpaymentHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createOverpaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPayment(xeroTenantId, payment, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPayment.'); + } + if (payment === null || payment === undefined) { + throw new Error('Required parameter payment was null or undefined when calling createPayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(payment, "Payment") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Payments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPaymentHistory(xeroTenantId, paymentID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments/{PaymentID}/History' + .replace('{' + 'PaymentID' + '}', encodeURIComponent(String(paymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPaymentHistory.'); + } + if (paymentID === null || paymentID === undefined) { + throw new Error('Required parameter paymentID was null or undefined when calling createPaymentHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createPaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPaymentService(xeroTenantId, paymentServices, options = { headers: {} }) { + const localVarPath = this.basePath + '/PaymentServices'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPaymentService.'); + } + if (paymentServices === null || paymentServices === undefined) { + throw new Error('Required parameter paymentServices was null or undefined when calling createPaymentService.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(paymentServices, "PaymentServices") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PaymentServices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPayments(xeroTenantId, payments, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPayments.'); + } + if (payments === null || payments === undefined) { + throw new Error('Required parameter payments was null or undefined when calling createPayments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(payments, "Payments") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Payments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPrepaymentAllocation(xeroTenantId, prepaymentID, allocations, options = { headers: {} }) { + const localVarPath = this.basePath + '/Prepayments/{PrepaymentID}/Allocations' + .replace('{' + 'PrepaymentID' + '}', encodeURIComponent(String(prepaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPrepaymentAllocation.'); + } + if (prepaymentID === null || prepaymentID === undefined) { + throw new Error('Required parameter prepaymentID was null or undefined when calling createPrepaymentAllocation.'); + } + if (allocations === null || allocations === undefined) { + throw new Error('Required parameter allocations was null or undefined when calling createPrepaymentAllocation.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(allocations, "Allocations") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Allocations"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPrepaymentHistory(xeroTenantId, prepaymentID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Prepayments/{PrepaymentID}/History' + .replace('{' + 'PrepaymentID' + '}', encodeURIComponent(String(prepaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPrepaymentHistory.'); + } + if (prepaymentID === null || prepaymentID === undefined) { + throw new Error('Required parameter prepaymentID was null or undefined when calling createPrepaymentHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createPrepaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPurchaseOrder(xeroTenantId, purchaseOrder, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPurchaseOrder.'); + } + if (purchaseOrder === null || purchaseOrder === undefined) { + throw new Error('Required parameter purchaseOrder was null or undefined when calling createPurchaseOrder.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(purchaseOrder, "PurchaseOrder") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PurchaseOrders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPurchaseOrderHistory(xeroTenantId, purchaseOrderID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders/{PurchaseOrderID}/History' + .replace('{' + 'PurchaseOrderID' + '}', encodeURIComponent(String(purchaseOrderID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPurchaseOrderHistory.'); + } + if (purchaseOrderID === null || purchaseOrderID === undefined) { + throw new Error('Required parameter purchaseOrderID was null or undefined when calling createPurchaseOrderHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createPurchaseOrderHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createPurchaseOrders(xeroTenantId, purchaseOrders, summarizeErrors, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createPurchaseOrders.'); + } + if (purchaseOrders === null || purchaseOrders === undefined) { + throw new Error('Required parameter purchaseOrders was null or undefined when calling createPurchaseOrders.'); + } + if (summarizeErrors !== undefined) { + localVarQueryParameters['SummarizeErrors'] = models_1.ObjectSerializer.serialize(summarizeErrors, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(purchaseOrders, "PurchaseOrders") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PurchaseOrders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createReceipt(xeroTenantId, receipts, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createReceipt.'); + } + if (receipts === null || receipts === undefined) { + throw new Error('Required parameter receipts was null or undefined when calling createReceipt.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(receipts, "Receipts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Receipts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createReceiptAttachmentByFileName(xeroTenantId, receiptID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/Attachments/{FileName}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createReceiptAttachmentByFileName.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling createReceiptAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createReceiptAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createReceiptAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createReceiptHistory(xeroTenantId, receiptID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/History' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createReceiptHistory.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling createReceiptHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createReceiptHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createRepeatingInvoiceAttachmentByFileName(xeroTenantId, repeatingInvoiceID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/Attachments/{FileName}' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createRepeatingInvoiceAttachmentByFileName.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling createRepeatingInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling createRepeatingInvoiceAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling createRepeatingInvoiceAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createRepeatingInvoiceHistory(xeroTenantId, repeatingInvoiceID, historyRecords, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/History' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createRepeatingInvoiceHistory.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling createRepeatingInvoiceHistory.'); + } + if (historyRecords === null || historyRecords === undefined) { + throw new Error('Required parameter historyRecords was null or undefined when calling createRepeatingInvoiceHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(historyRecords, "HistoryRecords") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createTaxRate(xeroTenantId, taxRate, options = { headers: {} }) { + const localVarPath = this.basePath + '/TaxRates'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createTaxRate.'); + } + if (taxRate === null || taxRate === undefined) { + throw new Error('Required parameter taxRate was null or undefined when calling createTaxRate.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(taxRate, "TaxRate") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TaxRates"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createTaxRates(xeroTenantId, taxRates, options = { headers: {} }) { + const localVarPath = this.basePath + '/TaxRates#bulk'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createTaxRates.'); + } + if (taxRates === null || taxRates === undefined) { + throw new Error('Required parameter taxRates was null or undefined when calling createTaxRates.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(taxRates, "TaxRates") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TaxRates"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createTrackingCategory(xeroTenantId, trackingCategory, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createTrackingCategory.'); + } + if (trackingCategory === null || trackingCategory === undefined) { + throw new Error('Required parameter trackingCategory was null or undefined when calling createTrackingCategory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(trackingCategory, "TrackingCategory") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingCategories"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async createTrackingOptions(xeroTenantId, trackingCategoryID, trackingOption, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}/Options' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling createTrackingOptions.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling createTrackingOptions.'); + } + if (trackingOption === null || trackingOption === undefined) { + throw new Error('Required parameter trackingOption was null or undefined when calling createTrackingOptions.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'PUT', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(trackingOption, "TrackingOption") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingOptions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteAccount(xeroTenantId, accountID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteAccount.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling deleteAccount.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Accounts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteContactGroupContact(xeroTenantId, contactGroupID, contactID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups/{ContactGroupID}/Contacts/{ContactID}' + .replace('{' + 'ContactGroupID' + '}', encodeURIComponent(String(contactGroupID))) + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteContactGroupContact.'); + } + if (contactGroupID === null || contactGroupID === undefined) { + throw new Error('Required parameter contactGroupID was null or undefined when calling deleteContactGroupContact.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling deleteContactGroupContact.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteContactGroupContacts(xeroTenantId, contactGroupID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups/{ContactGroupID}/Contacts' + .replace('{' + 'ContactGroupID' + '}', encodeURIComponent(String(contactGroupID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteContactGroupContacts.'); + } + if (contactGroupID === null || contactGroupID === undefined) { + throw new Error('Required parameter contactGroupID was null or undefined when calling deleteContactGroupContacts.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteItem(xeroTenantId, itemID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items/{ItemID}' + .replace('{' + 'ItemID' + '}', encodeURIComponent(String(itemID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteItem.'); + } + if (itemID === null || itemID === undefined) { + throw new Error('Required parameter itemID was null or undefined when calling deleteItem.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteLinkedTransaction(xeroTenantId, linkedTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions/{LinkedTransactionID}' + .replace('{' + 'LinkedTransactionID' + '}', encodeURIComponent(String(linkedTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteLinkedTransaction.'); + } + if (linkedTransactionID === null || linkedTransactionID === undefined) { + throw new Error('Required parameter linkedTransactionID was null or undefined when calling deleteLinkedTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deletePayment(xeroTenantId, paymentID, payments, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments/{PaymentID}' + .replace('{' + 'PaymentID' + '}', encodeURIComponent(String(paymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deletePayment.'); + } + if (paymentID === null || paymentID === undefined) { + throw new Error('Required parameter paymentID was null or undefined when calling deletePayment.'); + } + if (payments === null || payments === undefined) { + throw new Error('Required parameter payments was null or undefined when calling deletePayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(payments, "Payments") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Payments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteTrackingCategory(xeroTenantId, trackingCategoryID, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteTrackingCategory.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling deleteTrackingCategory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingCategories"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async deleteTrackingOptions(xeroTenantId, trackingCategoryID, trackingOptionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}/Options/{TrackingOptionID}' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))) + .replace('{' + 'TrackingOptionID' + '}', encodeURIComponent(String(trackingOptionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling deleteTrackingOptions.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling deleteTrackingOptions.'); + } + if (trackingOptionID === null || trackingOptionID === undefined) { + throw new Error('Required parameter trackingOptionID was null or undefined when calling deleteTrackingOptions.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'DELETE', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingOptions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async emailInvoice(xeroTenantId, invoiceID, requestEmpty, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Email' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling emailInvoice.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling emailInvoice.'); + } + if (requestEmpty === null || requestEmpty === undefined) { + throw new Error('Required parameter requestEmpty was null or undefined when calling emailInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + body: models_1.ObjectSerializer.serialize(requestEmpty, "RequestEmpty") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getAccount(xeroTenantId, accountID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getAccount.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling getAccount.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Accounts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getAccountAttachmentByFileName(xeroTenantId, accountID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}/Attachments/{FileName}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getAccountAttachmentByFileName.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling getAccountAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getAccountAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getAccountAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getAccountAttachmentById(xeroTenantId, accountID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}/Attachments/{AttachmentID}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getAccountAttachmentById.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling getAccountAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getAccountAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getAccountAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getAccountAttachments(xeroTenantId, accountID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}/Attachments' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getAccountAttachments.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling getAccountAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getAccounts(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getAccounts.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Accounts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransaction(xeroTenantId, bankTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransaction.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling getBankTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransactionAttachmentByFileName(xeroTenantId, bankTransactionID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/Attachments/{FileName}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransactionAttachmentByFileName.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling getBankTransactionAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getBankTransactionAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getBankTransactionAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransactionAttachmentById(xeroTenantId, bankTransactionID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/Attachments/{AttachmentID}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransactionAttachmentById.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling getBankTransactionAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getBankTransactionAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getBankTransactionAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransactionAttachments(xeroTenantId, bankTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/Attachments' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransactionAttachments.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling getBankTransactionAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransactions(xeroTenantId, ifModifiedSince, where, order, page, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransactions.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransactionsHistory(xeroTenantId, bankTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/History' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransactionsHistory.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling getBankTransactionsHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransfer(xeroTenantId, bankTransferID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransfer.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling getBankTransfer.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransfers"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransferAttachmentByFileName(xeroTenantId, bankTransferID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/Attachments/{FileName}' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransferAttachmentByFileName.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling getBankTransferAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getBankTransferAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getBankTransferAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransferAttachmentById(xeroTenantId, bankTransferID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/Attachments/{AttachmentID}' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransferAttachmentById.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling getBankTransferAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getBankTransferAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getBankTransferAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransferAttachments(xeroTenantId, bankTransferID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/Attachments' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransferAttachments.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling getBankTransferAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransferHistory(xeroTenantId, bankTransferID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/History' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransferHistory.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling getBankTransferHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBankTransfers(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBankTransfers.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransfers"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBatchPaymentHistory(xeroTenantId, batchPaymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BatchPayments/{BatchPaymentID}/History' + .replace('{' + 'BatchPaymentID' + '}', encodeURIComponent(String(batchPaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBatchPaymentHistory.'); + } + if (batchPaymentID === null || batchPaymentID === undefined) { + throw new Error('Required parameter batchPaymentID was null or undefined when calling getBatchPaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBatchPayments(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/BatchPayments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBatchPayments.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BatchPayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBrandingTheme(xeroTenantId, brandingThemeID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BrandingThemes/{BrandingThemeID}' + .replace('{' + 'BrandingThemeID' + '}', encodeURIComponent(String(brandingThemeID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBrandingTheme.'); + } + if (brandingThemeID === null || brandingThemeID === undefined) { + throw new Error('Required parameter brandingThemeID was null or undefined when calling getBrandingTheme.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BrandingThemes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBrandingThemePaymentServices(xeroTenantId, brandingThemeID, options = { headers: {} }) { + const localVarPath = this.basePath + '/BrandingThemes/{BrandingThemeID}/PaymentServices' + .replace('{' + 'BrandingThemeID' + '}', encodeURIComponent(String(brandingThemeID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBrandingThemePaymentServices.'); + } + if (brandingThemeID === null || brandingThemeID === undefined) { + throw new Error('Required parameter brandingThemeID was null or undefined when calling getBrandingThemePaymentServices.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PaymentServices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getBrandingThemes(xeroTenantId, options = { headers: {} }) { + const localVarPath = this.basePath + '/BrandingThemes'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getBrandingThemes.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BrandingThemes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContact(xeroTenantId, contactID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContact.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContact.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactAttachmentByFileName(xeroTenantId, contactID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/Attachments/{FileName}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactAttachmentByFileName.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContactAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getContactAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getContactAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactAttachmentById(xeroTenantId, contactID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/Attachments/{AttachmentID}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactAttachmentById.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContactAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getContactAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getContactAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactAttachments(xeroTenantId, contactID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/Attachments' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactAttachments.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContactAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactCISSettings(xeroTenantId, contactID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/CISSettings' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactCISSettings.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContactCISSettings.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CISSettings"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactGroup(xeroTenantId, contactGroupID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups/{ContactGroupID}' + .replace('{' + 'ContactGroupID' + '}', encodeURIComponent(String(contactGroupID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactGroup.'); + } + if (contactGroupID === null || contactGroupID === undefined) { + throw new Error('Required parameter contactGroupID was null or undefined when calling getContactGroup.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ContactGroups"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactGroups(xeroTenantId, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactGroups.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ContactGroups"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContactHistory(xeroTenantId, contactID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/History' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContactHistory.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling getContactHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getContacts(xeroTenantId, ifModifiedSince, where, order, iDs, page, includeArchived, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getContacts.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (iDs !== undefined) { + localVarQueryParameters['IDs'] = models_1.ObjectSerializer.serialize(iDs, "Array"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (includeArchived !== undefined) { + localVarQueryParameters['includeArchived'] = models_1.ObjectSerializer.serialize(includeArchived, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNote(xeroTenantId, creditNoteID, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNote.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNote.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CreditNotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNoteAsPdf(xeroTenantId, creditNoteID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/pdf' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNoteAsPdf.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNoteAsPdf.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getCreditNoteAsPdf.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNoteAttachmentByFileName(xeroTenantId, creditNoteID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Attachments/{FileName}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNoteAttachmentByFileName.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNoteAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getCreditNoteAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getCreditNoteAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNoteAttachmentById(xeroTenantId, creditNoteID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Attachments/{AttachmentID}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNoteAttachmentById.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNoteAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getCreditNoteAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getCreditNoteAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNoteAttachments(xeroTenantId, creditNoteID, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Attachments' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNoteAttachments.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNoteAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNoteHistory(xeroTenantId, creditNoteID, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/History' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNoteHistory.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling getCreditNoteHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCreditNotes(xeroTenantId, ifModifiedSince, where, order, page, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCreditNotes.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CreditNotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getCurrencies(xeroTenantId, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Currencies'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getCurrencies.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Currencies"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getEmployee(xeroTenantId, employeeID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Employees/{EmployeeID}' + .replace('{' + 'EmployeeID' + '}', encodeURIComponent(String(employeeID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getEmployee.'); + } + if (employeeID === null || employeeID === undefined) { + throw new Error('Required parameter employeeID was null or undefined when calling getEmployee.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Employees"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getEmployees(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Employees'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getEmployees.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Employees"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getExpenseClaim(xeroTenantId, expenseClaimID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims/{ExpenseClaimID}' + .replace('{' + 'ExpenseClaimID' + '}', encodeURIComponent(String(expenseClaimID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getExpenseClaim.'); + } + if (expenseClaimID === null || expenseClaimID === undefined) { + throw new Error('Required parameter expenseClaimID was null or undefined when calling getExpenseClaim.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ExpenseClaims"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getExpenseClaimHistory(xeroTenantId, expenseClaimID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims/{ExpenseClaimID}/History' + .replace('{' + 'ExpenseClaimID' + '}', encodeURIComponent(String(expenseClaimID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getExpenseClaimHistory.'); + } + if (expenseClaimID === null || expenseClaimID === undefined) { + throw new Error('Required parameter expenseClaimID was null or undefined when calling getExpenseClaimHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getExpenseClaims(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getExpenseClaims.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ExpenseClaims"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoice(xeroTenantId, invoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoice.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Invoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceAsPdf(xeroTenantId, invoiceID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/pdf' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceAsPdf.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoiceAsPdf.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getInvoiceAsPdf.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceAttachmentByFileName(xeroTenantId, invoiceID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Attachments/{FileName}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceAttachmentByFileName.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getInvoiceAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getInvoiceAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceAttachmentById(xeroTenantId, invoiceID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Attachments/{AttachmentID}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceAttachmentById.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoiceAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getInvoiceAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getInvoiceAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceAttachments(xeroTenantId, invoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Attachments' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceAttachments.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoiceAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceHistory(xeroTenantId, invoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/History' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceHistory.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getInvoiceHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoiceReminders(xeroTenantId, options = { headers: {} }) { + const localVarPath = this.basePath + '/InvoiceReminders/Settings'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoiceReminders.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "InvoiceReminders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getInvoices(xeroTenantId, ifModifiedSince, where, order, iDs, invoiceNumbers, contactIDs, statuses, page, includeArchived, createdByMyApp, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getInvoices.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (iDs !== undefined) { + localVarQueryParameters['IDs'] = models_1.ObjectSerializer.serialize(iDs, "Array"); + } + if (invoiceNumbers !== undefined) { + localVarQueryParameters['InvoiceNumbers'] = models_1.ObjectSerializer.serialize(invoiceNumbers, "Array"); + } + if (contactIDs !== undefined) { + localVarQueryParameters['ContactIDs'] = models_1.ObjectSerializer.serialize(contactIDs, "Array"); + } + if (statuses !== undefined) { + localVarQueryParameters['Statuses'] = models_1.ObjectSerializer.serialize(statuses, "Array"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (includeArchived !== undefined) { + localVarQueryParameters['includeArchived'] = models_1.ObjectSerializer.serialize(includeArchived, "boolean"); + } + if (createdByMyApp !== undefined) { + localVarQueryParameters['createdByMyApp'] = models_1.ObjectSerializer.serialize(createdByMyApp, "boolean"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Invoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getItem(xeroTenantId, itemID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items/{ItemID}' + .replace('{' + 'ItemID' + '}', encodeURIComponent(String(itemID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getItem.'); + } + if (itemID === null || itemID === undefined) { + throw new Error('Required parameter itemID was null or undefined when calling getItem.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Items"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getItemHistory(xeroTenantId, itemID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items/{ItemID}/History' + .replace('{' + 'ItemID' + '}', encodeURIComponent(String(itemID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getItemHistory.'); + } + if (itemID === null || itemID === undefined) { + throw new Error('Required parameter itemID was null or undefined when calling getItemHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getItems(xeroTenantId, ifModifiedSince, where, order, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getItems.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Items"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getJournal(xeroTenantId, journalID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Journals/{JournalID}' + .replace('{' + 'JournalID' + '}', encodeURIComponent(String(journalID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getJournal.'); + } + if (journalID === null || journalID === undefined) { + throw new Error('Required parameter journalID was null or undefined when calling getJournal.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Journals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getJournals(xeroTenantId, ifModifiedSince, offset, paymentsOnly, options = { headers: {} }) { + const localVarPath = this.basePath + '/Journals'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getJournals.'); + } + if (offset !== undefined) { + localVarQueryParameters['offset'] = models_1.ObjectSerializer.serialize(offset, "number"); + } + if (paymentsOnly !== undefined) { + localVarQueryParameters['paymentsOnly'] = models_1.ObjectSerializer.serialize(paymentsOnly, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Journals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getLinkedTransaction(xeroTenantId, linkedTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions/{LinkedTransactionID}' + .replace('{' + 'LinkedTransactionID' + '}', encodeURIComponent(String(linkedTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getLinkedTransaction.'); + } + if (linkedTransactionID === null || linkedTransactionID === undefined) { + throw new Error('Required parameter linkedTransactionID was null or undefined when calling getLinkedTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "LinkedTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getLinkedTransactions(xeroTenantId, page, linkedTransactionID, sourceTransactionID, contactID, status, targetTransactionID, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getLinkedTransactions.'); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (linkedTransactionID !== undefined) { + localVarQueryParameters['LinkedTransactionID'] = models_1.ObjectSerializer.serialize(linkedTransactionID, "string"); + } + if (sourceTransactionID !== undefined) { + localVarQueryParameters['SourceTransactionID'] = models_1.ObjectSerializer.serialize(sourceTransactionID, "string"); + } + if (contactID !== undefined) { + localVarQueryParameters['ContactID'] = models_1.ObjectSerializer.serialize(contactID, "string"); + } + if (status !== undefined) { + localVarQueryParameters['Status'] = models_1.ObjectSerializer.serialize(status, "string"); + } + if (targetTransactionID !== undefined) { + localVarQueryParameters['TargetTransactionID'] = models_1.ObjectSerializer.serialize(targetTransactionID, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "LinkedTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getManualJournal(xeroTenantId, manualJournalID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getManualJournal.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling getManualJournal.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ManualJournals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getManualJournalAttachmentByFileName(xeroTenantId, manualJournalID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}/Attachments/{FileName}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getManualJournalAttachmentByFileName.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling getManualJournalAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getManualJournalAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getManualJournalAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getManualJournalAttachmentById(xeroTenantId, manualJournalID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}/Attachments/{AttachmentID}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getManualJournalAttachmentById.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling getManualJournalAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getManualJournalAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getManualJournalAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getManualJournalAttachments(xeroTenantId, manualJournalID, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}/Attachments' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getManualJournalAttachments.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling getManualJournalAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getManualJournals(xeroTenantId, ifModifiedSince, where, order, page, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getManualJournals.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ManualJournals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOnlineInvoice(xeroTenantId, invoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/OnlineInvoice' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOnlineInvoice.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling getOnlineInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "OnlineInvoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOrganisationCISSettings(xeroTenantId, organisationID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Organisation/{OrganisationID}/CISSettings' + .replace('{' + 'OrganisationID' + '}', encodeURIComponent(String(organisationID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOrganisationCISSettings.'); + } + if (organisationID === null || organisationID === undefined) { + throw new Error('Required parameter organisationID was null or undefined when calling getOrganisationCISSettings.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CISOrgSetting"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOrganisations(xeroTenantId, options = { headers: {} }) { + const localVarPath = this.basePath + '/Organisation'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOrganisations.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Organisations"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOverpayment(xeroTenantId, overpaymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments/{OverpaymentID}' + .replace('{' + 'OverpaymentID' + '}', encodeURIComponent(String(overpaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOverpayment.'); + } + if (overpaymentID === null || overpaymentID === undefined) { + throw new Error('Required parameter overpaymentID was null or undefined when calling getOverpayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Overpayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOverpaymentHistory(xeroTenantId, overpaymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments/{OverpaymentID}/History' + .replace('{' + 'OverpaymentID' + '}', encodeURIComponent(String(overpaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOverpaymentHistory.'); + } + if (overpaymentID === null || overpaymentID === undefined) { + throw new Error('Required parameter overpaymentID was null or undefined when calling getOverpaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getOverpayments(xeroTenantId, ifModifiedSince, where, order, page, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/Overpayments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getOverpayments.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Overpayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPayment(xeroTenantId, paymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments/{PaymentID}' + .replace('{' + 'PaymentID' + '}', encodeURIComponent(String(paymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPayment.'); + } + if (paymentID === null || paymentID === undefined) { + throw new Error('Required parameter paymentID was null or undefined when calling getPayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Payments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPaymentHistory(xeroTenantId, paymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments/{PaymentID}/History' + .replace('{' + 'PaymentID' + '}', encodeURIComponent(String(paymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPaymentHistory.'); + } + if (paymentID === null || paymentID === undefined) { + throw new Error('Required parameter paymentID was null or undefined when calling getPaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPaymentServices(xeroTenantId, options = { headers: {} }) { + const localVarPath = this.basePath + '/PaymentServices'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPaymentServices.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PaymentServices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPayments(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Payments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPayments.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Payments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPrepayment(xeroTenantId, prepaymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Prepayments/{PrepaymentID}' + .replace('{' + 'PrepaymentID' + '}', encodeURIComponent(String(prepaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPrepayment.'); + } + if (prepaymentID === null || prepaymentID === undefined) { + throw new Error('Required parameter prepaymentID was null or undefined when calling getPrepayment.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Prepayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPrepaymentHistory(xeroTenantId, prepaymentID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Prepayments/{PrepaymentID}/History' + .replace('{' + 'PrepaymentID' + '}', encodeURIComponent(String(prepaymentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPrepaymentHistory.'); + } + if (prepaymentID === null || prepaymentID === undefined) { + throw new Error('Required parameter prepaymentID was null or undefined when calling getPrepaymentHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPrepayments(xeroTenantId, ifModifiedSince, where, order, page, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/Prepayments'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPrepayments.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Prepayments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPurchaseOrder(xeroTenantId, purchaseOrderID, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders/{PurchaseOrderID}' + .replace('{' + 'PurchaseOrderID' + '}', encodeURIComponent(String(purchaseOrderID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPurchaseOrder.'); + } + if (purchaseOrderID === null || purchaseOrderID === undefined) { + throw new Error('Required parameter purchaseOrderID was null or undefined when calling getPurchaseOrder.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PurchaseOrders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPurchaseOrderHistory(xeroTenantId, purchaseOrderID, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders/{PurchaseOrderID}/History' + .replace('{' + 'PurchaseOrderID' + '}', encodeURIComponent(String(purchaseOrderID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPurchaseOrderHistory.'); + } + if (purchaseOrderID === null || purchaseOrderID === undefined) { + throw new Error('Required parameter purchaseOrderID was null or undefined when calling getPurchaseOrderHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getPurchaseOrders(xeroTenantId, ifModifiedSince, status, dateFrom, dateTo, order, page, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getPurchaseOrders.'); + } + if (status !== undefined) { + localVarQueryParameters['Status'] = models_1.ObjectSerializer.serialize(status, "'DRAFT' | 'SUBMITTED' | 'AUTHORISED' | 'BILLED' | 'DELETED'"); + } + if (dateFrom !== undefined) { + localVarQueryParameters['DateFrom'] = models_1.ObjectSerializer.serialize(dateFrom, "string"); + } + if (dateTo !== undefined) { + localVarQueryParameters['DateTo'] = models_1.ObjectSerializer.serialize(dateTo, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PurchaseOrders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getQuote(xeroTenantId, quoteID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Quotes/{QuoteID}' + .replace('{' + 'QuoteID' + '}', encodeURIComponent(String(quoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getQuote.'); + } + if (quoteID === null || quoteID === undefined) { + throw new Error('Required parameter quoteID was null or undefined when calling getQuote.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Quotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getQuotes(xeroTenantId, ifModifiedSince, dateFrom, dateTo, expiryDateFrom, expiryDateTo, contactID, status, page, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Quotes'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getQuotes.'); + } + if (dateFrom !== undefined) { + localVarQueryParameters['DateFrom'] = models_1.ObjectSerializer.serialize(dateFrom, "string"); + } + if (dateTo !== undefined) { + localVarQueryParameters['DateTo'] = models_1.ObjectSerializer.serialize(dateTo, "string"); + } + if (expiryDateFrom !== undefined) { + localVarQueryParameters['ExpiryDateFrom'] = models_1.ObjectSerializer.serialize(expiryDateFrom, "string"); + } + if (expiryDateTo !== undefined) { + localVarQueryParameters['ExpiryDateTo'] = models_1.ObjectSerializer.serialize(expiryDateTo, "string"); + } + if (contactID !== undefined) { + localVarQueryParameters['ContactID'] = models_1.ObjectSerializer.serialize(contactID, "string"); + } + if (status !== undefined) { + localVarQueryParameters['Status'] = models_1.ObjectSerializer.serialize(status, "string"); + } + if (page !== undefined) { + localVarQueryParameters['page'] = models_1.ObjectSerializer.serialize(page, "number"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Quotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceipt(xeroTenantId, receiptID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceipt.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling getReceipt.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Receipts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceiptAttachmentByFileName(xeroTenantId, receiptID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/Attachments/{FileName}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceiptAttachmentByFileName.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling getReceiptAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getReceiptAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getReceiptAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceiptAttachmentById(xeroTenantId, receiptID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/Attachments/{AttachmentID}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceiptAttachmentById.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling getReceiptAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getReceiptAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getReceiptAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceiptAttachments(xeroTenantId, receiptID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/Attachments' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceiptAttachments.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling getReceiptAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceiptHistory(xeroTenantId, receiptID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/History' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceiptHistory.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling getReceiptHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReceipts(xeroTenantId, ifModifiedSince, where, order, unitdp, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReceipts.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (unitdp !== undefined) { + localVarQueryParameters['unitdp'] = models_1.ObjectSerializer.serialize(unitdp, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Receipts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoice(xeroTenantId, repeatingInvoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoice.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling getRepeatingInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "RepeatingInvoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoiceAttachmentByFileName(xeroTenantId, repeatingInvoiceID, fileName, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/Attachments/{FileName}' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoiceAttachmentByFileName.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling getRepeatingInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling getRepeatingInvoiceAttachmentByFileName.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getRepeatingInvoiceAttachmentByFileName.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoiceAttachmentById(xeroTenantId, repeatingInvoiceID, attachmentID, contentType, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/Attachments/{AttachmentID}' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))) + .replace('{' + 'AttachmentID' + '}', encodeURIComponent(String(attachmentID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoiceAttachmentById.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling getRepeatingInvoiceAttachmentById.'); + } + if (attachmentID === null || attachmentID === undefined) { + throw new Error('Required parameter attachmentID was null or undefined when calling getRepeatingInvoiceAttachmentById.'); + } + if (contentType === null || contentType === undefined) { + throw new Error('Required parameter contentType was null or undefined when calling getRepeatingInvoiceAttachmentById.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['contentType'] = models_1.ObjectSerializer.serialize(contentType, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + encoding: null, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Buffer"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoiceAttachments(xeroTenantId, repeatingInvoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/Attachments' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoiceAttachments.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling getRepeatingInvoiceAttachments.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoiceHistory(xeroTenantId, repeatingInvoiceID, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/History' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoiceHistory.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling getRepeatingInvoiceHistory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "HistoryRecords"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getRepeatingInvoices(xeroTenantId, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getRepeatingInvoices.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "RepeatingInvoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportAgedPayablesByContact(xeroTenantId, contactId, date, fromDate, toDate, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/AgedPayablesByContact'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportAgedPayablesByContact.'); + } + if (contactId === null || contactId === undefined) { + throw new Error('Required parameter contactId was null or undefined when calling getReportAgedPayablesByContact.'); + } + if (contactId !== undefined) { + localVarQueryParameters['contactId'] = models_1.ObjectSerializer.serialize(contactId, "string"); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (fromDate !== undefined) { + localVarQueryParameters['fromDate'] = models_1.ObjectSerializer.serialize(fromDate, "string"); + } + if (toDate !== undefined) { + localVarQueryParameters['toDate'] = models_1.ObjectSerializer.serialize(toDate, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportAgedReceivablesByContact(xeroTenantId, contactId, date, fromDate, toDate, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/AgedReceivablesByContact'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportAgedReceivablesByContact.'); + } + if (contactId === null || contactId === undefined) { + throw new Error('Required parameter contactId was null or undefined when calling getReportAgedReceivablesByContact.'); + } + if (contactId !== undefined) { + localVarQueryParameters['contactId'] = models_1.ObjectSerializer.serialize(contactId, "string"); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (fromDate !== undefined) { + localVarQueryParameters['fromDate'] = models_1.ObjectSerializer.serialize(fromDate, "string"); + } + if (toDate !== undefined) { + localVarQueryParameters['toDate'] = models_1.ObjectSerializer.serialize(toDate, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportBASorGST(xeroTenantId, reportID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/{ReportID}' + .replace('{' + 'ReportID' + '}', encodeURIComponent(String(reportID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportBASorGST.'); + } + if (reportID === null || reportID === undefined) { + throw new Error('Required parameter reportID was null or undefined when calling getReportBASorGST.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportBASorGSTList(xeroTenantId, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportBASorGSTList.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportBalanceSheet(xeroTenantId, date, periods, timeframe, trackingOptionID1, trackingOptionID2, standardLayout, paymentsOnly, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/BalanceSheet'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportBalanceSheet.'); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (periods !== undefined) { + localVarQueryParameters['periods'] = models_1.ObjectSerializer.serialize(periods, "number"); + } + if (timeframe !== undefined) { + localVarQueryParameters['timeframe'] = models_1.ObjectSerializer.serialize(timeframe, "'MONTH' | 'QUARTER' | 'YEAR'"); + } + if (trackingOptionID1 !== undefined) { + localVarQueryParameters['trackingOptionID1'] = models_1.ObjectSerializer.serialize(trackingOptionID1, "string"); + } + if (trackingOptionID2 !== undefined) { + localVarQueryParameters['trackingOptionID2'] = models_1.ObjectSerializer.serialize(trackingOptionID2, "string"); + } + if (standardLayout !== undefined) { + localVarQueryParameters['standardLayout'] = models_1.ObjectSerializer.serialize(standardLayout, "boolean"); + } + if (paymentsOnly !== undefined) { + localVarQueryParameters['paymentsOnly'] = models_1.ObjectSerializer.serialize(paymentsOnly, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportBankSummary(xeroTenantId, date, period, timeframe, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/BankSummary'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportBankSummary.'); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (period !== undefined) { + localVarQueryParameters['period'] = models_1.ObjectSerializer.serialize(period, "number"); + } + if (timeframe !== undefined) { + localVarQueryParameters['timeframe'] = models_1.ObjectSerializer.serialize(timeframe, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportBudgetSummary(xeroTenantId, date, period, timeframe, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/BudgetSummary'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportBudgetSummary.'); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (period !== undefined) { + localVarQueryParameters['period'] = models_1.ObjectSerializer.serialize(period, "number"); + } + if (timeframe !== undefined) { + localVarQueryParameters['timeframe'] = models_1.ObjectSerializer.serialize(timeframe, "number"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportExecutiveSummary(xeroTenantId, date, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/ExecutiveSummary'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportExecutiveSummary.'); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportProfitAndLoss(xeroTenantId, fromDate, toDate, periods, timeframe, trackingCategoryID, trackingCategoryID2, trackingOptionID, trackingOptionID2, standardLayout, paymentsOnly, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/ProfitAndLoss'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportProfitAndLoss.'); + } + if (fromDate !== undefined) { + localVarQueryParameters['fromDate'] = models_1.ObjectSerializer.serialize(fromDate, "string"); + } + if (toDate !== undefined) { + localVarQueryParameters['toDate'] = models_1.ObjectSerializer.serialize(toDate, "string"); + } + if (periods !== undefined) { + localVarQueryParameters['periods'] = models_1.ObjectSerializer.serialize(periods, "number"); + } + if (timeframe !== undefined) { + localVarQueryParameters['timeframe'] = models_1.ObjectSerializer.serialize(timeframe, "'MONTH' | 'QUARTER' | 'YEAR'"); + } + if (trackingCategoryID !== undefined) { + localVarQueryParameters['trackingCategoryID'] = models_1.ObjectSerializer.serialize(trackingCategoryID, "string"); + } + if (trackingCategoryID2 !== undefined) { + localVarQueryParameters['trackingCategoryID2'] = models_1.ObjectSerializer.serialize(trackingCategoryID2, "string"); + } + if (trackingOptionID !== undefined) { + localVarQueryParameters['trackingOptionID'] = models_1.ObjectSerializer.serialize(trackingOptionID, "string"); + } + if (trackingOptionID2 !== undefined) { + localVarQueryParameters['trackingOptionID2'] = models_1.ObjectSerializer.serialize(trackingOptionID2, "string"); + } + if (standardLayout !== undefined) { + localVarQueryParameters['standardLayout'] = models_1.ObjectSerializer.serialize(standardLayout, "boolean"); + } + if (paymentsOnly !== undefined) { + localVarQueryParameters['paymentsOnly'] = models_1.ObjectSerializer.serialize(paymentsOnly, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportTenNinetyNine(xeroTenantId, reportYear, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/TenNinetyNine'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportTenNinetyNine.'); + } + if (reportYear !== undefined) { + localVarQueryParameters['reportYear'] = models_1.ObjectSerializer.serialize(reportYear, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Reports"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getReportTrialBalance(xeroTenantId, date, paymentsOnly, options = { headers: {} }) { + const localVarPath = this.basePath + '/Reports/TrialBalance'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getReportTrialBalance.'); + } + if (date !== undefined) { + localVarQueryParameters['date'] = models_1.ObjectSerializer.serialize(date, "string"); + } + if (paymentsOnly !== undefined) { + localVarQueryParameters['paymentsOnly'] = models_1.ObjectSerializer.serialize(paymentsOnly, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ReportWithRows"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getTaxRates(xeroTenantId, where, order, taxType, options = { headers: {} }) { + const localVarPath = this.basePath + '/TaxRates'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getTaxRates.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (taxType !== undefined) { + localVarQueryParameters['TaxType'] = models_1.ObjectSerializer.serialize(taxType, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TaxRates"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getTrackingCategories(xeroTenantId, where, order, includeArchived, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getTrackingCategories.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + if (includeArchived !== undefined) { + localVarQueryParameters['includeArchived'] = models_1.ObjectSerializer.serialize(includeArchived, "boolean"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingCategories"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getTrackingCategory(xeroTenantId, trackingCategoryID, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getTrackingCategory.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling getTrackingCategory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingCategories"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getUser(xeroTenantId, userID, options = { headers: {} }) { + const localVarPath = this.basePath + '/Users/{UserID}' + .replace('{' + 'UserID' + '}', encodeURIComponent(String(userID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getUser.'); + } + if (userID === null || userID === undefined) { + throw new Error('Required parameter userID was null or undefined when calling getUser.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Users"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async getUsers(xeroTenantId, ifModifiedSince, where, order, options = { headers: {} }) { + const localVarPath = this.basePath + '/Users'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling getUsers.'); + } + if (where !== undefined) { + localVarQueryParameters['where'] = models_1.ObjectSerializer.serialize(where, "string"); + } + if (order !== undefined) { + localVarQueryParameters['order'] = models_1.ObjectSerializer.serialize(order, "string"); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + localVarHeaderParams['If-Modified-Since'] = models_1.ObjectSerializer.serialize(ifModifiedSince, "Date"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'GET', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Users"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateAccount(xeroTenantId, accountID, accounts, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateAccount.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling updateAccount.'); + } + if (accounts === null || accounts === undefined) { + throw new Error('Required parameter accounts was null or undefined when calling updateAccount.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(accounts, "Accounts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Accounts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateAccountAttachmentByFileName(xeroTenantId, accountID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Accounts/{AccountID}/Attachments/{FileName}' + .replace('{' + 'AccountID' + '}', encodeURIComponent(String(accountID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateAccountAttachmentByFileName.'); + } + if (accountID === null || accountID === undefined) { + throw new Error('Required parameter accountID was null or undefined when calling updateAccountAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateAccountAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateAccountAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateBankTransaction(xeroTenantId, bankTransactionID, bankTransactions, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateBankTransaction.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling updateBankTransaction.'); + } + if (bankTransactions === null || bankTransactions === undefined) { + throw new Error('Required parameter bankTransactions was null or undefined when calling updateBankTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(bankTransactions, "BankTransactions") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "BankTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateBankTransactionAttachmentByFileName(xeroTenantId, bankTransactionID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransactions/{BankTransactionID}/Attachments/{FileName}' + .replace('{' + 'BankTransactionID' + '}', encodeURIComponent(String(bankTransactionID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateBankTransactionAttachmentByFileName.'); + } + if (bankTransactionID === null || bankTransactionID === undefined) { + throw new Error('Required parameter bankTransactionID was null or undefined when calling updateBankTransactionAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateBankTransactionAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateBankTransactionAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateBankTransferAttachmentByFileName(xeroTenantId, bankTransferID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/BankTransfers/{BankTransferID}/Attachments/{FileName}' + .replace('{' + 'BankTransferID' + '}', encodeURIComponent(String(bankTransferID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateBankTransferAttachmentByFileName.'); + } + if (bankTransferID === null || bankTransferID === undefined) { + throw new Error('Required parameter bankTransferID was null or undefined when calling updateBankTransferAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateBankTransferAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateBankTransferAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateContact(xeroTenantId, contactID, contacts, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateContact.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling updateContact.'); + } + if (contacts === null || contacts === undefined) { + throw new Error('Required parameter contacts was null or undefined when calling updateContact.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contacts, "Contacts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Contacts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateContactAttachmentByFileName(xeroTenantId, contactID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Contacts/{ContactID}/Attachments/{FileName}' + .replace('{' + 'ContactID' + '}', encodeURIComponent(String(contactID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateContactAttachmentByFileName.'); + } + if (contactID === null || contactID === undefined) { + throw new Error('Required parameter contactID was null or undefined when calling updateContactAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateContactAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateContactAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateContactGroup(xeroTenantId, contactGroupID, contactGroups, options = { headers: {} }) { + const localVarPath = this.basePath + '/ContactGroups/{ContactGroupID}' + .replace('{' + 'ContactGroupID' + '}', encodeURIComponent(String(contactGroupID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateContactGroup.'); + } + if (contactGroupID === null || contactGroupID === undefined) { + throw new Error('Required parameter contactGroupID was null or undefined when calling updateContactGroup.'); + } + if (contactGroups === null || contactGroups === undefined) { + throw new Error('Required parameter contactGroups was null or undefined when calling updateContactGroup.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(contactGroups, "ContactGroups") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ContactGroups"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateCreditNote(xeroTenantId, creditNoteID, creditNotes, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateCreditNote.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling updateCreditNote.'); + } + if (creditNotes === null || creditNotes === undefined) { + throw new Error('Required parameter creditNotes was null or undefined when calling updateCreditNote.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(creditNotes, "CreditNotes") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "CreditNotes"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateCreditNoteAttachmentByFileName(xeroTenantId, creditNoteID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/CreditNotes/{CreditNoteID}/Attachments/{FileName}' + .replace('{' + 'CreditNoteID' + '}', encodeURIComponent(String(creditNoteID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateCreditNoteAttachmentByFileName.'); + } + if (creditNoteID === null || creditNoteID === undefined) { + throw new Error('Required parameter creditNoteID was null or undefined when calling updateCreditNoteAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateCreditNoteAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateCreditNoteAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateEmployee(xeroTenantId, employeeID, employees, options = { headers: {} }) { + const localVarPath = this.basePath + '/Employees/{EmployeeID}' + .replace('{' + 'EmployeeID' + '}', encodeURIComponent(String(employeeID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateEmployee.'); + } + if (employeeID === null || employeeID === undefined) { + throw new Error('Required parameter employeeID was null or undefined when calling updateEmployee.'); + } + if (employees === null || employees === undefined) { + throw new Error('Required parameter employees was null or undefined when calling updateEmployee.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(employees, "Employees") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Employees"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateExpenseClaim(xeroTenantId, expenseClaimID, expenseClaims, options = { headers: {} }) { + const localVarPath = this.basePath + '/ExpenseClaims/{ExpenseClaimID}' + .replace('{' + 'ExpenseClaimID' + '}', encodeURIComponent(String(expenseClaimID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateExpenseClaim.'); + } + if (expenseClaimID === null || expenseClaimID === undefined) { + throw new Error('Required parameter expenseClaimID was null or undefined when calling updateExpenseClaim.'); + } + if (expenseClaims === null || expenseClaims === undefined) { + throw new Error('Required parameter expenseClaims was null or undefined when calling updateExpenseClaim.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(expenseClaims, "ExpenseClaims") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ExpenseClaims"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateInvoice(xeroTenantId, invoiceID, invoices, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateInvoice.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling updateInvoice.'); + } + if (invoices === null || invoices === undefined) { + throw new Error('Required parameter invoices was null or undefined when calling updateInvoice.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(invoices, "Invoices") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Invoices"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateInvoiceAttachmentByFileName(xeroTenantId, invoiceID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Invoices/{InvoiceID}/Attachments/{FileName}' + .replace('{' + 'InvoiceID' + '}', encodeURIComponent(String(invoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateInvoiceAttachmentByFileName.'); + } + if (invoiceID === null || invoiceID === undefined) { + throw new Error('Required parameter invoiceID was null or undefined when calling updateInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateInvoiceAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateInvoiceAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateItem(xeroTenantId, itemID, items, options = { headers: {} }) { + const localVarPath = this.basePath + '/Items/{ItemID}' + .replace('{' + 'ItemID' + '}', encodeURIComponent(String(itemID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateItem.'); + } + if (itemID === null || itemID === undefined) { + throw new Error('Required parameter itemID was null or undefined when calling updateItem.'); + } + if (items === null || items === undefined) { + throw new Error('Required parameter items was null or undefined when calling updateItem.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(items, "Items") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Items"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateLinkedTransaction(xeroTenantId, linkedTransactionID, linkedTransactions, options = { headers: {} }) { + const localVarPath = this.basePath + '/LinkedTransactions/{LinkedTransactionID}' + .replace('{' + 'LinkedTransactionID' + '}', encodeURIComponent(String(linkedTransactionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateLinkedTransaction.'); + } + if (linkedTransactionID === null || linkedTransactionID === undefined) { + throw new Error('Required parameter linkedTransactionID was null or undefined when calling updateLinkedTransaction.'); + } + if (linkedTransactions === null || linkedTransactions === undefined) { + throw new Error('Required parameter linkedTransactions was null or undefined when calling updateLinkedTransaction.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(linkedTransactions, "LinkedTransactions") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "LinkedTransactions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateManualJournal(xeroTenantId, manualJournalID, manualJournals, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateManualJournal.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling updateManualJournal.'); + } + if (manualJournals === null || manualJournals === undefined) { + throw new Error('Required parameter manualJournals was null or undefined when calling updateManualJournal.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(manualJournals, "ManualJournals") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "ManualJournals"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateManualJournalAttachmentByFileName(xeroTenantId, manualJournalID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/ManualJournals/{ManualJournalID}/Attachments/{FileName}' + .replace('{' + 'ManualJournalID' + '}', encodeURIComponent(String(manualJournalID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateManualJournalAttachmentByFileName.'); + } + if (manualJournalID === null || manualJournalID === undefined) { + throw new Error('Required parameter manualJournalID was null or undefined when calling updateManualJournalAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateManualJournalAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateManualJournalAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updatePurchaseOrder(xeroTenantId, purchaseOrderID, purchaseOrders, options = { headers: {} }) { + const localVarPath = this.basePath + '/PurchaseOrders/{PurchaseOrderID}' + .replace('{' + 'PurchaseOrderID' + '}', encodeURIComponent(String(purchaseOrderID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updatePurchaseOrder.'); + } + if (purchaseOrderID === null || purchaseOrderID === undefined) { + throw new Error('Required parameter purchaseOrderID was null or undefined when calling updatePurchaseOrder.'); + } + if (purchaseOrders === null || purchaseOrders === undefined) { + throw new Error('Required parameter purchaseOrders was null or undefined when calling updatePurchaseOrder.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(purchaseOrders, "PurchaseOrders") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "PurchaseOrders"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateReceipt(xeroTenantId, receiptID, receipts, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateReceipt.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling updateReceipt.'); + } + if (receipts === null || receipts === undefined) { + throw new Error('Required parameter receipts was null or undefined when calling updateReceipt.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(receipts, "Receipts") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Receipts"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateReceiptAttachmentByFileName(xeroTenantId, receiptID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/Receipts/{ReceiptID}/Attachments/{FileName}' + .replace('{' + 'ReceiptID' + '}', encodeURIComponent(String(receiptID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateReceiptAttachmentByFileName.'); + } + if (receiptID === null || receiptID === undefined) { + throw new Error('Required parameter receiptID was null or undefined when calling updateReceiptAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateReceiptAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateReceiptAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateRepeatingInvoiceAttachmentByFileName(xeroTenantId, repeatingInvoiceID, fileName, body, options = { headers: {} }) { + const localVarPath = this.basePath + '/RepeatingInvoices/{RepeatingInvoiceID}/Attachments/{FileName}' + .replace('{' + 'RepeatingInvoiceID' + '}', encodeURIComponent(String(repeatingInvoiceID))) + .replace('{' + 'FileName' + '}', encodeURIComponent(String(fileName))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateRepeatingInvoiceAttachmentByFileName.'); + } + if (repeatingInvoiceID === null || repeatingInvoiceID === undefined) { + throw new Error('Required parameter repeatingInvoiceID was null or undefined when calling updateRepeatingInvoiceAttachmentByFileName.'); + } + if (fileName === null || fileName === undefined) { + throw new Error('Required parameter fileName was null or undefined when calling updateRepeatingInvoiceAttachmentByFileName.'); + } + if (body === null || body === undefined) { + throw new Error('Required parameter body was null or undefined when calling updateRepeatingInvoiceAttachmentByFileName.'); + } + this.binaryHeaders = { 'Accept': 'application/json' }; + Object.assign(localVarHeaderParams, this.binaryHeaders); + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(body, "string") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + }).then(() => { + return new Promise((resolve, reject) => { + const fileContents = []; + body.on('data', (chunk) => { + fileContents.push(chunk); + }); + body.on('end', () => { + resolve(fileContents); + }); + body.on('error', (err) => { + reject(err); + }); + }); + }).then((fileContents) => { + localVarRequestOptions.body = fileContents; + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "Attachments"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateTaxRate(xeroTenantId, taxRates, options = { headers: {} }) { + const localVarPath = this.basePath + '/TaxRates'; + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateTaxRate.'); + } + if (taxRates === null || taxRates === undefined) { + throw new Error('Required parameter taxRates was null or undefined when calling updateTaxRate.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(taxRates, "TaxRates") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TaxRates"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateTrackingCategory(xeroTenantId, trackingCategoryID, trackingCategory, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateTrackingCategory.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling updateTrackingCategory.'); + } + if (trackingCategory === null || trackingCategory === undefined) { + throw new Error('Required parameter trackingCategory was null or undefined when calling updateTrackingCategory.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(trackingCategory, "TrackingCategory") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingCategories"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } + async updateTrackingOptions(xeroTenantId, trackingCategoryID, trackingOptionID, trackingOption, options = { headers: {} }) { + const localVarPath = this.basePath + '/TrackingCategories/{TrackingCategoryID}/Options/{TrackingOptionID}' + .replace('{' + 'TrackingCategoryID' + '}', encodeURIComponent(String(trackingCategoryID))) + .replace('{' + 'TrackingOptionID' + '}', encodeURIComponent(String(trackingOptionID))); + let localVarQueryParameters = {}; + let localVarHeaderParams = Object.assign({}, this.defaultHeaders); + let localVarFormParams = {}; + if (xeroTenantId === null || xeroTenantId === undefined) { + throw new Error('Required parameter xeroTenantId was null or undefined when calling updateTrackingOptions.'); + } + if (trackingCategoryID === null || trackingCategoryID === undefined) { + throw new Error('Required parameter trackingCategoryID was null or undefined when calling updateTrackingOptions.'); + } + if (trackingOptionID === null || trackingOptionID === undefined) { + throw new Error('Required parameter trackingOptionID was null or undefined when calling updateTrackingOptions.'); + } + if (trackingOption === null || trackingOption === undefined) { + throw new Error('Required parameter trackingOption was null or undefined when calling updateTrackingOptions.'); + } + localVarHeaderParams['Xero-Tenant-Id'] = models_1.ObjectSerializer.serialize(xeroTenantId, "string"); + Object.assign(localVarHeaderParams, options.headers); + let localVarUseFormData = false; + let localVarRequestOptions = { + method: 'POST', + qs: localVarQueryParameters, + headers: localVarHeaderParams, + uri: localVarPath, + useQuerystring: this._useQuerystring, + json: true, + body: models_1.ObjectSerializer.serialize(trackingOption, "TrackingOption") + }; + let authenticationPromise = Promise.resolve(); + authenticationPromise = authenticationPromise.then(() => this.authentications.OAuth2.applyToRequest(localVarRequestOptions)); + authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions)); + return authenticationPromise.then(() => { + if (Object.keys(localVarFormParams).length) { + if (localVarUseFormData) { + localVarRequestOptions.formData = localVarFormParams; + } + else { + localVarRequestOptions.form = localVarFormParams; + } + } + return new Promise((resolve, reject) => { + localVarRequest(localVarRequestOptions, (error, response, body) => { + if (error) { + reject(error); + } + else { + body = models_1.ObjectSerializer.deserialize(body, "TrackingOptions"); + if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) { + resolve({ response: response, body: body }); + } + else { + reject({ response: response, body: body }); + } + } + }); + }); + }); + } +} +exports.AccountingApi = AccountingApi; +//# sourceMappingURL=accountingApi.js.map \ No newline at end of file diff --git a/dist/gen/api/accountingApi.js.map b/dist/gen/api/accountingApi.js.map new file mode 100644 index 000000000..a306be053 --- /dev/null +++ b/dist/gen/api/accountingApi.js.map @@ -0,0 +1 @@ +{"version":3,"file":"accountingApi.js","sourceRoot":"","sources":["../../../src/gen/api/accountingApi.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/api/apis.d.ts b/dist/gen/api/apis.d.ts new file mode 100644 index 000000000..e6c54417c --- /dev/null +++ b/dist/gen/api/apis.d.ts @@ -0,0 +1,3 @@ +export * from './accountingApi'; +import { AccountingApi } from './accountingApi'; +export declare const APIS: (typeof AccountingApi)[]; diff --git a/dist/gen/api/apis.js b/dist/gen/api/apis.js new file mode 100644 index 000000000..283a2c425 --- /dev/null +++ b/dist/gen/api/apis.js @@ -0,0 +1,9 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +Object.defineProperty(exports, "__esModule", { value: true }); +__export(require("./accountingApi")); +const accountingApi_1 = require("./accountingApi"); +exports.APIS = [accountingApi_1.AccountingApi]; +//# sourceMappingURL=apis.js.map \ No newline at end of file diff --git a/dist/gen/api/apis.js.map b/dist/gen/api/apis.js.map new file mode 100644 index 000000000..060ce3c87 --- /dev/null +++ b/dist/gen/api/apis.js.map @@ -0,0 +1 @@ +{"version":3,"file":"apis.js","sourceRoot":"","sources":["../../../src/gen/api/apis.ts"],"names":[],"mappings":";;;;;AAAA,qCAAgC;AAChC,mDAAgD;AACnC,QAAA,IAAI,GAAG,CAAC,6BAAa,CAAC,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/account.d.ts b/dist/gen/model/accounting/account.d.ts new file mode 100644 index 000000000..b5da52027 --- /dev/null +++ b/dist/gen/model/accounting/account.d.ts @@ -0,0 +1,73 @@ +import { AccountType } from './accountType'; +import { CurrencyCode } from './currencyCode'; +import { ValidationError } from './validationError'; +export declare class Account { + 'code'?: string; + 'name'?: string; + 'accountID'?: string; + 'type'?: AccountType; + 'bankAccountNumber'?: string; + 'status'?: Account.StatusEnum; + 'description'?: string; + 'bankAccountType'?: Account.BankAccountTypeEnum; + 'currencyCode'?: CurrencyCode; + 'taxType'?: string; + 'enablePaymentsToAccount'?: boolean; + 'showInExpenseClaims'?: boolean; + '_class'?: Account.ClassEnum; + 'systemAccount'?: Account.SystemAccountEnum; + 'reportingCode'?: string; + 'reportingCodeName'?: string; + 'hasAttachments'?: boolean; + 'updatedDateUTC'?: Date; + 'addToWatchlist'?: boolean; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Account { + enum StatusEnum { + ACTIVE, + ARCHIVED, + DELETED + } + enum BankAccountTypeEnum { + BANK, + CREDITCARD, + PAYPAL, + NONE, + Empty + } + enum ClassEnum { + ASSET, + EQUITY, + EXPENSE, + LIABILITY, + REVENUE + } + enum SystemAccountEnum { + DEBTORS, + CREDITORS, + BANKCURRENCYGAIN, + GST, + GSTONIMPORTS, + HISTORICAL, + REALISEDCURRENCYGAIN, + RETAINEDEARNINGS, + ROUNDING, + TRACKINGTRANSFERS, + UNPAIDEXPCLM, + UNREALISEDCURRENCYGAIN, + WAGEPAYABLES, + Empty + } +} diff --git a/dist/gen/model/accounting/account.js b/dist/gen/model/accounting/account.js new file mode 100644 index 000000000..a7085231b --- /dev/null +++ b/dist/gen/model/accounting/account.js @@ -0,0 +1,153 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Account { + static getAttributeTypeMap() { + return Account.attributeTypeMap; + } +} +exports.Account = Account; +Account.discriminator = undefined; +Account.attributeTypeMap = [ + { + "name": "code", + "baseName": "Code", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "accountID", + "baseName": "AccountID", + "type": "string" + }, + { + "name": "type", + "baseName": "Type", + "type": "AccountType" + }, + { + "name": "bankAccountNumber", + "baseName": "BankAccountNumber", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "Account.StatusEnum" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "bankAccountType", + "baseName": "BankAccountType", + "type": "Account.BankAccountTypeEnum" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + }, + { + "name": "enablePaymentsToAccount", + "baseName": "EnablePaymentsToAccount", + "type": "boolean" + }, + { + "name": "showInExpenseClaims", + "baseName": "ShowInExpenseClaims", + "type": "boolean" + }, + { + "name": "_class", + "baseName": "Class", + "type": "Account.ClassEnum" + }, + { + "name": "systemAccount", + "baseName": "SystemAccount", + "type": "Account.SystemAccountEnum" + }, + { + "name": "reportingCode", + "baseName": "ReportingCode", + "type": "string" + }, + { + "name": "reportingCodeName", + "baseName": "ReportingCodeName", + "type": "string" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "addToWatchlist", + "baseName": "AddToWatchlist", + "type": "boolean" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (Account) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = Account.StatusEnum || (Account.StatusEnum = {})); + let BankAccountTypeEnum; + (function (BankAccountTypeEnum) { + BankAccountTypeEnum[BankAccountTypeEnum["BANK"] = 'BANK'] = "BANK"; + BankAccountTypeEnum[BankAccountTypeEnum["CREDITCARD"] = 'CREDITCARD'] = "CREDITCARD"; + BankAccountTypeEnum[BankAccountTypeEnum["PAYPAL"] = 'PAYPAL'] = "PAYPAL"; + BankAccountTypeEnum[BankAccountTypeEnum["NONE"] = 'NONE'] = "NONE"; + BankAccountTypeEnum[BankAccountTypeEnum["Empty"] = ''] = "Empty"; + })(BankAccountTypeEnum = Account.BankAccountTypeEnum || (Account.BankAccountTypeEnum = {})); + let ClassEnum; + (function (ClassEnum) { + ClassEnum[ClassEnum["ASSET"] = 'ASSET'] = "ASSET"; + ClassEnum[ClassEnum["EQUITY"] = 'EQUITY'] = "EQUITY"; + ClassEnum[ClassEnum["EXPENSE"] = 'EXPENSE'] = "EXPENSE"; + ClassEnum[ClassEnum["LIABILITY"] = 'LIABILITY'] = "LIABILITY"; + ClassEnum[ClassEnum["REVENUE"] = 'REVENUE'] = "REVENUE"; + })(ClassEnum = Account.ClassEnum || (Account.ClassEnum = {})); + let SystemAccountEnum; + (function (SystemAccountEnum) { + SystemAccountEnum[SystemAccountEnum["DEBTORS"] = 'DEBTORS'] = "DEBTORS"; + SystemAccountEnum[SystemAccountEnum["CREDITORS"] = 'CREDITORS'] = "CREDITORS"; + SystemAccountEnum[SystemAccountEnum["BANKCURRENCYGAIN"] = 'BANKCURRENCYGAIN'] = "BANKCURRENCYGAIN"; + SystemAccountEnum[SystemAccountEnum["GST"] = 'GST'] = "GST"; + SystemAccountEnum[SystemAccountEnum["GSTONIMPORTS"] = 'GSTONIMPORTS'] = "GSTONIMPORTS"; + SystemAccountEnum[SystemAccountEnum["HISTORICAL"] = 'HISTORICAL'] = "HISTORICAL"; + SystemAccountEnum[SystemAccountEnum["REALISEDCURRENCYGAIN"] = 'REALISEDCURRENCYGAIN'] = "REALISEDCURRENCYGAIN"; + SystemAccountEnum[SystemAccountEnum["RETAINEDEARNINGS"] = 'RETAINEDEARNINGS'] = "RETAINEDEARNINGS"; + SystemAccountEnum[SystemAccountEnum["ROUNDING"] = 'ROUNDING'] = "ROUNDING"; + SystemAccountEnum[SystemAccountEnum["TRACKINGTRANSFERS"] = 'TRACKINGTRANSFERS'] = "TRACKINGTRANSFERS"; + SystemAccountEnum[SystemAccountEnum["UNPAIDEXPCLM"] = 'UNPAIDEXPCLM'] = "UNPAIDEXPCLM"; + SystemAccountEnum[SystemAccountEnum["UNREALISEDCURRENCYGAIN"] = 'UNREALISEDCURRENCYGAIN'] = "UNREALISEDCURRENCYGAIN"; + SystemAccountEnum[SystemAccountEnum["WAGEPAYABLES"] = 'WAGEPAYABLES'] = "WAGEPAYABLES"; + SystemAccountEnum[SystemAccountEnum["Empty"] = ''] = "Empty"; + })(SystemAccountEnum = Account.SystemAccountEnum || (Account.SystemAccountEnum = {})); +})(Account = exports.Account || (exports.Account = {})); +//# sourceMappingURL=account.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/account.js.map b/dist/gen/model/accounting/account.js.map new file mode 100644 index 000000000..52eb1ea72 --- /dev/null +++ b/dist/gen/model/accounting/account.js.map @@ -0,0 +1 @@ +{"version":3,"file":"account.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/account.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/accountType.d.ts b/dist/gen/model/accounting/accountType.d.ts new file mode 100644 index 000000000..2862014d5 --- /dev/null +++ b/dist/gen/model/accounting/accountType.d.ts @@ -0,0 +1,24 @@ +export declare enum AccountType { + BANK, + CURRENT, + CURRLIAB, + DEPRECIATN, + DIRECTCOSTS, + EQUITY, + EXPENSE, + FIXED, + INVENTORY, + LIABILITY, + NONCURRENT, + OTHERINCOME, + OVERHEADS, + PREPAYMENT, + REVENUE, + SALES, + TERMLIAB, + PAYGLIABILITY, + PAYG, + SUPERANNUATIONEXPENSE, + SUPERANNUATIONLIABILITY, + WAGESEXPENSE +} diff --git a/dist/gen/model/accounting/accountType.js b/dist/gen/model/accounting/accountType.js new file mode 100644 index 000000000..17ea73f23 --- /dev/null +++ b/dist/gen/model/accounting/accountType.js @@ -0,0 +1,28 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var AccountType; +(function (AccountType) { + AccountType[AccountType["BANK"] = 'BANK'] = "BANK"; + AccountType[AccountType["CURRENT"] = 'CURRENT'] = "CURRENT"; + AccountType[AccountType["CURRLIAB"] = 'CURRLIAB'] = "CURRLIAB"; + AccountType[AccountType["DEPRECIATN"] = 'DEPRECIATN'] = "DEPRECIATN"; + AccountType[AccountType["DIRECTCOSTS"] = 'DIRECTCOSTS'] = "DIRECTCOSTS"; + AccountType[AccountType["EQUITY"] = 'EQUITY'] = "EQUITY"; + AccountType[AccountType["EXPENSE"] = 'EXPENSE'] = "EXPENSE"; + AccountType[AccountType["FIXED"] = 'FIXED'] = "FIXED"; + AccountType[AccountType["INVENTORY"] = 'INVENTORY'] = "INVENTORY"; + AccountType[AccountType["LIABILITY"] = 'LIABILITY'] = "LIABILITY"; + AccountType[AccountType["NONCURRENT"] = 'NONCURRENT'] = "NONCURRENT"; + AccountType[AccountType["OTHERINCOME"] = 'OTHERINCOME'] = "OTHERINCOME"; + AccountType[AccountType["OVERHEADS"] = 'OVERHEADS'] = "OVERHEADS"; + AccountType[AccountType["PREPAYMENT"] = 'PREPAYMENT'] = "PREPAYMENT"; + AccountType[AccountType["REVENUE"] = 'REVENUE'] = "REVENUE"; + AccountType[AccountType["SALES"] = 'SALES'] = "SALES"; + AccountType[AccountType["TERMLIAB"] = 'TERMLIAB'] = "TERMLIAB"; + AccountType[AccountType["PAYGLIABILITY"] = 'PAYGLIABILITY'] = "PAYGLIABILITY"; + AccountType[AccountType["PAYG"] = 'PAYG'] = "PAYG"; + AccountType[AccountType["SUPERANNUATIONEXPENSE"] = 'SUPERANNUATIONEXPENSE'] = "SUPERANNUATIONEXPENSE"; + AccountType[AccountType["SUPERANNUATIONLIABILITY"] = 'SUPERANNUATIONLIABILITY'] = "SUPERANNUATIONLIABILITY"; + AccountType[AccountType["WAGESEXPENSE"] = 'WAGESEXPENSE'] = "WAGESEXPENSE"; +})(AccountType = exports.AccountType || (exports.AccountType = {})); +//# sourceMappingURL=accountType.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/accountType.js.map b/dist/gen/model/accounting/accountType.js.map new file mode 100644 index 000000000..f476088ae --- /dev/null +++ b/dist/gen/model/accounting/accountType.js.map @@ -0,0 +1 @@ +{"version":3,"file":"accountType.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/accountType.ts"],"names":[],"mappings":";;AAgBA,IAAY,WAuBX;AAvBD,WAAY,WAAW;IACnB,kCAAa,MAAM,UAAA,CAAA;IACnB,qCAAgB,SAAS,aAAA,CAAA;IACzB,sCAAiB,UAAU,cAAA,CAAA;IAC3B,wCAAmB,YAAY,gBAAA,CAAA;IAC/B,yCAAoB,aAAa,iBAAA,CAAA;IACjC,oCAAe,QAAQ,YAAA,CAAA;IACvB,qCAAgB,SAAS,aAAA,CAAA;IACzB,mCAAc,OAAO,WAAA,CAAA;IACrB,uCAAkB,WAAW,eAAA,CAAA;IAC7B,uCAAkB,WAAW,eAAA,CAAA;IAC7B,wCAAmB,YAAY,gBAAA,CAAA;IAC/B,yCAAoB,aAAa,iBAAA,CAAA;IACjC,uCAAkB,WAAW,eAAA,CAAA;IAC7B,wCAAmB,YAAY,gBAAA,CAAA;IAC/B,qCAAgB,SAAS,aAAA,CAAA;IACzB,mCAAc,OAAO,WAAA,CAAA;IACrB,sCAAiB,UAAU,cAAA,CAAA;IAC3B,2CAAsB,eAAe,mBAAA,CAAA;IACrC,kCAAa,MAAM,UAAA,CAAA;IACnB,mDAA8B,uBAAuB,2BAAA,CAAA;IACrD,qDAAgC,yBAAyB,6BAAA,CAAA;IACzD,0CAAqB,cAAc,kBAAA,CAAA;AACvC,CAAC,EAvBW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAuBtB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/accounts.d.ts b/dist/gen/model/accounting/accounts.d.ts new file mode 100644 index 000000000..d21599989 --- /dev/null +++ b/dist/gen/model/accounting/accounts.d.ts @@ -0,0 +1,15 @@ +import { Account } from './account'; +export declare class Accounts { + 'accounts'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/accounts.js b/dist/gen/model/accounting/accounts.js new file mode 100644 index 000000000..80329595c --- /dev/null +++ b/dist/gen/model/accounting/accounts.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Accounts { + static getAttributeTypeMap() { + return Accounts.attributeTypeMap; + } +} +exports.Accounts = Accounts; +Accounts.discriminator = undefined; +Accounts.attributeTypeMap = [ + { + "name": "accounts", + "baseName": "Accounts", + "type": "Array" + } +]; +//# sourceMappingURL=accounts.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/accounts.js.map b/dist/gen/model/accounting/accounts.js.map new file mode 100644 index 000000000..a16bf621b --- /dev/null +++ b/dist/gen/model/accounting/accounts.js.map @@ -0,0 +1 @@ +{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/accounts.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/accountsPayable.d.ts b/dist/gen/model/accounting/accountsPayable.d.ts new file mode 100644 index 000000000..23705abcf --- /dev/null +++ b/dist/gen/model/accounting/accountsPayable.d.ts @@ -0,0 +1,15 @@ +export declare class AccountsPayable { + 'outstanding'?: number; + 'overdue'?: number; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/accountsPayable.js b/dist/gen/model/accounting/accountsPayable.js new file mode 100644 index 000000000..930562c63 --- /dev/null +++ b/dist/gen/model/accounting/accountsPayable.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class AccountsPayable { + static getAttributeTypeMap() { + return AccountsPayable.attributeTypeMap; + } +} +exports.AccountsPayable = AccountsPayable; +AccountsPayable.discriminator = undefined; +AccountsPayable.attributeTypeMap = [ + { + "name": "outstanding", + "baseName": "Outstanding", + "type": "number" + }, + { + "name": "overdue", + "baseName": "Overdue", + "type": "number" + } +]; +//# sourceMappingURL=accountsPayable.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/accountsPayable.js.map b/dist/gen/model/accounting/accountsPayable.js.map new file mode 100644 index 000000000..6b8d8c6f9 --- /dev/null +++ b/dist/gen/model/accounting/accountsPayable.js.map @@ -0,0 +1 @@ +{"version":3,"file":"accountsPayable.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/accountsPayable.ts"],"names":[],"mappings":";;AAaA,MAAa,eAAe;IAkBxB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AApBL,0CAqBC;AAjBU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/accountsReceivable.d.ts b/dist/gen/model/accounting/accountsReceivable.d.ts new file mode 100644 index 000000000..58b62bf48 --- /dev/null +++ b/dist/gen/model/accounting/accountsReceivable.d.ts @@ -0,0 +1,15 @@ +export declare class AccountsReceivable { + 'outstanding'?: number; + 'overdue'?: number; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/accountsReceivable.js b/dist/gen/model/accounting/accountsReceivable.js new file mode 100644 index 000000000..883a60b8f --- /dev/null +++ b/dist/gen/model/accounting/accountsReceivable.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class AccountsReceivable { + static getAttributeTypeMap() { + return AccountsReceivable.attributeTypeMap; + } +} +exports.AccountsReceivable = AccountsReceivable; +AccountsReceivable.discriminator = undefined; +AccountsReceivable.attributeTypeMap = [ + { + "name": "outstanding", + "baseName": "Outstanding", + "type": "number" + }, + { + "name": "overdue", + "baseName": "Overdue", + "type": "number" + } +]; +//# sourceMappingURL=accountsReceivable.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/accountsReceivable.js.map b/dist/gen/model/accounting/accountsReceivable.js.map new file mode 100644 index 000000000..3d1cc518b --- /dev/null +++ b/dist/gen/model/accounting/accountsReceivable.js.map @@ -0,0 +1 @@ +{"version":3,"file":"accountsReceivable.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/accountsReceivable.ts"],"names":[],"mappings":";;AAaA,MAAa,kBAAkB;IAkB3B,MAAM,CAAC,mBAAmB;QACtB,OAAO,kBAAkB,CAAC,gBAAgB,CAAC;IAC/C,CAAC;;AApBL,gDAqBC;AAjBU,gCAAa,GAAuB,SAAS,CAAC;AAE9C,mCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/address.d.ts b/dist/gen/model/accounting/address.d.ts new file mode 100644 index 000000000..cd3150727 --- /dev/null +++ b/dist/gen/model/accounting/address.d.ts @@ -0,0 +1,30 @@ +export declare class Address { + 'addressType'?: Address.AddressTypeEnum; + 'addressLine1'?: string; + 'addressLine2'?: string; + 'addressLine3'?: string; + 'addressLine4'?: string; + 'city'?: string; + 'region'?: string; + 'postalCode'?: string; + 'country'?: string; + 'attentionTo'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Address { + enum AddressTypeEnum { + POBOX, + STREET, + DELIVERY + } +} diff --git a/dist/gen/model/accounting/address.js b/dist/gen/model/accounting/address.js new file mode 100644 index 000000000..f30e44b2f --- /dev/null +++ b/dist/gen/model/accounting/address.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Address { + static getAttributeTypeMap() { + return Address.attributeTypeMap; + } +} +exports.Address = Address; +Address.discriminator = undefined; +Address.attributeTypeMap = [ + { + "name": "addressType", + "baseName": "AddressType", + "type": "Address.AddressTypeEnum" + }, + { + "name": "addressLine1", + "baseName": "AddressLine1", + "type": "string" + }, + { + "name": "addressLine2", + "baseName": "AddressLine2", + "type": "string" + }, + { + "name": "addressLine3", + "baseName": "AddressLine3", + "type": "string" + }, + { + "name": "addressLine4", + "baseName": "AddressLine4", + "type": "string" + }, + { + "name": "city", + "baseName": "City", + "type": "string" + }, + { + "name": "region", + "baseName": "Region", + "type": "string" + }, + { + "name": "postalCode", + "baseName": "PostalCode", + "type": "string" + }, + { + "name": "country", + "baseName": "Country", + "type": "string" + }, + { + "name": "attentionTo", + "baseName": "AttentionTo", + "type": "string" + } +]; +(function (Address) { + let AddressTypeEnum; + (function (AddressTypeEnum) { + AddressTypeEnum[AddressTypeEnum["POBOX"] = 'POBOX'] = "POBOX"; + AddressTypeEnum[AddressTypeEnum["STREET"] = 'STREET'] = "STREET"; + AddressTypeEnum[AddressTypeEnum["DELIVERY"] = 'DELIVERY'] = "DELIVERY"; + })(AddressTypeEnum = Address.AddressTypeEnum || (Address.AddressTypeEnum = {})); +})(Address = exports.Address || (exports.Address = {})); +//# sourceMappingURL=address.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/address.js.map b/dist/gen/model/accounting/address.js.map new file mode 100644 index 000000000..bc24a1f5b --- /dev/null +++ b/dist/gen/model/accounting/address.js.map @@ -0,0 +1 @@ +{"version":3,"file":"address.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/address.ts"],"names":[],"mappings":";;AAaA,MAAa,OAAO;IAgGhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AAlGL,0BAmGC;AAzDU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,OAAO;IACpB,IAAY,eAIX;IAJD,WAAY,eAAe;QACvB,2CAAc,OAAO,WAAA,CAAA;QACrB,4CAAe,QAAQ,YAAA,CAAA;QACvB,8CAAiB,UAAU,cAAA,CAAA;IAC/B,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B;AACL,CAAC,EANgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAMvB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/allocation.d.ts b/dist/gen/model/accounting/allocation.d.ts new file mode 100644 index 000000000..9a6deab5d --- /dev/null +++ b/dist/gen/model/accounting/allocation.d.ts @@ -0,0 +1,17 @@ +import { Invoice } from './invoice'; +export declare class Allocation { + 'invoice': Invoice; + 'amount': number; + 'date': string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/allocation.js b/dist/gen/model/accounting/allocation.js new file mode 100644 index 000000000..ea86e57ac --- /dev/null +++ b/dist/gen/model/accounting/allocation.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Allocation { + static getAttributeTypeMap() { + return Allocation.attributeTypeMap; + } +} +exports.Allocation = Allocation; +Allocation.discriminator = undefined; +Allocation.attributeTypeMap = [ + { + "name": "invoice", + "baseName": "Invoice", + "type": "Invoice" + }, + { + "name": "amount", + "baseName": "Amount", + "type": "number" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + } +]; +//# sourceMappingURL=allocation.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/allocation.js.map b/dist/gen/model/accounting/allocation.js.map new file mode 100644 index 000000000..853bf7282 --- /dev/null +++ b/dist/gen/model/accounting/allocation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"allocation.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/allocation.ts"],"names":[],"mappings":";;AAcA,MAAa,UAAU;IA8BnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AAhCL,gCAiCC;AAtBU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/allocations.d.ts b/dist/gen/model/accounting/allocations.d.ts new file mode 100644 index 000000000..8bfd311a8 --- /dev/null +++ b/dist/gen/model/accounting/allocations.d.ts @@ -0,0 +1,15 @@ +import { Allocation } from './allocation'; +export declare class Allocations { + 'allocations'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/allocations.js b/dist/gen/model/accounting/allocations.js new file mode 100644 index 000000000..ffe436b54 --- /dev/null +++ b/dist/gen/model/accounting/allocations.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Allocations { + static getAttributeTypeMap() { + return Allocations.attributeTypeMap; + } +} +exports.Allocations = Allocations; +Allocations.discriminator = undefined; +Allocations.attributeTypeMap = [ + { + "name": "allocations", + "baseName": "Allocations", + "type": "Array" + } +]; +//# sourceMappingURL=allocations.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/allocations.js.map b/dist/gen/model/accounting/allocations.js.map new file mode 100644 index 000000000..88d2790e3 --- /dev/null +++ b/dist/gen/model/accounting/allocations.js.map @@ -0,0 +1 @@ +{"version":3,"file":"allocations.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/allocations.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAYpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAdL,kCAeC;AAZU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/attachment.d.ts b/dist/gen/model/accounting/attachment.d.ts new file mode 100644 index 000000000..7ba0ed106 --- /dev/null +++ b/dist/gen/model/accounting/attachment.d.ts @@ -0,0 +1,19 @@ +export declare class Attachment { + 'attachmentID'?: string; + 'fileName'?: string; + 'url'?: string; + 'mimeType'?: string; + 'contentLength'?: number; + 'includeOnline'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/attachment.js b/dist/gen/model/accounting/attachment.js new file mode 100644 index 000000000..853517498 --- /dev/null +++ b/dist/gen/model/accounting/attachment.js @@ -0,0 +1,42 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Attachment { + static getAttributeTypeMap() { + return Attachment.attributeTypeMap; + } +} +exports.Attachment = Attachment; +Attachment.discriminator = undefined; +Attachment.attributeTypeMap = [ + { + "name": "attachmentID", + "baseName": "AttachmentID", + "type": "string" + }, + { + "name": "fileName", + "baseName": "FileName", + "type": "string" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "mimeType", + "baseName": "MimeType", + "type": "string" + }, + { + "name": "contentLength", + "baseName": "ContentLength", + "type": "number" + }, + { + "name": "includeOnline", + "baseName": "IncludeOnline", + "type": "boolean" + } +]; +//# sourceMappingURL=attachment.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/attachment.js.map b/dist/gen/model/accounting/attachment.js.map new file mode 100644 index 000000000..653c69c6c --- /dev/null +++ b/dist/gen/model/accounting/attachment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/attachment.ts"],"names":[],"mappings":";;AAaA,MAAa,UAAU;IA4DnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AA9DL,gCA+DC;AArCU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,SAAS;KACpB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/attachments.d.ts b/dist/gen/model/accounting/attachments.d.ts new file mode 100644 index 000000000..79c54f8d6 --- /dev/null +++ b/dist/gen/model/accounting/attachments.d.ts @@ -0,0 +1,15 @@ +import { Attachment } from './attachment'; +export declare class Attachments { + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/attachments.js b/dist/gen/model/accounting/attachments.js new file mode 100644 index 000000000..4e608469e --- /dev/null +++ b/dist/gen/model/accounting/attachments.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Attachments { + static getAttributeTypeMap() { + return Attachments.attributeTypeMap; + } +} +exports.Attachments = Attachments; +Attachments.discriminator = undefined; +Attachments.attributeTypeMap = [ + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +//# sourceMappingURL=attachments.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/attachments.js.map b/dist/gen/model/accounting/attachments.js.map new file mode 100644 index 000000000..90c5ea0fa --- /dev/null +++ b/dist/gen/model/accounting/attachments.js.map @@ -0,0 +1 @@ +{"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/attachments.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAYpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAdL,kCAeC;AAZU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/balances.d.ts b/dist/gen/model/accounting/balances.d.ts new file mode 100644 index 000000000..5510c2851 --- /dev/null +++ b/dist/gen/model/accounting/balances.d.ts @@ -0,0 +1,17 @@ +import { AccountsPayable } from './accountsPayable'; +import { AccountsReceivable } from './accountsReceivable'; +export declare class Balances { + 'accountsReceivable'?: AccountsReceivable; + 'accountsPayable'?: AccountsPayable; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/balances.js b/dist/gen/model/accounting/balances.js new file mode 100644 index 000000000..045dca646 --- /dev/null +++ b/dist/gen/model/accounting/balances.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Balances { + static getAttributeTypeMap() { + return Balances.attributeTypeMap; + } +} +exports.Balances = Balances; +Balances.discriminator = undefined; +Balances.attributeTypeMap = [ + { + "name": "accountsReceivable", + "baseName": "AccountsReceivable", + "type": "AccountsReceivable" + }, + { + "name": "accountsPayable", + "baseName": "AccountsPayable", + "type": "AccountsPayable" + } +]; +//# sourceMappingURL=balances.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/balances.js.map b/dist/gen/model/accounting/balances.js.map new file mode 100644 index 000000000..09fe501a6 --- /dev/null +++ b/dist/gen/model/accounting/balances.js.map @@ -0,0 +1 @@ +{"version":3,"file":"balances.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/balances.ts"],"names":[],"mappings":";;AAkBA,MAAa,QAAQ;IAkBjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AApBL,4BAqBC;AAjBU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,oBAAoB;KAC/B;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransaction.d.ts b/dist/gen/model/accounting/bankTransaction.d.ts new file mode 100644 index 000000000..e88aa0616 --- /dev/null +++ b/dist/gen/model/accounting/bankTransaction.d.ts @@ -0,0 +1,58 @@ +import { Account } from './account'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { ValidationError } from './validationError'; +export declare class BankTransaction { + 'type': BankTransaction.TypeEnum; + 'contact': Contact; + 'lineItems': Array; + 'bankAccount': Account; + 'isReconciled'?: boolean; + 'date'?: string; + 'reference'?: string; + 'currencyCode'?: CurrencyCode; + 'currencyRate'?: number; + 'url'?: string; + 'status'?: BankTransaction.StatusEnum; + 'lineAmountTypes'?: LineAmountTypes; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'bankTransactionID'?: string; + 'prepaymentID'?: string; + 'overpaymentID'?: string; + 'updatedDateUTC'?: Date; + 'hasAttachments'?: boolean; + 'statusAttributeString'?: string; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace BankTransaction { + enum TypeEnum { + RECEIVE, + RECEIVEOVERPAYMENT, + RECEIVEPREPAYMENT, + SPEND, + SPENDOVERPAYMENT, + SPENDPREPAYMENT, + RECEIVETRANSFER, + SPENDTRANSFER + } + enum StatusEnum { + AUTHORISED, + DELETED, + VOIDED + } +} diff --git a/dist/gen/model/accounting/bankTransaction.js b/dist/gen/model/accounting/bankTransaction.js new file mode 100644 index 000000000..1b86e293b --- /dev/null +++ b/dist/gen/model/accounting/bankTransaction.js @@ -0,0 +1,141 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BankTransaction { + static getAttributeTypeMap() { + return BankTransaction.attributeTypeMap; + } +} +exports.BankTransaction = BankTransaction; +BankTransaction.discriminator = undefined; +BankTransaction.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "BankTransaction.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "bankAccount", + "baseName": "BankAccount", + "type": "Account" + }, + { + "name": "isReconciled", + "baseName": "IsReconciled", + "type": "boolean" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "BankTransaction.StatusEnum" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "bankTransactionID", + "baseName": "BankTransactionID", + "type": "string" + }, + { + "name": "prepaymentID", + "baseName": "PrepaymentID", + "type": "string" + }, + { + "name": "overpaymentID", + "baseName": "OverpaymentID", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "statusAttributeString", + "baseName": "StatusAttributeString", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (BankTransaction) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["RECEIVE"] = 'RECEIVE'] = "RECEIVE"; + TypeEnum[TypeEnum["RECEIVEOVERPAYMENT"] = 'RECEIVE-OVERPAYMENT'] = "RECEIVEOVERPAYMENT"; + TypeEnum[TypeEnum["RECEIVEPREPAYMENT"] = 'RECEIVE-PREPAYMENT'] = "RECEIVEPREPAYMENT"; + TypeEnum[TypeEnum["SPEND"] = 'SPEND'] = "SPEND"; + TypeEnum[TypeEnum["SPENDOVERPAYMENT"] = 'SPEND-OVERPAYMENT'] = "SPENDOVERPAYMENT"; + TypeEnum[TypeEnum["SPENDPREPAYMENT"] = 'SPEND-PREPAYMENT'] = "SPENDPREPAYMENT"; + TypeEnum[TypeEnum["RECEIVETRANSFER"] = 'RECEIVE-TRANSFER'] = "RECEIVETRANSFER"; + TypeEnum[TypeEnum["SPENDTRANSFER"] = 'SPEND-TRANSFER'] = "SPENDTRANSFER"; + })(TypeEnum = BankTransaction.TypeEnum || (BankTransaction.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = BankTransaction.StatusEnum || (BankTransaction.StatusEnum = {})); +})(BankTransaction = exports.BankTransaction || (exports.BankTransaction = {})); +//# sourceMappingURL=bankTransaction.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransaction.js.map b/dist/gen/model/accounting/bankTransaction.js.map new file mode 100644 index 000000000..cd2c9951c --- /dev/null +++ b/dist/gen/model/accounting/bankTransaction.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bankTransaction.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/bankTransaction.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransactions.d.ts b/dist/gen/model/accounting/bankTransactions.d.ts new file mode 100644 index 000000000..21d8ae26b --- /dev/null +++ b/dist/gen/model/accounting/bankTransactions.d.ts @@ -0,0 +1,15 @@ +import { BankTransaction } from './bankTransaction'; +export declare class BankTransactions { + 'bankTransactions'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/bankTransactions.js b/dist/gen/model/accounting/bankTransactions.js new file mode 100644 index 000000000..9d43c56a4 --- /dev/null +++ b/dist/gen/model/accounting/bankTransactions.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BankTransactions { + static getAttributeTypeMap() { + return BankTransactions.attributeTypeMap; + } +} +exports.BankTransactions = BankTransactions; +BankTransactions.discriminator = undefined; +BankTransactions.attributeTypeMap = [ + { + "name": "bankTransactions", + "baseName": "BankTransactions", + "type": "Array" + } +]; +//# sourceMappingURL=bankTransactions.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransactions.js.map b/dist/gen/model/accounting/bankTransactions.js.map new file mode 100644 index 000000000..6399da51c --- /dev/null +++ b/dist/gen/model/accounting/bankTransactions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bankTransactions.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/bankTransactions.ts"],"names":[],"mappings":";;AAcA,MAAa,gBAAgB;IAYzB,MAAM,CAAC,mBAAmB;QACtB,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;;AAdL,4CAeC;AAZU,8BAAa,GAAuB,SAAS,CAAC;AAE9C,iCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransfer.d.ts b/dist/gen/model/accounting/bankTransfer.d.ts new file mode 100644 index 000000000..0b4f2c946 --- /dev/null +++ b/dist/gen/model/accounting/bankTransfer.d.ts @@ -0,0 +1,26 @@ +import { Account } from './account'; +import { ValidationError } from './validationError'; +export declare class BankTransfer { + 'fromBankAccount': Account; + 'toBankAccount': Account; + 'amount': string; + 'date'?: string; + 'bankTransferID'?: string; + 'currencyRate'?: number; + 'fromBankTransactionID'?: string; + 'toBankTransactionID'?: string; + 'hasAttachments'?: boolean; + 'createdDateUTC'?: Date; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/bankTransfer.js b/dist/gen/model/accounting/bankTransfer.js new file mode 100644 index 000000000..3fda82abc --- /dev/null +++ b/dist/gen/model/accounting/bankTransfer.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BankTransfer { + static getAttributeTypeMap() { + return BankTransfer.attributeTypeMap; + } +} +exports.BankTransfer = BankTransfer; +BankTransfer.discriminator = undefined; +BankTransfer.attributeTypeMap = [ + { + "name": "fromBankAccount", + "baseName": "FromBankAccount", + "type": "Account" + }, + { + "name": "toBankAccount", + "baseName": "ToBankAccount", + "type": "Account" + }, + { + "name": "amount", + "baseName": "Amount", + "type": "string" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "bankTransferID", + "baseName": "BankTransferID", + "type": "string" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "fromBankTransactionID", + "baseName": "FromBankTransactionID", + "type": "string" + }, + { + "name": "toBankTransactionID", + "baseName": "ToBankTransactionID", + "type": "string" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "createdDateUTC", + "baseName": "CreatedDateUTC", + "type": "Date" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +//# sourceMappingURL=bankTransfer.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransfer.js.map b/dist/gen/model/accounting/bankTransfer.js.map new file mode 100644 index 000000000..c96f07289 --- /dev/null +++ b/dist/gen/model/accounting/bankTransfer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bankTransfer.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/bankTransfer.ts"],"names":[],"mappings":";;AAeA,MAAa,YAAY;IAmGrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AArGL,oCAsGC;AA9DU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,uBAAuB;QACnC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransfers.d.ts b/dist/gen/model/accounting/bankTransfers.d.ts new file mode 100644 index 000000000..7aac0ef2f --- /dev/null +++ b/dist/gen/model/accounting/bankTransfers.d.ts @@ -0,0 +1,15 @@ +import { BankTransfer } from './bankTransfer'; +export declare class BankTransfers { + 'bankTransfers'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/bankTransfers.js b/dist/gen/model/accounting/bankTransfers.js new file mode 100644 index 000000000..f9d9879ce --- /dev/null +++ b/dist/gen/model/accounting/bankTransfers.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BankTransfers { + static getAttributeTypeMap() { + return BankTransfers.attributeTypeMap; + } +} +exports.BankTransfers = BankTransfers; +BankTransfers.discriminator = undefined; +BankTransfers.attributeTypeMap = [ + { + "name": "bankTransfers", + "baseName": "BankTransfers", + "type": "Array" + } +]; +//# sourceMappingURL=bankTransfers.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/bankTransfers.js.map b/dist/gen/model/accounting/bankTransfers.js.map new file mode 100644 index 000000000..fabbb47ba --- /dev/null +++ b/dist/gen/model/accounting/bankTransfers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bankTransfers.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/bankTransfers.ts"],"names":[],"mappings":";;AAcA,MAAa,aAAa;IAYtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAdL,sCAeC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPayment.d.ts b/dist/gen/model/accounting/batchPayment.d.ts new file mode 100644 index 000000000..0d1f7118a --- /dev/null +++ b/dist/gen/model/accounting/batchPayment.d.ts @@ -0,0 +1,37 @@ +import { Account } from './account'; +import { Payment } from './payment'; +export declare class BatchPayment { + 'account'?: Account; + 'reference'?: string; + 'particulars'?: string; + 'code'?: string; + 'details'?: string; + 'narrative'?: string; + 'batchPaymentID'?: string; + 'dateString'?: string; + 'date'?: string; + 'amount'?: number; + 'payments'?: Array; + 'type'?: BatchPayment.TypeEnum; + 'status'?: string; + 'totalAmount'?: string; + 'updatedDateUTC'?: Date; + 'isReconciled'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace BatchPayment { + enum TypeEnum { + PAYBATCH, + RECBATCH + } +} diff --git a/dist/gen/model/accounting/batchPayment.js b/dist/gen/model/accounting/batchPayment.js new file mode 100644 index 000000000..255800cd2 --- /dev/null +++ b/dist/gen/model/accounting/batchPayment.js @@ -0,0 +1,99 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BatchPayment { + static getAttributeTypeMap() { + return BatchPayment.attributeTypeMap; + } +} +exports.BatchPayment = BatchPayment; +BatchPayment.discriminator = undefined; +BatchPayment.attributeTypeMap = [ + { + "name": "account", + "baseName": "Account", + "type": "Account" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "particulars", + "baseName": "Particulars", + "type": "string" + }, + { + "name": "code", + "baseName": "Code", + "type": "string" + }, + { + "name": "details", + "baseName": "Details", + "type": "string" + }, + { + "name": "narrative", + "baseName": "Narrative", + "type": "string" + }, + { + "name": "batchPaymentID", + "baseName": "BatchPaymentID", + "type": "string" + }, + { + "name": "dateString", + "baseName": "DateString", + "type": "string" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "amount", + "baseName": "Amount", + "type": "number" + }, + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + }, + { + "name": "type", + "baseName": "Type", + "type": "BatchPayment.TypeEnum" + }, + { + "name": "status", + "baseName": "Status", + "type": "string" + }, + { + "name": "totalAmount", + "baseName": "TotalAmount", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "isReconciled", + "baseName": "IsReconciled", + "type": "string" + } +]; +(function (BatchPayment) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["PAYBATCH"] = 'PAYBATCH'] = "PAYBATCH"; + TypeEnum[TypeEnum["RECBATCH"] = 'RECBATCH'] = "RECBATCH"; + })(TypeEnum = BatchPayment.TypeEnum || (BatchPayment.TypeEnum = {})); +})(BatchPayment = exports.BatchPayment || (exports.BatchPayment = {})); +//# sourceMappingURL=batchPayment.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPayment.js.map b/dist/gen/model/accounting/batchPayment.js.map new file mode 100644 index 000000000..e535a1f55 --- /dev/null +++ b/dist/gen/model/accounting/batchPayment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"batchPayment.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/batchPayment.ts"],"names":[],"mappings":";;AAeA,MAAa,YAAY;IAgJrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AAlJL,oCAmJC;AAvFU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,uBAAuB;KAClC;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,YAAY;IACzB,IAAY,QAGX;IAHD,WAAY,QAAQ;QAChB,gCAAiB,UAAU,cAAA,CAAA;QAC3B,gCAAiB,UAAU,cAAA,CAAA;IAC/B,CAAC,EAHW,QAAQ,GAAR,qBAAQ,KAAR,qBAAQ,QAGnB;AACL,CAAC,EALgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAK5B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPaymentDetails.d.ts b/dist/gen/model/accounting/batchPaymentDetails.d.ts new file mode 100644 index 000000000..56ad896de --- /dev/null +++ b/dist/gen/model/accounting/batchPaymentDetails.d.ts @@ -0,0 +1,18 @@ +export declare class BatchPaymentDetails { + 'bankAccountNumber'?: string; + 'bankAccountName'?: string; + 'details'?: string; + 'code'?: string; + 'reference'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/batchPaymentDetails.js b/dist/gen/model/accounting/batchPaymentDetails.js new file mode 100644 index 000000000..27f54e907 --- /dev/null +++ b/dist/gen/model/accounting/batchPaymentDetails.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BatchPaymentDetails { + static getAttributeTypeMap() { + return BatchPaymentDetails.attributeTypeMap; + } +} +exports.BatchPaymentDetails = BatchPaymentDetails; +BatchPaymentDetails.discriminator = undefined; +BatchPaymentDetails.attributeTypeMap = [ + { + "name": "bankAccountNumber", + "baseName": "BankAccountNumber", + "type": "string" + }, + { + "name": "bankAccountName", + "baseName": "BankAccountName", + "type": "string" + }, + { + "name": "details", + "baseName": "Details", + "type": "string" + }, + { + "name": "code", + "baseName": "Code", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + } +]; +//# sourceMappingURL=batchPaymentDetails.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPaymentDetails.js.map b/dist/gen/model/accounting/batchPaymentDetails.js.map new file mode 100644 index 000000000..25bf31b39 --- /dev/null +++ b/dist/gen/model/accounting/batchPaymentDetails.js.map @@ -0,0 +1 @@ +{"version":3,"file":"batchPaymentDetails.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/batchPaymentDetails.ts"],"names":[],"mappings":";;AAgBA,MAAa,mBAAmB;IAmD5B,MAAM,CAAC,mBAAmB;QACtB,OAAO,mBAAmB,CAAC,gBAAgB,CAAC;IAChD,CAAC;;AArDL,kDAsDC;AAhCU,iCAAa,GAAuB,SAAS,CAAC;AAE9C,oCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPayments.d.ts b/dist/gen/model/accounting/batchPayments.d.ts new file mode 100644 index 000000000..4539a11f3 --- /dev/null +++ b/dist/gen/model/accounting/batchPayments.d.ts @@ -0,0 +1,15 @@ +import { BatchPayment } from './batchPayment'; +export declare class BatchPayments { + 'batchPayments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/batchPayments.js b/dist/gen/model/accounting/batchPayments.js new file mode 100644 index 000000000..aaf092bf5 --- /dev/null +++ b/dist/gen/model/accounting/batchPayments.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BatchPayments { + static getAttributeTypeMap() { + return BatchPayments.attributeTypeMap; + } +} +exports.BatchPayments = BatchPayments; +BatchPayments.discriminator = undefined; +BatchPayments.attributeTypeMap = [ + { + "name": "batchPayments", + "baseName": "BatchPayments", + "type": "Array" + } +]; +//# sourceMappingURL=batchPayments.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/batchPayments.js.map b/dist/gen/model/accounting/batchPayments.js.map new file mode 100644 index 000000000..ed0dd6842 --- /dev/null +++ b/dist/gen/model/accounting/batchPayments.js.map @@ -0,0 +1 @@ +{"version":3,"file":"batchPayments.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/batchPayments.ts"],"names":[],"mappings":";;AAcA,MAAa,aAAa;IAYtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAdL,sCAeC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/bill.d.ts b/dist/gen/model/accounting/bill.d.ts new file mode 100644 index 000000000..a4b61df3f --- /dev/null +++ b/dist/gen/model/accounting/bill.d.ts @@ -0,0 +1,16 @@ +import { PaymentTermType } from './paymentTermType'; +export declare class Bill { + 'day'?: number; + 'type'?: PaymentTermType; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/bill.js b/dist/gen/model/accounting/bill.js new file mode 100644 index 000000000..b12606e30 --- /dev/null +++ b/dist/gen/model/accounting/bill.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Bill { + static getAttributeTypeMap() { + return Bill.attributeTypeMap; + } +} +exports.Bill = Bill; +Bill.discriminator = undefined; +Bill.attributeTypeMap = [ + { + "name": "day", + "baseName": "Day", + "type": "number" + }, + { + "name": "type", + "baseName": "Type", + "type": "PaymentTermType" + } +]; +//# sourceMappingURL=bill.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/bill.js.map b/dist/gen/model/accounting/bill.js.map new file mode 100644 index 000000000..203cf068f --- /dev/null +++ b/dist/gen/model/accounting/bill.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bill.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/bill.ts"],"names":[],"mappings":";;AAcA,MAAa,IAAI;IAqBb,MAAM,CAAC,mBAAmB;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;;AAvBL,oBAwBC;AAjBU,kBAAa,GAAuB,SAAS,CAAC;AAE9C,qBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,iBAAiB;KAC5B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/brandingTheme.d.ts b/dist/gen/model/accounting/brandingTheme.d.ts new file mode 100644 index 000000000..b04a97736 --- /dev/null +++ b/dist/gen/model/accounting/brandingTheme.d.ts @@ -0,0 +1,24 @@ +export declare class BrandingTheme { + 'brandingThemeID'?: string; + 'name'?: string; + 'logoUrl'?: string; + 'type'?: BrandingTheme.TypeEnum; + 'sortOrder'?: number; + 'createdDateUTC'?: Date; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace BrandingTheme { + enum TypeEnum { + INVOICE + } +} diff --git a/dist/gen/model/accounting/brandingTheme.js b/dist/gen/model/accounting/brandingTheme.js new file mode 100644 index 000000000..2936c4d56 --- /dev/null +++ b/dist/gen/model/accounting/brandingTheme.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BrandingTheme { + static getAttributeTypeMap() { + return BrandingTheme.attributeTypeMap; + } +} +exports.BrandingTheme = BrandingTheme; +BrandingTheme.discriminator = undefined; +BrandingTheme.attributeTypeMap = [ + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "logoUrl", + "baseName": "LogoUrl", + "type": "string" + }, + { + "name": "type", + "baseName": "Type", + "type": "BrandingTheme.TypeEnum" + }, + { + "name": "sortOrder", + "baseName": "SortOrder", + "type": "number" + }, + { + "name": "createdDateUTC", + "baseName": "CreatedDateUTC", + "type": "Date" + } +]; +(function (BrandingTheme) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["INVOICE"] = 'INVOICE'] = "INVOICE"; + })(TypeEnum = BrandingTheme.TypeEnum || (BrandingTheme.TypeEnum = {})); +})(BrandingTheme = exports.BrandingTheme || (exports.BrandingTheme = {})); +//# sourceMappingURL=brandingTheme.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/brandingTheme.js.map b/dist/gen/model/accounting/brandingTheme.js.map new file mode 100644 index 000000000..141c12f88 --- /dev/null +++ b/dist/gen/model/accounting/brandingTheme.js.map @@ -0,0 +1 @@ +{"version":3,"file":"brandingTheme.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/brandingTheme.ts"],"names":[],"mappings":";;AAaA,MAAa,aAAa;IA4DtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AA9DL,sCA+DC;AArCU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;CAAK,CAAC;AAOf,WAAiB,aAAa;IAC1B,IAAY,QAEX;IAFD,WAAY,QAAQ;QAChB,+BAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAFW,QAAQ,GAAR,sBAAQ,KAAR,sBAAQ,QAEnB;AACL,CAAC,EAJgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAI7B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/brandingThemes.d.ts b/dist/gen/model/accounting/brandingThemes.d.ts new file mode 100644 index 000000000..f9d3718b5 --- /dev/null +++ b/dist/gen/model/accounting/brandingThemes.d.ts @@ -0,0 +1,15 @@ +import { BrandingTheme } from './brandingTheme'; +export declare class BrandingThemes { + 'brandingThemes'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/brandingThemes.js b/dist/gen/model/accounting/brandingThemes.js new file mode 100644 index 000000000..22fa343a1 --- /dev/null +++ b/dist/gen/model/accounting/brandingThemes.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class BrandingThemes { + static getAttributeTypeMap() { + return BrandingThemes.attributeTypeMap; + } +} +exports.BrandingThemes = BrandingThemes; +BrandingThemes.discriminator = undefined; +BrandingThemes.attributeTypeMap = [ + { + "name": "brandingThemes", + "baseName": "BrandingThemes", + "type": "Array" + } +]; +//# sourceMappingURL=brandingThemes.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/brandingThemes.js.map b/dist/gen/model/accounting/brandingThemes.js.map new file mode 100644 index 000000000..d322a2974 --- /dev/null +++ b/dist/gen/model/accounting/brandingThemes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"brandingThemes.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/brandingThemes.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/cISOrgSetting.d.ts b/dist/gen/model/accounting/cISOrgSetting.d.ts new file mode 100644 index 000000000..253c5dcb7 --- /dev/null +++ b/dist/gen/model/accounting/cISOrgSetting.d.ts @@ -0,0 +1,16 @@ +export declare class CISOrgSetting { + 'cISContractorEnabled'?: boolean; + 'cISSubContractorEnabled'?: boolean; + 'rate'?: number; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/cISOrgSetting.js b/dist/gen/model/accounting/cISOrgSetting.js new file mode 100644 index 000000000..e8265de86 --- /dev/null +++ b/dist/gen/model/accounting/cISOrgSetting.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class CISOrgSetting { + static getAttributeTypeMap() { + return CISOrgSetting.attributeTypeMap; + } +} +exports.CISOrgSetting = CISOrgSetting; +CISOrgSetting.discriminator = undefined; +CISOrgSetting.attributeTypeMap = [ + { + "name": "cISContractorEnabled", + "baseName": "CISContractorEnabled", + "type": "boolean" + }, + { + "name": "cISSubContractorEnabled", + "baseName": "CISSubContractorEnabled", + "type": "boolean" + }, + { + "name": "rate", + "baseName": "Rate", + "type": "number" + } +]; +//# sourceMappingURL=cISOrgSetting.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/cISOrgSetting.js.map b/dist/gen/model/accounting/cISOrgSetting.js.map new file mode 100644 index 000000000..31ade4c8b --- /dev/null +++ b/dist/gen/model/accounting/cISOrgSetting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cISOrgSetting.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/cISOrgSetting.ts"],"names":[],"mappings":";;AAaA,MAAa,aAAa;IAiCtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAnCL,sCAoCC;AAtBU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,sBAAsB;QAC9B,UAAU,EAAE,sBAAsB;QAClC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,yBAAyB;QACjC,UAAU,EAAE,yBAAyB;QACrC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/cISSetting.d.ts b/dist/gen/model/accounting/cISSetting.d.ts new file mode 100644 index 000000000..87c4c3df7 --- /dev/null +++ b/dist/gen/model/accounting/cISSetting.d.ts @@ -0,0 +1,15 @@ +export declare class CISSetting { + 'cISEnabled'?: boolean; + 'rate'?: number; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/cISSetting.js b/dist/gen/model/accounting/cISSetting.js new file mode 100644 index 000000000..9ad76a8d7 --- /dev/null +++ b/dist/gen/model/accounting/cISSetting.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class CISSetting { + static getAttributeTypeMap() { + return CISSetting.attributeTypeMap; + } +} +exports.CISSetting = CISSetting; +CISSetting.discriminator = undefined; +CISSetting.attributeTypeMap = [ + { + "name": "cISEnabled", + "baseName": "CISEnabled", + "type": "boolean" + }, + { + "name": "rate", + "baseName": "Rate", + "type": "number" + } +]; +//# sourceMappingURL=cISSetting.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/cISSetting.js.map b/dist/gen/model/accounting/cISSetting.js.map new file mode 100644 index 000000000..98922788e --- /dev/null +++ b/dist/gen/model/accounting/cISSetting.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cISSetting.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/cISSetting.ts"],"names":[],"mappings":";;AAaA,MAAa,UAAU;IAwBnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AA1BL,gCA2BC;AAjBU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/cISSettings.d.ts b/dist/gen/model/accounting/cISSettings.d.ts new file mode 100644 index 000000000..185b5a3ed --- /dev/null +++ b/dist/gen/model/accounting/cISSettings.d.ts @@ -0,0 +1,15 @@ +import { CISSetting } from './cISSetting'; +export declare class CISSettings { + 'cISSettings'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/cISSettings.js b/dist/gen/model/accounting/cISSettings.js new file mode 100644 index 000000000..861166362 --- /dev/null +++ b/dist/gen/model/accounting/cISSettings.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class CISSettings { + static getAttributeTypeMap() { + return CISSettings.attributeTypeMap; + } +} +exports.CISSettings = CISSettings; +CISSettings.discriminator = undefined; +CISSettings.attributeTypeMap = [ + { + "name": "cISSettings", + "baseName": "CISSettings", + "type": "Array" + } +]; +//# sourceMappingURL=cISSettings.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/cISSettings.js.map b/dist/gen/model/accounting/cISSettings.js.map new file mode 100644 index 000000000..d15572f28 --- /dev/null +++ b/dist/gen/model/accounting/cISSettings.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cISSettings.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/cISSettings.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAYpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAdL,kCAeC;AAZU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/contact.d.ts b/dist/gen/model/accounting/contact.d.ts new file mode 100644 index 000000000..9d303b7bf --- /dev/null +++ b/dist/gen/model/accounting/contact.d.ts @@ -0,0 +1,70 @@ +import { Address } from './address'; +import { Attachment } from './attachment'; +import { Balances } from './balances'; +import { BatchPaymentDetails } from './batchPaymentDetails'; +import { BrandingTheme } from './brandingTheme'; +import { ContactGroup } from './contactGroup'; +import { ContactPerson } from './contactPerson'; +import { CurrencyCode } from './currencyCode'; +import { PaymentTerm } from './paymentTerm'; +import { Phone } from './phone'; +import { SalesTrackingCategory } from './salesTrackingCategory'; +import { ValidationError } from './validationError'; +export declare class Contact { + 'contactID'?: string; + 'contactNumber'?: string; + 'accountNumber'?: string; + 'contactStatus'?: Contact.ContactStatusEnum; + 'name'?: string; + 'firstName'?: string; + 'lastName'?: string; + 'emailAddress'?: string; + 'skypeUserName'?: string; + 'contactPersons'?: Array; + 'bankAccountDetails'?: string; + 'taxNumber'?: string; + 'accountsReceivableTaxType'?: string; + 'accountsPayableTaxType'?: string; + 'addresses'?: Array
; + 'phones'?: Array; + 'isSupplier'?: boolean; + 'isCustomer'?: boolean; + 'defaultCurrency'?: CurrencyCode; + 'xeroNetworkKey'?: string; + 'salesDefaultAccountCode'?: string; + 'purchasesDefaultAccountCode'?: string; + 'salesTrackingCategories'?: Array; + 'purchasesTrackingCategories'?: Array; + 'trackingCategoryName'?: string; + 'trackingCategoryOption'?: string; + 'paymentTerms'?: PaymentTerm; + 'updatedDateUTC'?: Date; + 'contactGroups'?: Array; + 'website'?: string; + 'brandingTheme'?: BrandingTheme; + 'batchPayments'?: BatchPaymentDetails; + 'discount'?: number; + 'balances'?: Balances; + 'attachments'?: Array; + 'hasAttachments'?: boolean; + 'validationErrors'?: Array; + 'hasValidationErrors'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Contact { + enum ContactStatusEnum { + ACTIVE, + ARCHIVED, + GDPRREQUEST + } +} diff --git a/dist/gen/model/accounting/contact.js b/dist/gen/model/accounting/contact.js new file mode 100644 index 000000000..595c8ae2a --- /dev/null +++ b/dist/gen/model/accounting/contact.js @@ -0,0 +1,210 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Contact { + static getAttributeTypeMap() { + return Contact.attributeTypeMap; + } +} +exports.Contact = Contact; +Contact.discriminator = undefined; +Contact.attributeTypeMap = [ + { + "name": "contactID", + "baseName": "ContactID", + "type": "string" + }, + { + "name": "contactNumber", + "baseName": "ContactNumber", + "type": "string" + }, + { + "name": "accountNumber", + "baseName": "AccountNumber", + "type": "string" + }, + { + "name": "contactStatus", + "baseName": "ContactStatus", + "type": "Contact.ContactStatusEnum" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "firstName", + "baseName": "FirstName", + "type": "string" + }, + { + "name": "lastName", + "baseName": "LastName", + "type": "string" + }, + { + "name": "emailAddress", + "baseName": "EmailAddress", + "type": "string" + }, + { + "name": "skypeUserName", + "baseName": "SkypeUserName", + "type": "string" + }, + { + "name": "contactPersons", + "baseName": "ContactPersons", + "type": "Array" + }, + { + "name": "bankAccountDetails", + "baseName": "BankAccountDetails", + "type": "string" + }, + { + "name": "taxNumber", + "baseName": "TaxNumber", + "type": "string" + }, + { + "name": "accountsReceivableTaxType", + "baseName": "AccountsReceivableTaxType", + "type": "string" + }, + { + "name": "accountsPayableTaxType", + "baseName": "AccountsPayableTaxType", + "type": "string" + }, + { + "name": "addresses", + "baseName": "Addresses", + "type": "Array
" + }, + { + "name": "phones", + "baseName": "Phones", + "type": "Array" + }, + { + "name": "isSupplier", + "baseName": "IsSupplier", + "type": "boolean" + }, + { + "name": "isCustomer", + "baseName": "IsCustomer", + "type": "boolean" + }, + { + "name": "defaultCurrency", + "baseName": "DefaultCurrency", + "type": "CurrencyCode" + }, + { + "name": "xeroNetworkKey", + "baseName": "XeroNetworkKey", + "type": "string" + }, + { + "name": "salesDefaultAccountCode", + "baseName": "SalesDefaultAccountCode", + "type": "string" + }, + { + "name": "purchasesDefaultAccountCode", + "baseName": "PurchasesDefaultAccountCode", + "type": "string" + }, + { + "name": "salesTrackingCategories", + "baseName": "SalesTrackingCategories", + "type": "Array" + }, + { + "name": "purchasesTrackingCategories", + "baseName": "PurchasesTrackingCategories", + "type": "Array" + }, + { + "name": "trackingCategoryName", + "baseName": "TrackingCategoryName", + "type": "string" + }, + { + "name": "trackingCategoryOption", + "baseName": "TrackingCategoryOption", + "type": "string" + }, + { + "name": "paymentTerms", + "baseName": "PaymentTerms", + "type": "PaymentTerm" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "contactGroups", + "baseName": "ContactGroups", + "type": "Array" + }, + { + "name": "website", + "baseName": "Website", + "type": "string" + }, + { + "name": "brandingTheme", + "baseName": "BrandingTheme", + "type": "BrandingTheme" + }, + { + "name": "batchPayments", + "baseName": "BatchPayments", + "type": "BatchPaymentDetails" + }, + { + "name": "discount", + "baseName": "Discount", + "type": "number" + }, + { + "name": "balances", + "baseName": "Balances", + "type": "Balances" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + }, + { + "name": "hasValidationErrors", + "baseName": "HasValidationErrors", + "type": "boolean" + } +]; +(function (Contact) { + let ContactStatusEnum; + (function (ContactStatusEnum) { + ContactStatusEnum[ContactStatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + ContactStatusEnum[ContactStatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + ContactStatusEnum[ContactStatusEnum["GDPRREQUEST"] = 'GDPRREQUEST'] = "GDPRREQUEST"; + })(ContactStatusEnum = Contact.ContactStatusEnum || (Contact.ContactStatusEnum = {})); +})(Contact = exports.Contact || (exports.Contact = {})); +//# sourceMappingURL=contact.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/contact.js.map b/dist/gen/model/accounting/contact.js.map new file mode 100644 index 000000000..d03114540 --- /dev/null +++ b/dist/gen/model/accounting/contact.js.map @@ -0,0 +1 @@ +{"version":3,"file":"contact.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/contact.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/contactGroup.d.ts b/dist/gen/model/accounting/contactGroup.d.ts new file mode 100644 index 000000000..32ebd83d3 --- /dev/null +++ b/dist/gen/model/accounting/contactGroup.d.ts @@ -0,0 +1,24 @@ +import { Contact } from './contact'; +export declare class ContactGroup { + 'name'?: string; + 'status'?: ContactGroup.StatusEnum; + 'contactGroupID'?: string; + 'contacts'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace ContactGroup { + enum StatusEnum { + ACTIVE, + DELETED + } +} diff --git a/dist/gen/model/accounting/contactGroup.js b/dist/gen/model/accounting/contactGroup.js new file mode 100644 index 000000000..68e91a2dd --- /dev/null +++ b/dist/gen/model/accounting/contactGroup.js @@ -0,0 +1,39 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ContactGroup { + static getAttributeTypeMap() { + return ContactGroup.attributeTypeMap; + } +} +exports.ContactGroup = ContactGroup; +ContactGroup.discriminator = undefined; +ContactGroup.attributeTypeMap = [ + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "ContactGroup.StatusEnum" + }, + { + "name": "contactGroupID", + "baseName": "ContactGroupID", + "type": "string" + }, + { + "name": "contacts", + "baseName": "Contacts", + "type": "Array" + } +]; +(function (ContactGroup) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = ContactGroup.StatusEnum || (ContactGroup.StatusEnum = {})); +})(ContactGroup = exports.ContactGroup || (exports.ContactGroup = {})); +//# sourceMappingURL=contactGroup.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/contactGroup.js.map b/dist/gen/model/accounting/contactGroup.js.map new file mode 100644 index 000000000..c2ea84b99 --- /dev/null +++ b/dist/gen/model/accounting/contactGroup.js.map @@ -0,0 +1 @@ +{"version":3,"file":"contactGroup.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/contactGroup.ts"],"names":[],"mappings":";;AAcA,MAAa,YAAY;IA0CrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AA5CL,oCA6CC;AA3BU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC;AAOf,WAAiB,YAAY;IACzB,IAAY,UAGX;IAHD,WAAY,UAAU;QAClB,kCAAe,QAAQ,YAAA,CAAA;QACvB,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAHW,UAAU,GAAV,uBAAU,KAAV,uBAAU,QAGrB;AACL,CAAC,EALgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAK5B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/contactGroups.d.ts b/dist/gen/model/accounting/contactGroups.d.ts new file mode 100644 index 000000000..37d8217f1 --- /dev/null +++ b/dist/gen/model/accounting/contactGroups.d.ts @@ -0,0 +1,15 @@ +import { ContactGroup } from './contactGroup'; +export declare class ContactGroups { + 'contactGroups'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/contactGroups.js b/dist/gen/model/accounting/contactGroups.js new file mode 100644 index 000000000..5253b7e64 --- /dev/null +++ b/dist/gen/model/accounting/contactGroups.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ContactGroups { + static getAttributeTypeMap() { + return ContactGroups.attributeTypeMap; + } +} +exports.ContactGroups = ContactGroups; +ContactGroups.discriminator = undefined; +ContactGroups.attributeTypeMap = [ + { + "name": "contactGroups", + "baseName": "ContactGroups", + "type": "Array" + } +]; +//# sourceMappingURL=contactGroups.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/contactGroups.js.map b/dist/gen/model/accounting/contactGroups.js.map new file mode 100644 index 000000000..d1ef52bea --- /dev/null +++ b/dist/gen/model/accounting/contactGroups.js.map @@ -0,0 +1 @@ +{"version":3,"file":"contactGroups.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/contactGroups.ts"],"names":[],"mappings":";;AAcA,MAAa,aAAa;IAYtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAdL,sCAeC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/contactPerson.d.ts b/dist/gen/model/accounting/contactPerson.d.ts new file mode 100644 index 000000000..e07f96cc5 --- /dev/null +++ b/dist/gen/model/accounting/contactPerson.d.ts @@ -0,0 +1,17 @@ +export declare class ContactPerson { + 'firstName'?: string; + 'lastName'?: string; + 'emailAddress'?: string; + 'includeInEmails'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/contactPerson.js b/dist/gen/model/accounting/contactPerson.js new file mode 100644 index 000000000..05d5babaf --- /dev/null +++ b/dist/gen/model/accounting/contactPerson.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ContactPerson { + static getAttributeTypeMap() { + return ContactPerson.attributeTypeMap; + } +} +exports.ContactPerson = ContactPerson; +ContactPerson.discriminator = undefined; +ContactPerson.attributeTypeMap = [ + { + "name": "firstName", + "baseName": "FirstName", + "type": "string" + }, + { + "name": "lastName", + "baseName": "LastName", + "type": "string" + }, + { + "name": "emailAddress", + "baseName": "EmailAddress", + "type": "string" + }, + { + "name": "includeInEmails", + "baseName": "IncludeInEmails", + "type": "boolean" + } +]; +//# sourceMappingURL=contactPerson.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/contactPerson.js.map b/dist/gen/model/accounting/contactPerson.js.map new file mode 100644 index 000000000..07576c862 --- /dev/null +++ b/dist/gen/model/accounting/contactPerson.js.map @@ -0,0 +1 @@ +{"version":3,"file":"contactPerson.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/contactPerson.ts"],"names":[],"mappings":";;AAaA,MAAa,aAAa;IA0CtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AA5CL,sCA6CC;AA3BU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,SAAS;KACpB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/contacts.d.ts b/dist/gen/model/accounting/contacts.d.ts new file mode 100644 index 000000000..a7753985a --- /dev/null +++ b/dist/gen/model/accounting/contacts.d.ts @@ -0,0 +1,15 @@ +import { Contact } from './contact'; +export declare class Contacts { + 'contacts'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/contacts.js b/dist/gen/model/accounting/contacts.js new file mode 100644 index 000000000..30a721780 --- /dev/null +++ b/dist/gen/model/accounting/contacts.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Contacts { + static getAttributeTypeMap() { + return Contacts.attributeTypeMap; + } +} +exports.Contacts = Contacts; +Contacts.discriminator = undefined; +Contacts.attributeTypeMap = [ + { + "name": "contacts", + "baseName": "Contacts", + "type": "Array" + } +]; +//# sourceMappingURL=contacts.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/contacts.js.map b/dist/gen/model/accounting/contacts.js.map new file mode 100644 index 000000000..dc301ea4a --- /dev/null +++ b/dist/gen/model/accounting/contacts.js.map @@ -0,0 +1 @@ +{"version":3,"file":"contacts.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/contacts.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/countryCode.d.ts b/dist/gen/model/accounting/countryCode.d.ts new file mode 100644 index 000000000..c3f896a02 --- /dev/null +++ b/dist/gen/model/accounting/countryCode.d.ts @@ -0,0 +1,242 @@ +export declare enum CountryCode { + AD, + AE, + AF, + AG, + AI, + AL, + AM, + AN, + AO, + AQ, + AR, + AS, + AT, + AU, + AW, + AZ, + BA, + BB, + BD, + BE, + BF, + BG, + BH, + BI, + BJ, + BL, + BM, + BN, + BO, + BR, + BS, + BT, + BW, + BY, + BZ, + CA, + CC, + CD, + CF, + CG, + CH, + CI, + CK, + CL, + CM, + CN, + CO, + CR, + CU, + CV, + CW, + CX, + CY, + CZ, + DE, + DJ, + DK, + DM, + DO, + DZ, + EC, + EE, + EG, + EH, + ER, + ES, + ET, + FI, + FJ, + FK, + FM, + FO, + FR, + GA, + GB, + GD, + GE, + GG, + GH, + GI, + GL, + GM, + GN, + GQ, + GR, + GT, + GU, + GW, + GY, + HK, + HN, + HR, + HT, + HU, + ID, + IE, + IL, + IM, + IN, + IO, + IQ, + IR, + IS, + IT, + JE, + JM, + JO, + JP, + KE, + KG, + KH, + KI, + KM, + KN, + KP, + KR, + KW, + KY, + KZ, + LA, + LB, + LC, + LI, + LK, + LR, + LS, + LT, + LU, + LV, + LY, + MA, + MC, + MD, + ME, + MF, + MG, + MH, + MK, + ML, + MM, + MN, + MO, + MP, + MR, + MS, + MT, + MU, + MV, + MW, + MX, + MY, + MZ, + NA, + NC, + NE, + NG, + NI, + NL, + False, + NP, + NR, + NU, + NZ, + OM, + PA, + PE, + PF, + PG, + PH, + PK, + PL, + PM, + PN, + PR, + PS, + PT, + PW, + PY, + QA, + RE, + RO, + RS, + RU, + RW, + SA, + SB, + SC, + SD, + SE, + SG, + SH, + SI, + SJ, + SK, + SL, + SM, + SN, + SO, + SR, + SS, + ST, + SV, + SX, + SY, + SZ, + TC, + TD, + TG, + TH, + TJ, + TK, + TL, + TM, + TN, + TO, + TR, + TT, + TV, + TW, + TZ, + UA, + UG, + US, + UY, + UZ, + VA, + VC, + VE, + VG, + VI, + VN, + VU, + WF, + WS, + XK, + YE, + YT, + ZA, + ZM, + ZW +} diff --git a/dist/gen/model/accounting/countryCode.js b/dist/gen/model/accounting/countryCode.js new file mode 100644 index 000000000..9d1dbceb7 --- /dev/null +++ b/dist/gen/model/accounting/countryCode.js @@ -0,0 +1,246 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var CountryCode; +(function (CountryCode) { + CountryCode[CountryCode["AD"] = 'AD'] = "AD"; + CountryCode[CountryCode["AE"] = 'AE'] = "AE"; + CountryCode[CountryCode["AF"] = 'AF'] = "AF"; + CountryCode[CountryCode["AG"] = 'AG'] = "AG"; + CountryCode[CountryCode["AI"] = 'AI'] = "AI"; + CountryCode[CountryCode["AL"] = 'AL'] = "AL"; + CountryCode[CountryCode["AM"] = 'AM'] = "AM"; + CountryCode[CountryCode["AN"] = 'AN'] = "AN"; + CountryCode[CountryCode["AO"] = 'AO'] = "AO"; + CountryCode[CountryCode["AQ"] = 'AQ'] = "AQ"; + CountryCode[CountryCode["AR"] = 'AR'] = "AR"; + CountryCode[CountryCode["AS"] = 'AS'] = "AS"; + CountryCode[CountryCode["AT"] = 'AT'] = "AT"; + CountryCode[CountryCode["AU"] = 'AU'] = "AU"; + CountryCode[CountryCode["AW"] = 'AW'] = "AW"; + CountryCode[CountryCode["AZ"] = 'AZ'] = "AZ"; + CountryCode[CountryCode["BA"] = 'BA'] = "BA"; + CountryCode[CountryCode["BB"] = 'BB'] = "BB"; + CountryCode[CountryCode["BD"] = 'BD'] = "BD"; + CountryCode[CountryCode["BE"] = 'BE'] = "BE"; + CountryCode[CountryCode["BF"] = 'BF'] = "BF"; + CountryCode[CountryCode["BG"] = 'BG'] = "BG"; + CountryCode[CountryCode["BH"] = 'BH'] = "BH"; + CountryCode[CountryCode["BI"] = 'BI'] = "BI"; + CountryCode[CountryCode["BJ"] = 'BJ'] = "BJ"; + CountryCode[CountryCode["BL"] = 'BL'] = "BL"; + CountryCode[CountryCode["BM"] = 'BM'] = "BM"; + CountryCode[CountryCode["BN"] = 'BN'] = "BN"; + CountryCode[CountryCode["BO"] = 'BO'] = "BO"; + CountryCode[CountryCode["BR"] = 'BR'] = "BR"; + CountryCode[CountryCode["BS"] = 'BS'] = "BS"; + CountryCode[CountryCode["BT"] = 'BT'] = "BT"; + CountryCode[CountryCode["BW"] = 'BW'] = "BW"; + CountryCode[CountryCode["BY"] = 'BY'] = "BY"; + CountryCode[CountryCode["BZ"] = 'BZ'] = "BZ"; + CountryCode[CountryCode["CA"] = 'CA'] = "CA"; + CountryCode[CountryCode["CC"] = 'CC'] = "CC"; + CountryCode[CountryCode["CD"] = 'CD'] = "CD"; + CountryCode[CountryCode["CF"] = 'CF'] = "CF"; + CountryCode[CountryCode["CG"] = 'CG'] = "CG"; + CountryCode[CountryCode["CH"] = 'CH'] = "CH"; + CountryCode[CountryCode["CI"] = 'CI'] = "CI"; + CountryCode[CountryCode["CK"] = 'CK'] = "CK"; + CountryCode[CountryCode["CL"] = 'CL'] = "CL"; + CountryCode[CountryCode["CM"] = 'CM'] = "CM"; + CountryCode[CountryCode["CN"] = 'CN'] = "CN"; + CountryCode[CountryCode["CO"] = 'CO'] = "CO"; + CountryCode[CountryCode["CR"] = 'CR'] = "CR"; + CountryCode[CountryCode["CU"] = 'CU'] = "CU"; + CountryCode[CountryCode["CV"] = 'CV'] = "CV"; + CountryCode[CountryCode["CW"] = 'CW'] = "CW"; + CountryCode[CountryCode["CX"] = 'CX'] = "CX"; + CountryCode[CountryCode["CY"] = 'CY'] = "CY"; + CountryCode[CountryCode["CZ"] = 'CZ'] = "CZ"; + CountryCode[CountryCode["DE"] = 'DE'] = "DE"; + CountryCode[CountryCode["DJ"] = 'DJ'] = "DJ"; + CountryCode[CountryCode["DK"] = 'DK'] = "DK"; + CountryCode[CountryCode["DM"] = 'DM'] = "DM"; + CountryCode[CountryCode["DO"] = 'DO'] = "DO"; + CountryCode[CountryCode["DZ"] = 'DZ'] = "DZ"; + CountryCode[CountryCode["EC"] = 'EC'] = "EC"; + CountryCode[CountryCode["EE"] = 'EE'] = "EE"; + CountryCode[CountryCode["EG"] = 'EG'] = "EG"; + CountryCode[CountryCode["EH"] = 'EH'] = "EH"; + CountryCode[CountryCode["ER"] = 'ER'] = "ER"; + CountryCode[CountryCode["ES"] = 'ES'] = "ES"; + CountryCode[CountryCode["ET"] = 'ET'] = "ET"; + CountryCode[CountryCode["FI"] = 'FI'] = "FI"; + CountryCode[CountryCode["FJ"] = 'FJ'] = "FJ"; + CountryCode[CountryCode["FK"] = 'FK'] = "FK"; + CountryCode[CountryCode["FM"] = 'FM'] = "FM"; + CountryCode[CountryCode["FO"] = 'FO'] = "FO"; + CountryCode[CountryCode["FR"] = 'FR'] = "FR"; + CountryCode[CountryCode["GA"] = 'GA'] = "GA"; + CountryCode[CountryCode["GB"] = 'GB'] = "GB"; + CountryCode[CountryCode["GD"] = 'GD'] = "GD"; + CountryCode[CountryCode["GE"] = 'GE'] = "GE"; + CountryCode[CountryCode["GG"] = 'GG'] = "GG"; + CountryCode[CountryCode["GH"] = 'GH'] = "GH"; + CountryCode[CountryCode["GI"] = 'GI'] = "GI"; + CountryCode[CountryCode["GL"] = 'GL'] = "GL"; + CountryCode[CountryCode["GM"] = 'GM'] = "GM"; + CountryCode[CountryCode["GN"] = 'GN'] = "GN"; + CountryCode[CountryCode["GQ"] = 'GQ'] = "GQ"; + CountryCode[CountryCode["GR"] = 'GR'] = "GR"; + CountryCode[CountryCode["GT"] = 'GT'] = "GT"; + CountryCode[CountryCode["GU"] = 'GU'] = "GU"; + CountryCode[CountryCode["GW"] = 'GW'] = "GW"; + CountryCode[CountryCode["GY"] = 'GY'] = "GY"; + CountryCode[CountryCode["HK"] = 'HK'] = "HK"; + CountryCode[CountryCode["HN"] = 'HN'] = "HN"; + CountryCode[CountryCode["HR"] = 'HR'] = "HR"; + CountryCode[CountryCode["HT"] = 'HT'] = "HT"; + CountryCode[CountryCode["HU"] = 'HU'] = "HU"; + CountryCode[CountryCode["ID"] = 'ID'] = "ID"; + CountryCode[CountryCode["IE"] = 'IE'] = "IE"; + CountryCode[CountryCode["IL"] = 'IL'] = "IL"; + CountryCode[CountryCode["IM"] = 'IM'] = "IM"; + CountryCode[CountryCode["IN"] = 'IN'] = "IN"; + CountryCode[CountryCode["IO"] = 'IO'] = "IO"; + CountryCode[CountryCode["IQ"] = 'IQ'] = "IQ"; + CountryCode[CountryCode["IR"] = 'IR'] = "IR"; + CountryCode[CountryCode["IS"] = 'IS'] = "IS"; + CountryCode[CountryCode["IT"] = 'IT'] = "IT"; + CountryCode[CountryCode["JE"] = 'JE'] = "JE"; + CountryCode[CountryCode["JM"] = 'JM'] = "JM"; + CountryCode[CountryCode["JO"] = 'JO'] = "JO"; + CountryCode[CountryCode["JP"] = 'JP'] = "JP"; + CountryCode[CountryCode["KE"] = 'KE'] = "KE"; + CountryCode[CountryCode["KG"] = 'KG'] = "KG"; + CountryCode[CountryCode["KH"] = 'KH'] = "KH"; + CountryCode[CountryCode["KI"] = 'KI'] = "KI"; + CountryCode[CountryCode["KM"] = 'KM'] = "KM"; + CountryCode[CountryCode["KN"] = 'KN'] = "KN"; + CountryCode[CountryCode["KP"] = 'KP'] = "KP"; + CountryCode[CountryCode["KR"] = 'KR'] = "KR"; + CountryCode[CountryCode["KW"] = 'KW'] = "KW"; + CountryCode[CountryCode["KY"] = 'KY'] = "KY"; + CountryCode[CountryCode["KZ"] = 'KZ'] = "KZ"; + CountryCode[CountryCode["LA"] = 'LA'] = "LA"; + CountryCode[CountryCode["LB"] = 'LB'] = "LB"; + CountryCode[CountryCode["LC"] = 'LC'] = "LC"; + CountryCode[CountryCode["LI"] = 'LI'] = "LI"; + CountryCode[CountryCode["LK"] = 'LK'] = "LK"; + CountryCode[CountryCode["LR"] = 'LR'] = "LR"; + CountryCode[CountryCode["LS"] = 'LS'] = "LS"; + CountryCode[CountryCode["LT"] = 'LT'] = "LT"; + CountryCode[CountryCode["LU"] = 'LU'] = "LU"; + CountryCode[CountryCode["LV"] = 'LV'] = "LV"; + CountryCode[CountryCode["LY"] = 'LY'] = "LY"; + CountryCode[CountryCode["MA"] = 'MA'] = "MA"; + CountryCode[CountryCode["MC"] = 'MC'] = "MC"; + CountryCode[CountryCode["MD"] = 'MD'] = "MD"; + CountryCode[CountryCode["ME"] = 'ME'] = "ME"; + CountryCode[CountryCode["MF"] = 'MF'] = "MF"; + CountryCode[CountryCode["MG"] = 'MG'] = "MG"; + CountryCode[CountryCode["MH"] = 'MH'] = "MH"; + CountryCode[CountryCode["MK"] = 'MK'] = "MK"; + CountryCode[CountryCode["ML"] = 'ML'] = "ML"; + CountryCode[CountryCode["MM"] = 'MM'] = "MM"; + CountryCode[CountryCode["MN"] = 'MN'] = "MN"; + CountryCode[CountryCode["MO"] = 'MO'] = "MO"; + CountryCode[CountryCode["MP"] = 'MP'] = "MP"; + CountryCode[CountryCode["MR"] = 'MR'] = "MR"; + CountryCode[CountryCode["MS"] = 'MS'] = "MS"; + CountryCode[CountryCode["MT"] = 'MT'] = "MT"; + CountryCode[CountryCode["MU"] = 'MU'] = "MU"; + CountryCode[CountryCode["MV"] = 'MV'] = "MV"; + CountryCode[CountryCode["MW"] = 'MW'] = "MW"; + CountryCode[CountryCode["MX"] = 'MX'] = "MX"; + CountryCode[CountryCode["MY"] = 'MY'] = "MY"; + CountryCode[CountryCode["MZ"] = 'MZ'] = "MZ"; + CountryCode[CountryCode["NA"] = 'NA'] = "NA"; + CountryCode[CountryCode["NC"] = 'NC'] = "NC"; + CountryCode[CountryCode["NE"] = 'NE'] = "NE"; + CountryCode[CountryCode["NG"] = 'NG'] = "NG"; + CountryCode[CountryCode["NI"] = 'NI'] = "NI"; + CountryCode[CountryCode["NL"] = 'NL'] = "NL"; + CountryCode[CountryCode["False"] = 'false'] = "False"; + CountryCode[CountryCode["NP"] = 'NP'] = "NP"; + CountryCode[CountryCode["NR"] = 'NR'] = "NR"; + CountryCode[CountryCode["NU"] = 'NU'] = "NU"; + CountryCode[CountryCode["NZ"] = 'NZ'] = "NZ"; + CountryCode[CountryCode["OM"] = 'OM'] = "OM"; + CountryCode[CountryCode["PA"] = 'PA'] = "PA"; + CountryCode[CountryCode["PE"] = 'PE'] = "PE"; + CountryCode[CountryCode["PF"] = 'PF'] = "PF"; + CountryCode[CountryCode["PG"] = 'PG'] = "PG"; + CountryCode[CountryCode["PH"] = 'PH'] = "PH"; + CountryCode[CountryCode["PK"] = 'PK'] = "PK"; + CountryCode[CountryCode["PL"] = 'PL'] = "PL"; + CountryCode[CountryCode["PM"] = 'PM'] = "PM"; + CountryCode[CountryCode["PN"] = 'PN'] = "PN"; + CountryCode[CountryCode["PR"] = 'PR'] = "PR"; + CountryCode[CountryCode["PS"] = 'PS'] = "PS"; + CountryCode[CountryCode["PT"] = 'PT'] = "PT"; + CountryCode[CountryCode["PW"] = 'PW'] = "PW"; + CountryCode[CountryCode["PY"] = 'PY'] = "PY"; + CountryCode[CountryCode["QA"] = 'QA'] = "QA"; + CountryCode[CountryCode["RE"] = 'RE'] = "RE"; + CountryCode[CountryCode["RO"] = 'RO'] = "RO"; + CountryCode[CountryCode["RS"] = 'RS'] = "RS"; + CountryCode[CountryCode["RU"] = 'RU'] = "RU"; + CountryCode[CountryCode["RW"] = 'RW'] = "RW"; + CountryCode[CountryCode["SA"] = 'SA'] = "SA"; + CountryCode[CountryCode["SB"] = 'SB'] = "SB"; + CountryCode[CountryCode["SC"] = 'SC'] = "SC"; + CountryCode[CountryCode["SD"] = 'SD'] = "SD"; + CountryCode[CountryCode["SE"] = 'SE'] = "SE"; + CountryCode[CountryCode["SG"] = 'SG'] = "SG"; + CountryCode[CountryCode["SH"] = 'SH'] = "SH"; + CountryCode[CountryCode["SI"] = 'SI'] = "SI"; + CountryCode[CountryCode["SJ"] = 'SJ'] = "SJ"; + CountryCode[CountryCode["SK"] = 'SK'] = "SK"; + CountryCode[CountryCode["SL"] = 'SL'] = "SL"; + CountryCode[CountryCode["SM"] = 'SM'] = "SM"; + CountryCode[CountryCode["SN"] = 'SN'] = "SN"; + CountryCode[CountryCode["SO"] = 'SO'] = "SO"; + CountryCode[CountryCode["SR"] = 'SR'] = "SR"; + CountryCode[CountryCode["SS"] = 'SS'] = "SS"; + CountryCode[CountryCode["ST"] = 'ST'] = "ST"; + CountryCode[CountryCode["SV"] = 'SV'] = "SV"; + CountryCode[CountryCode["SX"] = 'SX'] = "SX"; + CountryCode[CountryCode["SY"] = 'SY'] = "SY"; + CountryCode[CountryCode["SZ"] = 'SZ'] = "SZ"; + CountryCode[CountryCode["TC"] = 'TC'] = "TC"; + CountryCode[CountryCode["TD"] = 'TD'] = "TD"; + CountryCode[CountryCode["TG"] = 'TG'] = "TG"; + CountryCode[CountryCode["TH"] = 'TH'] = "TH"; + CountryCode[CountryCode["TJ"] = 'TJ'] = "TJ"; + CountryCode[CountryCode["TK"] = 'TK'] = "TK"; + CountryCode[CountryCode["TL"] = 'TL'] = "TL"; + CountryCode[CountryCode["TM"] = 'TM'] = "TM"; + CountryCode[CountryCode["TN"] = 'TN'] = "TN"; + CountryCode[CountryCode["TO"] = 'TO'] = "TO"; + CountryCode[CountryCode["TR"] = 'TR'] = "TR"; + CountryCode[CountryCode["TT"] = 'TT'] = "TT"; + CountryCode[CountryCode["TV"] = 'TV'] = "TV"; + CountryCode[CountryCode["TW"] = 'TW'] = "TW"; + CountryCode[CountryCode["TZ"] = 'TZ'] = "TZ"; + CountryCode[CountryCode["UA"] = 'UA'] = "UA"; + CountryCode[CountryCode["UG"] = 'UG'] = "UG"; + CountryCode[CountryCode["US"] = 'US'] = "US"; + CountryCode[CountryCode["UY"] = 'UY'] = "UY"; + CountryCode[CountryCode["UZ"] = 'UZ'] = "UZ"; + CountryCode[CountryCode["VA"] = 'VA'] = "VA"; + CountryCode[CountryCode["VC"] = 'VC'] = "VC"; + CountryCode[CountryCode["VE"] = 'VE'] = "VE"; + CountryCode[CountryCode["VG"] = 'VG'] = "VG"; + CountryCode[CountryCode["VI"] = 'VI'] = "VI"; + CountryCode[CountryCode["VN"] = 'VN'] = "VN"; + CountryCode[CountryCode["VU"] = 'VU'] = "VU"; + CountryCode[CountryCode["WF"] = 'WF'] = "WF"; + CountryCode[CountryCode["WS"] = 'WS'] = "WS"; + CountryCode[CountryCode["XK"] = 'XK'] = "XK"; + CountryCode[CountryCode["YE"] = 'YE'] = "YE"; + CountryCode[CountryCode["YT"] = 'YT'] = "YT"; + CountryCode[CountryCode["ZA"] = 'ZA'] = "ZA"; + CountryCode[CountryCode["ZM"] = 'ZM'] = "ZM"; + CountryCode[CountryCode["ZW"] = 'ZW'] = "ZW"; +})(CountryCode = exports.CountryCode || (exports.CountryCode = {})); +//# sourceMappingURL=countryCode.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/countryCode.js.map b/dist/gen/model/accounting/countryCode.js.map new file mode 100644 index 000000000..453a0c0d9 --- /dev/null +++ b/dist/gen/model/accounting/countryCode.js.map @@ -0,0 +1 @@ +{"version":3,"file":"countryCode.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/countryCode.ts"],"names":[],"mappings":";;AAaA,IAAY,WAiPX;AAjPD,WAAY,WAAW;IACnB,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,mCAAc,OAAO,WAAA,CAAA;IACrB,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;IACf,gCAAW,IAAI,QAAA,CAAA;AACnB,CAAC,EAjPW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAiPtB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/creditNote.d.ts b/dist/gen/model/accounting/creditNote.d.ts new file mode 100644 index 000000000..383ad5468 --- /dev/null +++ b/dist/gen/model/accounting/creditNote.d.ts @@ -0,0 +1,57 @@ +import { Allocation } from './allocation'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { Payment } from './payment'; +import { ValidationError } from './validationError'; +export declare class CreditNote { + 'type'?: CreditNote.TypeEnum; + 'contact'?: Contact; + 'date'?: string; + 'status'?: CreditNote.StatusEnum; + 'lineAmountTypes'?: LineAmountTypes; + 'lineItems'?: Array; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'updatedDateUTC'?: Date; + 'currencyCode'?: CurrencyCode; + 'fullyPaidOnDate'?: string; + 'creditNoteID'?: string; + 'creditNoteNumber'?: string; + 'reference'?: string; + 'sentToContact'?: boolean; + 'currencyRate'?: number; + 'remainingCredit'?: number; + 'allocations'?: Array; + 'payments'?: Array; + 'brandingThemeID'?: string; + 'hasAttachments'?: boolean; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace CreditNote { + enum TypeEnum { + ACCPAYCREDIT, + ACCRECCREDIT + } + enum StatusEnum { + DRAFT, + SUBMITTED, + DELETED, + AUTHORISED, + PAID, + VOIDED + } +} diff --git a/dist/gen/model/accounting/creditNote.js b/dist/gen/model/accounting/creditNote.js new file mode 100644 index 000000000..6dd99b04b --- /dev/null +++ b/dist/gen/model/accounting/creditNote.js @@ -0,0 +1,143 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class CreditNote { + static getAttributeTypeMap() { + return CreditNote.attributeTypeMap; + } +} +exports.CreditNote = CreditNote; +CreditNote.discriminator = undefined; +CreditNote.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "CreditNote.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "CreditNote.StatusEnum" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "fullyPaidOnDate", + "baseName": "FullyPaidOnDate", + "type": "string" + }, + { + "name": "creditNoteID", + "baseName": "CreditNoteID", + "type": "string" + }, + { + "name": "creditNoteNumber", + "baseName": "CreditNoteNumber", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "sentToContact", + "baseName": "SentToContact", + "type": "boolean" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "remainingCredit", + "baseName": "RemainingCredit", + "type": "number" + }, + { + "name": "allocations", + "baseName": "Allocations", + "type": "Array" + }, + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + }, + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (CreditNote) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["ACCPAYCREDIT"] = 'ACCPAYCREDIT'] = "ACCPAYCREDIT"; + TypeEnum[TypeEnum["ACCRECCREDIT"] = 'ACCRECCREDIT'] = "ACCRECCREDIT"; + })(TypeEnum = CreditNote.TypeEnum || (CreditNote.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["SUBMITTED"] = 'SUBMITTED'] = "SUBMITTED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["PAID"] = 'PAID'] = "PAID"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = CreditNote.StatusEnum || (CreditNote.StatusEnum = {})); +})(CreditNote = exports.CreditNote || (exports.CreditNote = {})); +//# sourceMappingURL=creditNote.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/creditNote.js.map b/dist/gen/model/accounting/creditNote.js.map new file mode 100644 index 000000000..309f19998 --- /dev/null +++ b/dist/gen/model/accounting/creditNote.js.map @@ -0,0 +1 @@ +{"version":3,"file":"creditNote.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/creditNote.ts"],"names":[],"mappings":";;AAoBA,MAAa,UAAU;IA4MnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AA9ML,gCA+MC;AA1HU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,qBAAqB;KAChC;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,uBAAuB;KAClC;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC;AAOf,WAAiB,UAAU;IACvB,IAAY,QAGX;IAHD,WAAY,QAAQ;QAChB,oCAAqB,cAAc,kBAAA,CAAA;QACnC,oCAAqB,cAAc,kBAAA,CAAA;IACvC,CAAC,EAHW,QAAQ,GAAR,mBAAQ,KAAR,mBAAQ,QAGnB;IACD,IAAY,UAOX;IAPD,WAAY,UAAU;QAClB,iCAAc,OAAO,WAAA,CAAA;QACrB,qCAAkB,WAAW,eAAA,CAAA;QAC7B,mCAAgB,SAAS,aAAA,CAAA;QACzB,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,gCAAa,MAAM,UAAA,CAAA;QACnB,kCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EAPW,UAAU,GAAV,qBAAU,KAAV,qBAAU,QAOrB;AACL,CAAC,EAbgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAa1B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/creditNotes.d.ts b/dist/gen/model/accounting/creditNotes.d.ts new file mode 100644 index 000000000..2188eb279 --- /dev/null +++ b/dist/gen/model/accounting/creditNotes.d.ts @@ -0,0 +1,15 @@ +import { CreditNote } from './creditNote'; +export declare class CreditNotes { + 'creditNotes'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/creditNotes.js b/dist/gen/model/accounting/creditNotes.js new file mode 100644 index 000000000..50b181e21 --- /dev/null +++ b/dist/gen/model/accounting/creditNotes.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class CreditNotes { + static getAttributeTypeMap() { + return CreditNotes.attributeTypeMap; + } +} +exports.CreditNotes = CreditNotes; +CreditNotes.discriminator = undefined; +CreditNotes.attributeTypeMap = [ + { + "name": "creditNotes", + "baseName": "CreditNotes", + "type": "Array" + } +]; +//# sourceMappingURL=creditNotes.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/creditNotes.js.map b/dist/gen/model/accounting/creditNotes.js.map new file mode 100644 index 000000000..fe461730c --- /dev/null +++ b/dist/gen/model/accounting/creditNotes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"creditNotes.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/creditNotes.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAYpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAdL,kCAeC;AAZU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/currencies.d.ts b/dist/gen/model/accounting/currencies.d.ts new file mode 100644 index 000000000..b6da41612 --- /dev/null +++ b/dist/gen/model/accounting/currencies.d.ts @@ -0,0 +1,15 @@ +import { Currency } from './currency'; +export declare class Currencies { + 'currencies'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/currencies.js b/dist/gen/model/accounting/currencies.js new file mode 100644 index 000000000..cb21d83ae --- /dev/null +++ b/dist/gen/model/accounting/currencies.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Currencies { + static getAttributeTypeMap() { + return Currencies.attributeTypeMap; + } +} +exports.Currencies = Currencies; +Currencies.discriminator = undefined; +Currencies.attributeTypeMap = [ + { + "name": "currencies", + "baseName": "Currencies", + "type": "Array" + } +]; +//# sourceMappingURL=currencies.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/currencies.js.map b/dist/gen/model/accounting/currencies.js.map new file mode 100644 index 000000000..cb6f86323 --- /dev/null +++ b/dist/gen/model/accounting/currencies.js.map @@ -0,0 +1 @@ +{"version":3,"file":"currencies.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/currencies.ts"],"names":[],"mappings":";;AAcA,MAAa,UAAU;IAYnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AAdL,gCAeC;AAZU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,iBAAiB;KAC5B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/currency.d.ts b/dist/gen/model/accounting/currency.d.ts new file mode 100644 index 000000000..d4c26b5c0 --- /dev/null +++ b/dist/gen/model/accounting/currency.d.ts @@ -0,0 +1,16 @@ +import { CurrencyCode } from './currencyCode'; +export declare class Currency { + 'code'?: CurrencyCode; + 'description'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/currency.js b/dist/gen/model/accounting/currency.js new file mode 100644 index 000000000..836cd7d05 --- /dev/null +++ b/dist/gen/model/accounting/currency.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Currency { + static getAttributeTypeMap() { + return Currency.attributeTypeMap; + } +} +exports.Currency = Currency; +Currency.discriminator = undefined; +Currency.attributeTypeMap = [ + { + "name": "code", + "baseName": "Code", + "type": "CurrencyCode" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + } +]; +//# sourceMappingURL=currency.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/currency.js.map b/dist/gen/model/accounting/currency.js.map new file mode 100644 index 000000000..452175a31 --- /dev/null +++ b/dist/gen/model/accounting/currency.js.map @@ -0,0 +1 @@ +{"version":3,"file":"currency.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/currency.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAqBjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAvBL,4BAwBC;AAjBU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/currencyCode.d.ts b/dist/gen/model/accounting/currencyCode.d.ts new file mode 100644 index 000000000..e9065a8ff --- /dev/null +++ b/dist/gen/model/accounting/currencyCode.d.ts @@ -0,0 +1,164 @@ +export declare enum CurrencyCode { + AED, + AFN, + ALL, + AMD, + ANG, + AOA, + ARS, + AUD, + AWG, + AZN, + BAM, + BBD, + BDT, + BGN, + BHD, + BIF, + BMD, + BND, + BOB, + BRL, + BSD, + BTN, + BWP, + BYN, + BZD, + CAD, + CDF, + CHF, + CLP, + CNY, + COP, + CRC, + CUC, + CUP, + CVE, + CZK, + DJF, + DKK, + DOP, + DZD, + EGP, + ERN, + ETB, + EUR, + FJD, + FKP, + GBP, + GEL, + GGP, + GHS, + GIP, + GMD, + GNF, + GTQ, + GYD, + HKD, + HNL, + HRK, + HTG, + HUF, + IDR, + ILS, + IMP, + INR, + IQD, + IRR, + ISK, + JEP, + JMD, + JOD, + JPY, + KES, + KGS, + KHR, + KMF, + KPW, + KRW, + KWD, + KYD, + KZT, + LAK, + LBP, + LKR, + LRD, + LSL, + LYD, + MAD, + MDL, + MGA, + MKD, + MMK, + MNT, + MOP, + MRU, + MUR, + MVR, + MWK, + MXN, + MYR, + MZN, + NAD, + NGN, + NIO, + NOK, + NPR, + NZD, + OMR, + PAB, + PEN, + PGK, + PHP, + PKR, + PLN, + PYG, + QAR, + RON, + RSD, + RUB, + RWF, + SAR, + SBD, + SCR, + SDG, + SEK, + SGD, + SHP, + SLL, + SOS, + SPL, + SRD, + STN, + SVC, + SYP, + SZL, + THB, + TJS, + TMT, + TND, + TOP, + TRY, + TTD, + TVD, + TWD, + TZS, + UAH, + UGX, + USD, + UYU, + UZS, + VEF, + VND, + VUV, + WST, + XAF, + XCD, + XDR, + XOF, + XPF, + YER, + ZAR, + ZMW, + ZWD +} diff --git a/dist/gen/model/accounting/currencyCode.js b/dist/gen/model/accounting/currencyCode.js new file mode 100644 index 000000000..a752fba62 --- /dev/null +++ b/dist/gen/model/accounting/currencyCode.js @@ -0,0 +1,168 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var CurrencyCode; +(function (CurrencyCode) { + CurrencyCode[CurrencyCode["AED"] = 'AED'] = "AED"; + CurrencyCode[CurrencyCode["AFN"] = 'AFN'] = "AFN"; + CurrencyCode[CurrencyCode["ALL"] = 'ALL'] = "ALL"; + CurrencyCode[CurrencyCode["AMD"] = 'AMD'] = "AMD"; + CurrencyCode[CurrencyCode["ANG"] = 'ANG'] = "ANG"; + CurrencyCode[CurrencyCode["AOA"] = 'AOA'] = "AOA"; + CurrencyCode[CurrencyCode["ARS"] = 'ARS'] = "ARS"; + CurrencyCode[CurrencyCode["AUD"] = 'AUD'] = "AUD"; + CurrencyCode[CurrencyCode["AWG"] = 'AWG'] = "AWG"; + CurrencyCode[CurrencyCode["AZN"] = 'AZN'] = "AZN"; + CurrencyCode[CurrencyCode["BAM"] = 'BAM'] = "BAM"; + CurrencyCode[CurrencyCode["BBD"] = 'BBD'] = "BBD"; + CurrencyCode[CurrencyCode["BDT"] = 'BDT'] = "BDT"; + CurrencyCode[CurrencyCode["BGN"] = 'BGN'] = "BGN"; + CurrencyCode[CurrencyCode["BHD"] = 'BHD'] = "BHD"; + CurrencyCode[CurrencyCode["BIF"] = 'BIF'] = "BIF"; + CurrencyCode[CurrencyCode["BMD"] = 'BMD'] = "BMD"; + CurrencyCode[CurrencyCode["BND"] = 'BND'] = "BND"; + CurrencyCode[CurrencyCode["BOB"] = 'BOB'] = "BOB"; + CurrencyCode[CurrencyCode["BRL"] = 'BRL'] = "BRL"; + CurrencyCode[CurrencyCode["BSD"] = 'BSD'] = "BSD"; + CurrencyCode[CurrencyCode["BTN"] = 'BTN'] = "BTN"; + CurrencyCode[CurrencyCode["BWP"] = 'BWP'] = "BWP"; + CurrencyCode[CurrencyCode["BYN"] = 'BYN'] = "BYN"; + CurrencyCode[CurrencyCode["BZD"] = 'BZD'] = "BZD"; + CurrencyCode[CurrencyCode["CAD"] = 'CAD'] = "CAD"; + CurrencyCode[CurrencyCode["CDF"] = 'CDF'] = "CDF"; + CurrencyCode[CurrencyCode["CHF"] = 'CHF'] = "CHF"; + CurrencyCode[CurrencyCode["CLP"] = 'CLP'] = "CLP"; + CurrencyCode[CurrencyCode["CNY"] = 'CNY'] = "CNY"; + CurrencyCode[CurrencyCode["COP"] = 'COP'] = "COP"; + CurrencyCode[CurrencyCode["CRC"] = 'CRC'] = "CRC"; + CurrencyCode[CurrencyCode["CUC"] = 'CUC'] = "CUC"; + CurrencyCode[CurrencyCode["CUP"] = 'CUP'] = "CUP"; + CurrencyCode[CurrencyCode["CVE"] = 'CVE'] = "CVE"; + CurrencyCode[CurrencyCode["CZK"] = 'CZK'] = "CZK"; + CurrencyCode[CurrencyCode["DJF"] = 'DJF'] = "DJF"; + CurrencyCode[CurrencyCode["DKK"] = 'DKK'] = "DKK"; + CurrencyCode[CurrencyCode["DOP"] = 'DOP'] = "DOP"; + CurrencyCode[CurrencyCode["DZD"] = 'DZD'] = "DZD"; + CurrencyCode[CurrencyCode["EGP"] = 'EGP'] = "EGP"; + CurrencyCode[CurrencyCode["ERN"] = 'ERN'] = "ERN"; + CurrencyCode[CurrencyCode["ETB"] = 'ETB'] = "ETB"; + CurrencyCode[CurrencyCode["EUR"] = 'EUR'] = "EUR"; + CurrencyCode[CurrencyCode["FJD"] = 'FJD'] = "FJD"; + CurrencyCode[CurrencyCode["FKP"] = 'FKP'] = "FKP"; + CurrencyCode[CurrencyCode["GBP"] = 'GBP'] = "GBP"; + CurrencyCode[CurrencyCode["GEL"] = 'GEL'] = "GEL"; + CurrencyCode[CurrencyCode["GGP"] = 'GGP'] = "GGP"; + CurrencyCode[CurrencyCode["GHS"] = 'GHS'] = "GHS"; + CurrencyCode[CurrencyCode["GIP"] = 'GIP'] = "GIP"; + CurrencyCode[CurrencyCode["GMD"] = 'GMD'] = "GMD"; + CurrencyCode[CurrencyCode["GNF"] = 'GNF'] = "GNF"; + CurrencyCode[CurrencyCode["GTQ"] = 'GTQ'] = "GTQ"; + CurrencyCode[CurrencyCode["GYD"] = 'GYD'] = "GYD"; + CurrencyCode[CurrencyCode["HKD"] = 'HKD'] = "HKD"; + CurrencyCode[CurrencyCode["HNL"] = 'HNL'] = "HNL"; + CurrencyCode[CurrencyCode["HRK"] = 'HRK'] = "HRK"; + CurrencyCode[CurrencyCode["HTG"] = 'HTG'] = "HTG"; + CurrencyCode[CurrencyCode["HUF"] = 'HUF'] = "HUF"; + CurrencyCode[CurrencyCode["IDR"] = 'IDR'] = "IDR"; + CurrencyCode[CurrencyCode["ILS"] = 'ILS'] = "ILS"; + CurrencyCode[CurrencyCode["IMP"] = 'IMP'] = "IMP"; + CurrencyCode[CurrencyCode["INR"] = 'INR'] = "INR"; + CurrencyCode[CurrencyCode["IQD"] = 'IQD'] = "IQD"; + CurrencyCode[CurrencyCode["IRR"] = 'IRR'] = "IRR"; + CurrencyCode[CurrencyCode["ISK"] = 'ISK'] = "ISK"; + CurrencyCode[CurrencyCode["JEP"] = 'JEP'] = "JEP"; + CurrencyCode[CurrencyCode["JMD"] = 'JMD'] = "JMD"; + CurrencyCode[CurrencyCode["JOD"] = 'JOD'] = "JOD"; + CurrencyCode[CurrencyCode["JPY"] = 'JPY'] = "JPY"; + CurrencyCode[CurrencyCode["KES"] = 'KES'] = "KES"; + CurrencyCode[CurrencyCode["KGS"] = 'KGS'] = "KGS"; + CurrencyCode[CurrencyCode["KHR"] = 'KHR'] = "KHR"; + CurrencyCode[CurrencyCode["KMF"] = 'KMF'] = "KMF"; + CurrencyCode[CurrencyCode["KPW"] = 'KPW'] = "KPW"; + CurrencyCode[CurrencyCode["KRW"] = 'KRW'] = "KRW"; + CurrencyCode[CurrencyCode["KWD"] = 'KWD'] = "KWD"; + CurrencyCode[CurrencyCode["KYD"] = 'KYD'] = "KYD"; + CurrencyCode[CurrencyCode["KZT"] = 'KZT'] = "KZT"; + CurrencyCode[CurrencyCode["LAK"] = 'LAK'] = "LAK"; + CurrencyCode[CurrencyCode["LBP"] = 'LBP'] = "LBP"; + CurrencyCode[CurrencyCode["LKR"] = 'LKR'] = "LKR"; + CurrencyCode[CurrencyCode["LRD"] = 'LRD'] = "LRD"; + CurrencyCode[CurrencyCode["LSL"] = 'LSL'] = "LSL"; + CurrencyCode[CurrencyCode["LYD"] = 'LYD'] = "LYD"; + CurrencyCode[CurrencyCode["MAD"] = 'MAD'] = "MAD"; + CurrencyCode[CurrencyCode["MDL"] = 'MDL'] = "MDL"; + CurrencyCode[CurrencyCode["MGA"] = 'MGA'] = "MGA"; + CurrencyCode[CurrencyCode["MKD"] = 'MKD'] = "MKD"; + CurrencyCode[CurrencyCode["MMK"] = 'MMK'] = "MMK"; + CurrencyCode[CurrencyCode["MNT"] = 'MNT'] = "MNT"; + CurrencyCode[CurrencyCode["MOP"] = 'MOP'] = "MOP"; + CurrencyCode[CurrencyCode["MRU"] = 'MRU'] = "MRU"; + CurrencyCode[CurrencyCode["MUR"] = 'MUR'] = "MUR"; + CurrencyCode[CurrencyCode["MVR"] = 'MVR'] = "MVR"; + CurrencyCode[CurrencyCode["MWK"] = 'MWK'] = "MWK"; + CurrencyCode[CurrencyCode["MXN"] = 'MXN'] = "MXN"; + CurrencyCode[CurrencyCode["MYR"] = 'MYR'] = "MYR"; + CurrencyCode[CurrencyCode["MZN"] = 'MZN'] = "MZN"; + CurrencyCode[CurrencyCode["NAD"] = 'NAD'] = "NAD"; + CurrencyCode[CurrencyCode["NGN"] = 'NGN'] = "NGN"; + CurrencyCode[CurrencyCode["NIO"] = 'NIO'] = "NIO"; + CurrencyCode[CurrencyCode["NOK"] = 'NOK'] = "NOK"; + CurrencyCode[CurrencyCode["NPR"] = 'NPR'] = "NPR"; + CurrencyCode[CurrencyCode["NZD"] = 'NZD'] = "NZD"; + CurrencyCode[CurrencyCode["OMR"] = 'OMR'] = "OMR"; + CurrencyCode[CurrencyCode["PAB"] = 'PAB'] = "PAB"; + CurrencyCode[CurrencyCode["PEN"] = 'PEN'] = "PEN"; + CurrencyCode[CurrencyCode["PGK"] = 'PGK'] = "PGK"; + CurrencyCode[CurrencyCode["PHP"] = 'PHP'] = "PHP"; + CurrencyCode[CurrencyCode["PKR"] = 'PKR'] = "PKR"; + CurrencyCode[CurrencyCode["PLN"] = 'PLN'] = "PLN"; + CurrencyCode[CurrencyCode["PYG"] = 'PYG'] = "PYG"; + CurrencyCode[CurrencyCode["QAR"] = 'QAR'] = "QAR"; + CurrencyCode[CurrencyCode["RON"] = 'RON'] = "RON"; + CurrencyCode[CurrencyCode["RSD"] = 'RSD'] = "RSD"; + CurrencyCode[CurrencyCode["RUB"] = 'RUB'] = "RUB"; + CurrencyCode[CurrencyCode["RWF"] = 'RWF'] = "RWF"; + CurrencyCode[CurrencyCode["SAR"] = 'SAR'] = "SAR"; + CurrencyCode[CurrencyCode["SBD"] = 'SBD'] = "SBD"; + CurrencyCode[CurrencyCode["SCR"] = 'SCR'] = "SCR"; + CurrencyCode[CurrencyCode["SDG"] = 'SDG'] = "SDG"; + CurrencyCode[CurrencyCode["SEK"] = 'SEK'] = "SEK"; + CurrencyCode[CurrencyCode["SGD"] = 'SGD'] = "SGD"; + CurrencyCode[CurrencyCode["SHP"] = 'SHP'] = "SHP"; + CurrencyCode[CurrencyCode["SLL"] = 'SLL'] = "SLL"; + CurrencyCode[CurrencyCode["SOS"] = 'SOS'] = "SOS"; + CurrencyCode[CurrencyCode["SPL"] = 'SPL'] = "SPL"; + CurrencyCode[CurrencyCode["SRD"] = 'SRD'] = "SRD"; + CurrencyCode[CurrencyCode["STN"] = 'STN'] = "STN"; + CurrencyCode[CurrencyCode["SVC"] = 'SVC'] = "SVC"; + CurrencyCode[CurrencyCode["SYP"] = 'SYP'] = "SYP"; + CurrencyCode[CurrencyCode["SZL"] = 'SZL'] = "SZL"; + CurrencyCode[CurrencyCode["THB"] = 'THB'] = "THB"; + CurrencyCode[CurrencyCode["TJS"] = 'TJS'] = "TJS"; + CurrencyCode[CurrencyCode["TMT"] = 'TMT'] = "TMT"; + CurrencyCode[CurrencyCode["TND"] = 'TND'] = "TND"; + CurrencyCode[CurrencyCode["TOP"] = 'TOP'] = "TOP"; + CurrencyCode[CurrencyCode["TRY"] = 'TRY'] = "TRY"; + CurrencyCode[CurrencyCode["TTD"] = 'TTD'] = "TTD"; + CurrencyCode[CurrencyCode["TVD"] = 'TVD'] = "TVD"; + CurrencyCode[CurrencyCode["TWD"] = 'TWD'] = "TWD"; + CurrencyCode[CurrencyCode["TZS"] = 'TZS'] = "TZS"; + CurrencyCode[CurrencyCode["UAH"] = 'UAH'] = "UAH"; + CurrencyCode[CurrencyCode["UGX"] = 'UGX'] = "UGX"; + CurrencyCode[CurrencyCode["USD"] = 'USD'] = "USD"; + CurrencyCode[CurrencyCode["UYU"] = 'UYU'] = "UYU"; + CurrencyCode[CurrencyCode["UZS"] = 'UZS'] = "UZS"; + CurrencyCode[CurrencyCode["VEF"] = 'VEF'] = "VEF"; + CurrencyCode[CurrencyCode["VND"] = 'VND'] = "VND"; + CurrencyCode[CurrencyCode["VUV"] = 'VUV'] = "VUV"; + CurrencyCode[CurrencyCode["WST"] = 'WST'] = "WST"; + CurrencyCode[CurrencyCode["XAF"] = 'XAF'] = "XAF"; + CurrencyCode[CurrencyCode["XCD"] = 'XCD'] = "XCD"; + CurrencyCode[CurrencyCode["XDR"] = 'XDR'] = "XDR"; + CurrencyCode[CurrencyCode["XOF"] = 'XOF'] = "XOF"; + CurrencyCode[CurrencyCode["XPF"] = 'XPF'] = "XPF"; + CurrencyCode[CurrencyCode["YER"] = 'YER'] = "YER"; + CurrencyCode[CurrencyCode["ZAR"] = 'ZAR'] = "ZAR"; + CurrencyCode[CurrencyCode["ZMW"] = 'ZMW'] = "ZMW"; + CurrencyCode[CurrencyCode["ZWD"] = 'ZWD'] = "ZWD"; +})(CurrencyCode = exports.CurrencyCode || (exports.CurrencyCode = {})); +//# sourceMappingURL=currencyCode.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/currencyCode.js.map b/dist/gen/model/accounting/currencyCode.js.map new file mode 100644 index 000000000..3124391b2 --- /dev/null +++ b/dist/gen/model/accounting/currencyCode.js.map @@ -0,0 +1 @@ +{"version":3,"file":"currencyCode.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/currencyCode.ts"],"names":[],"mappings":";;AAgBA,IAAY,YAmKX;AAnKD,WAAY,YAAY;IACpB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;IACjB,mCAAY,KAAK,SAAA,CAAA;AACrB,CAAC,EAnKW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAmKvB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/element.d.ts b/dist/gen/model/accounting/element.d.ts new file mode 100644 index 000000000..b308b7a6b --- /dev/null +++ b/dist/gen/model/accounting/element.d.ts @@ -0,0 +1,15 @@ +import { ValidationError } from './validationError'; +export declare class Element { + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/element.js b/dist/gen/model/accounting/element.js new file mode 100644 index 000000000..f7d4f0d10 --- /dev/null +++ b/dist/gen/model/accounting/element.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Element { + static getAttributeTypeMap() { + return Element.attributeTypeMap; + } +} +exports.Element = Element; +Element.discriminator = undefined; +Element.attributeTypeMap = [ + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +//# sourceMappingURL=element.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/element.js.map b/dist/gen/model/accounting/element.js.map new file mode 100644 index 000000000..f41f187f9 --- /dev/null +++ b/dist/gen/model/accounting/element.js.map @@ -0,0 +1 @@ +{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/element.ts"],"names":[],"mappings":";;AAcA,MAAa,OAAO;IAehB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AAjBL,0BAkBC;AAZU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/employee.d.ts b/dist/gen/model/accounting/employee.d.ts new file mode 100644 index 000000000..9ba95b49b --- /dev/null +++ b/dist/gen/model/accounting/employee.d.ts @@ -0,0 +1,27 @@ +import { ExternalLink } from './externalLink'; +export declare class Employee { + 'employeeID'?: string; + 'status'?: Employee.StatusEnum; + 'firstName'?: string; + 'lastName'?: string; + 'externalLink'?: ExternalLink; + 'updatedDateUTC'?: Date; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Employee { + enum StatusEnum { + ACTIVE, + ARCHIVED, + GDPRREQUEST + } +} diff --git a/dist/gen/model/accounting/employee.js b/dist/gen/model/accounting/employee.js new file mode 100644 index 000000000..4063183fe --- /dev/null +++ b/dist/gen/model/accounting/employee.js @@ -0,0 +1,50 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Employee { + static getAttributeTypeMap() { + return Employee.attributeTypeMap; + } +} +exports.Employee = Employee; +Employee.discriminator = undefined; +Employee.attributeTypeMap = [ + { + "name": "employeeID", + "baseName": "EmployeeID", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "Employee.StatusEnum" + }, + { + "name": "firstName", + "baseName": "FirstName", + "type": "string" + }, + { + "name": "lastName", + "baseName": "LastName", + "type": "string" + }, + { + "name": "externalLink", + "baseName": "ExternalLink", + "type": "ExternalLink" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + } +]; +(function (Employee) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + StatusEnum[StatusEnum["GDPRREQUEST"] = 'GDPRREQUEST'] = "GDPRREQUEST"; + })(StatusEnum = Employee.StatusEnum || (Employee.StatusEnum = {})); +})(Employee = exports.Employee || (exports.Employee = {})); +//# sourceMappingURL=employee.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/employee.js.map b/dist/gen/model/accounting/employee.js.map new file mode 100644 index 000000000..fd367d7d7 --- /dev/null +++ b/dist/gen/model/accounting/employee.js.map @@ -0,0 +1 @@ +{"version":3,"file":"employee.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/employee.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAsDjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAxDL,4BAyDC;AArCU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,qBAAqB;KAChC;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;CAAK,CAAC;AAOf,WAAiB,QAAQ;IACrB,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,kCAAe,QAAQ,YAAA,CAAA;QACvB,oCAAiB,UAAU,cAAA,CAAA;QAC3B,uCAAoB,aAAa,iBAAA,CAAA;IACrC,CAAC,EAJW,UAAU,GAAV,mBAAU,KAAV,mBAAU,QAIrB;AACL,CAAC,EANgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAMxB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/employees.d.ts b/dist/gen/model/accounting/employees.d.ts new file mode 100644 index 000000000..a3def9a90 --- /dev/null +++ b/dist/gen/model/accounting/employees.d.ts @@ -0,0 +1,15 @@ +import { Employee } from './employee'; +export declare class Employees { + 'employees'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/employees.js b/dist/gen/model/accounting/employees.js new file mode 100644 index 000000000..c67553da1 --- /dev/null +++ b/dist/gen/model/accounting/employees.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Employees { + static getAttributeTypeMap() { + return Employees.attributeTypeMap; + } +} +exports.Employees = Employees; +Employees.discriminator = undefined; +Employees.attributeTypeMap = [ + { + "name": "employees", + "baseName": "Employees", + "type": "Array" + } +]; +//# sourceMappingURL=employees.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/employees.js.map b/dist/gen/model/accounting/employees.js.map new file mode 100644 index 000000000..800c644b8 --- /dev/null +++ b/dist/gen/model/accounting/employees.js.map @@ -0,0 +1 @@ +{"version":3,"file":"employees.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/employees.ts"],"names":[],"mappings":";;AAcA,MAAa,SAAS;IAYlB,MAAM,CAAC,mBAAmB;QACtB,OAAO,SAAS,CAAC,gBAAgB,CAAC;IACtC,CAAC;;AAdL,8BAeC;AAZU,uBAAa,GAAuB,SAAS,CAAC;AAE9C,0BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/expenseClaim.d.ts b/dist/gen/model/accounting/expenseClaim.d.ts new file mode 100644 index 000000000..952cb3600 --- /dev/null +++ b/dist/gen/model/accounting/expenseClaim.d.ts @@ -0,0 +1,37 @@ +import { Payment } from './payment'; +import { Receipt } from './receipt'; +import { User } from './user'; +export declare class ExpenseClaim { + 'expenseClaimID'?: string; + 'status'?: ExpenseClaim.StatusEnum; + 'payments'?: Array; + 'user'?: User; + 'receipts'?: Array; + 'updatedDateUTC'?: Date; + 'total'?: number; + 'amountDue'?: number; + 'amountPaid'?: number; + 'paymentDueDate'?: string; + 'reportingDate'?: string; + 'receiptID'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace ExpenseClaim { + enum StatusEnum { + SUBMITTED, + AUTHORISED, + PAID, + VOIDED, + DELETED + } +} diff --git a/dist/gen/model/accounting/expenseClaim.js b/dist/gen/model/accounting/expenseClaim.js new file mode 100644 index 000000000..6c01a9106 --- /dev/null +++ b/dist/gen/model/accounting/expenseClaim.js @@ -0,0 +1,82 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ExpenseClaim { + static getAttributeTypeMap() { + return ExpenseClaim.attributeTypeMap; + } +} +exports.ExpenseClaim = ExpenseClaim; +ExpenseClaim.discriminator = undefined; +ExpenseClaim.attributeTypeMap = [ + { + "name": "expenseClaimID", + "baseName": "ExpenseClaimID", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "ExpenseClaim.StatusEnum" + }, + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + }, + { + "name": "user", + "baseName": "User", + "type": "User" + }, + { + "name": "receipts", + "baseName": "Receipts", + "type": "Array" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "amountDue", + "baseName": "AmountDue", + "type": "number" + }, + { + "name": "amountPaid", + "baseName": "AmountPaid", + "type": "number" + }, + { + "name": "paymentDueDate", + "baseName": "PaymentDueDate", + "type": "string" + }, + { + "name": "reportingDate", + "baseName": "ReportingDate", + "type": "string" + }, + { + "name": "receiptID", + "baseName": "ReceiptID", + "type": "string" + } +]; +(function (ExpenseClaim) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["SUBMITTED"] = 'SUBMITTED'] = "SUBMITTED"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["PAID"] = 'PAID'] = "PAID"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = ExpenseClaim.StatusEnum || (ExpenseClaim.StatusEnum = {})); +})(ExpenseClaim = exports.ExpenseClaim || (exports.ExpenseClaim = {})); +//# sourceMappingURL=expenseClaim.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/expenseClaim.js.map b/dist/gen/model/accounting/expenseClaim.js.map new file mode 100644 index 000000000..09f84d1ed --- /dev/null +++ b/dist/gen/model/accounting/expenseClaim.js.map @@ -0,0 +1 @@ +{"version":3,"file":"expenseClaim.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/expenseClaim.ts"],"names":[],"mappings":";;AAgBA,MAAa,YAAY;IA4GrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AA9GL,oCA+GC;AAnEU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,YAAY;IACzB,IAAY,UAMX;IAND,WAAY,UAAU;QAClB,qCAAkB,WAAW,eAAA,CAAA;QAC7B,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,gCAAa,MAAM,UAAA,CAAA;QACnB,kCAAe,QAAQ,YAAA,CAAA;QACvB,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EANW,UAAU,GAAV,uBAAU,KAAV,uBAAU,QAMrB;AACL,CAAC,EARgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQ5B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/expenseClaims.d.ts b/dist/gen/model/accounting/expenseClaims.d.ts new file mode 100644 index 000000000..4e5a76719 --- /dev/null +++ b/dist/gen/model/accounting/expenseClaims.d.ts @@ -0,0 +1,15 @@ +import { ExpenseClaim } from './expenseClaim'; +export declare class ExpenseClaims { + 'expenseClaims'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/expenseClaims.js b/dist/gen/model/accounting/expenseClaims.js new file mode 100644 index 000000000..5188e2d1b --- /dev/null +++ b/dist/gen/model/accounting/expenseClaims.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ExpenseClaims { + static getAttributeTypeMap() { + return ExpenseClaims.attributeTypeMap; + } +} +exports.ExpenseClaims = ExpenseClaims; +ExpenseClaims.discriminator = undefined; +ExpenseClaims.attributeTypeMap = [ + { + "name": "expenseClaims", + "baseName": "ExpenseClaims", + "type": "Array" + } +]; +//# sourceMappingURL=expenseClaims.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/expenseClaims.js.map b/dist/gen/model/accounting/expenseClaims.js.map new file mode 100644 index 000000000..443031b26 --- /dev/null +++ b/dist/gen/model/accounting/expenseClaims.js.map @@ -0,0 +1 @@ +{"version":3,"file":"expenseClaims.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/expenseClaims.ts"],"names":[],"mappings":";;AAcA,MAAa,aAAa;IAYtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAdL,sCAeC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/externalLink.d.ts b/dist/gen/model/accounting/externalLink.d.ts new file mode 100644 index 000000000..20889ce5f --- /dev/null +++ b/dist/gen/model/accounting/externalLink.d.ts @@ -0,0 +1,25 @@ +export declare class ExternalLink { + 'linkType'?: ExternalLink.LinkTypeEnum; + 'url'?: string; + 'description'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace ExternalLink { + enum LinkTypeEnum { + Facebook, + GooglePlus, + LinkedIn, + Twitter, + Website + } +} diff --git a/dist/gen/model/accounting/externalLink.js b/dist/gen/model/accounting/externalLink.js new file mode 100644 index 000000000..caa33ce9f --- /dev/null +++ b/dist/gen/model/accounting/externalLink.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ExternalLink { + static getAttributeTypeMap() { + return ExternalLink.attributeTypeMap; + } +} +exports.ExternalLink = ExternalLink; +ExternalLink.discriminator = undefined; +ExternalLink.attributeTypeMap = [ + { + "name": "linkType", + "baseName": "LinkType", + "type": "ExternalLink.LinkTypeEnum" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + } +]; +(function (ExternalLink) { + let LinkTypeEnum; + (function (LinkTypeEnum) { + LinkTypeEnum[LinkTypeEnum["Facebook"] = 'Facebook'] = "Facebook"; + LinkTypeEnum[LinkTypeEnum["GooglePlus"] = 'GooglePlus'] = "GooglePlus"; + LinkTypeEnum[LinkTypeEnum["LinkedIn"] = 'LinkedIn'] = "LinkedIn"; + LinkTypeEnum[LinkTypeEnum["Twitter"] = 'Twitter'] = "Twitter"; + LinkTypeEnum[LinkTypeEnum["Website"] = 'Website'] = "Website"; + })(LinkTypeEnum = ExternalLink.LinkTypeEnum || (ExternalLink.LinkTypeEnum = {})); +})(ExternalLink = exports.ExternalLink || (exports.ExternalLink = {})); +//# sourceMappingURL=externalLink.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/externalLink.js.map b/dist/gen/model/accounting/externalLink.js.map new file mode 100644 index 000000000..fc054314f --- /dev/null +++ b/dist/gen/model/accounting/externalLink.js.map @@ -0,0 +1 @@ +{"version":3,"file":"externalLink.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/externalLink.ts"],"names":[],"mappings":";;AAaA,MAAa,YAAY;IA8BrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AAhCL,oCAiCC;AAtBU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,2BAA2B;KACtC;IACD;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,YAAY;IACzB,IAAY,YAMX;IAND,WAAY,YAAY;QACpB,wCAAiB,UAAU,cAAA,CAAA;QAC3B,0CAAmB,YAAY,gBAAA,CAAA;QAC/B,wCAAiB,UAAU,cAAA,CAAA;QAC3B,uCAAgB,SAAS,aAAA,CAAA;QACzB,uCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EANW,YAAY,GAAZ,yBAAY,KAAZ,yBAAY,QAMvB;AACL,CAAC,EARgB,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQ5B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/historyRecord.d.ts b/dist/gen/model/accounting/historyRecord.d.ts new file mode 100644 index 000000000..e94a1c119 --- /dev/null +++ b/dist/gen/model/accounting/historyRecord.d.ts @@ -0,0 +1,17 @@ +export declare class HistoryRecord { + 'details'?: string; + 'changes'?: string; + 'user'?: string; + 'dateUTC'?: Date; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/historyRecord.js b/dist/gen/model/accounting/historyRecord.js new file mode 100644 index 000000000..d680d8014 --- /dev/null +++ b/dist/gen/model/accounting/historyRecord.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class HistoryRecord { + static getAttributeTypeMap() { + return HistoryRecord.attributeTypeMap; + } +} +exports.HistoryRecord = HistoryRecord; +HistoryRecord.discriminator = undefined; +HistoryRecord.attributeTypeMap = [ + { + "name": "details", + "baseName": "Details", + "type": "string" + }, + { + "name": "changes", + "baseName": "Changes", + "type": "string" + }, + { + "name": "user", + "baseName": "User", + "type": "string" + }, + { + "name": "dateUTC", + "baseName": "DateUTC", + "type": "Date" + } +]; +//# sourceMappingURL=historyRecord.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/historyRecord.js.map b/dist/gen/model/accounting/historyRecord.js.map new file mode 100644 index 000000000..e1c973d90 --- /dev/null +++ b/dist/gen/model/accounting/historyRecord.js.map @@ -0,0 +1 @@ +{"version":3,"file":"historyRecord.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/historyRecord.ts"],"names":[],"mappings":";;AAaA,MAAa,aAAa;IA0CtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AA5CL,sCA6CC;AA3BU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,MAAM;KACjB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/historyRecords.d.ts b/dist/gen/model/accounting/historyRecords.d.ts new file mode 100644 index 000000000..a8a98203d --- /dev/null +++ b/dist/gen/model/accounting/historyRecords.d.ts @@ -0,0 +1,15 @@ +import { HistoryRecord } from './historyRecord'; +export declare class HistoryRecords { + 'historyRecords'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/historyRecords.js b/dist/gen/model/accounting/historyRecords.js new file mode 100644 index 000000000..2c5960f9a --- /dev/null +++ b/dist/gen/model/accounting/historyRecords.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class HistoryRecords { + static getAttributeTypeMap() { + return HistoryRecords.attributeTypeMap; + } +} +exports.HistoryRecords = HistoryRecords; +HistoryRecords.discriminator = undefined; +HistoryRecords.attributeTypeMap = [ + { + "name": "historyRecords", + "baseName": "HistoryRecords", + "type": "Array" + } +]; +//# sourceMappingURL=historyRecords.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/historyRecords.js.map b/dist/gen/model/accounting/historyRecords.js.map new file mode 100644 index 000000000..f4f91e30a --- /dev/null +++ b/dist/gen/model/accounting/historyRecords.js.map @@ -0,0 +1 @@ +{"version":3,"file":"historyRecords.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/historyRecords.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/invoice.d.ts b/dist/gen/model/accounting/invoice.d.ts new file mode 100644 index 000000000..f14236c1f --- /dev/null +++ b/dist/gen/model/accounting/invoice.d.ts @@ -0,0 +1,77 @@ +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { CreditNote } from './creditNote'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { Overpayment } from './overpayment'; +import { Payment } from './payment'; +import { Prepayment } from './prepayment'; +import { ValidationError } from './validationError'; +export declare class Invoice { + 'type': Invoice.TypeEnum; + 'contact': Contact; + 'lineItems': Array; + 'date'?: string; + 'dueDate'?: string; + 'lineAmountTypes'?: LineAmountTypes; + 'invoiceNumber'?: string; + 'reference'?: string; + 'brandingThemeID'?: string; + 'url'?: string; + 'currencyCode'?: CurrencyCode; + 'currencyRate'?: number; + 'status'?: Invoice.StatusEnum; + 'sentToContact'?: boolean; + 'expectedPaymentDate'?: string; + 'plannedPaymentDate'?: string; + 'cISDeduction'?: number; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'totalDiscount'?: number; + 'invoiceID'?: string; + 'hasAttachments'?: boolean; + 'isDiscounted'?: boolean; + 'payments'?: Array; + 'prepayments'?: Array; + 'overpayments'?: Array; + 'amountDue'?: number; + 'amountPaid'?: number; + 'fullyPaidOnDate'?: string; + 'amountCredited'?: number; + 'updatedDateUTC'?: Date; + 'creditNotes'?: Array; + 'attachments'?: Array; + 'hasErrors'?: boolean; + 'statusAttributeString'?: string; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Invoice { + enum TypeEnum { + ACCPAY, + ACCPAYCREDIT, + AROVERPAYMENT, + ACCREC, + ACCRECCREDIT + } + enum StatusEnum { + DRAFT, + SUBMITTED, + DELETED, + AUTHORISED, + PAID, + VOIDED + } +} diff --git a/dist/gen/model/accounting/invoice.js b/dist/gen/model/accounting/invoice.js new file mode 100644 index 000000000..19391fef2 --- /dev/null +++ b/dist/gen/model/accounting/invoice.js @@ -0,0 +1,216 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Invoice { + static getAttributeTypeMap() { + return Invoice.attributeTypeMap; + } +} +exports.Invoice = Invoice; +Invoice.discriminator = undefined; +Invoice.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "Invoice.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "dueDate", + "baseName": "DueDate", + "type": "string" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "invoiceNumber", + "baseName": "InvoiceNumber", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "status", + "baseName": "Status", + "type": "Invoice.StatusEnum" + }, + { + "name": "sentToContact", + "baseName": "SentToContact", + "type": "boolean" + }, + { + "name": "expectedPaymentDate", + "baseName": "ExpectedPaymentDate", + "type": "string" + }, + { + "name": "plannedPaymentDate", + "baseName": "PlannedPaymentDate", + "type": "string" + }, + { + "name": "cISDeduction", + "baseName": "CISDeduction", + "type": "number" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "totalDiscount", + "baseName": "TotalDiscount", + "type": "number" + }, + { + "name": "invoiceID", + "baseName": "InvoiceID", + "type": "string" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "isDiscounted", + "baseName": "IsDiscounted", + "type": "boolean" + }, + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + }, + { + "name": "prepayments", + "baseName": "Prepayments", + "type": "Array" + }, + { + "name": "overpayments", + "baseName": "Overpayments", + "type": "Array" + }, + { + "name": "amountDue", + "baseName": "AmountDue", + "type": "number" + }, + { + "name": "amountPaid", + "baseName": "AmountPaid", + "type": "number" + }, + { + "name": "fullyPaidOnDate", + "baseName": "FullyPaidOnDate", + "type": "string" + }, + { + "name": "amountCredited", + "baseName": "AmountCredited", + "type": "number" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "creditNotes", + "baseName": "CreditNotes", + "type": "Array" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + }, + { + "name": "hasErrors", + "baseName": "HasErrors", + "type": "boolean" + }, + { + "name": "statusAttributeString", + "baseName": "StatusAttributeString", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (Invoice) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["ACCPAY"] = 'ACCPAY'] = "ACCPAY"; + TypeEnum[TypeEnum["ACCPAYCREDIT"] = 'ACCPAYCREDIT'] = "ACCPAYCREDIT"; + TypeEnum[TypeEnum["AROVERPAYMENT"] = 'AROVERPAYMENT'] = "AROVERPAYMENT"; + TypeEnum[TypeEnum["ACCREC"] = 'ACCREC'] = "ACCREC"; + TypeEnum[TypeEnum["ACCRECCREDIT"] = 'ACCRECCREDIT'] = "ACCRECCREDIT"; + })(TypeEnum = Invoice.TypeEnum || (Invoice.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["SUBMITTED"] = 'SUBMITTED'] = "SUBMITTED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["PAID"] = 'PAID'] = "PAID"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = Invoice.StatusEnum || (Invoice.StatusEnum = {})); +})(Invoice = exports.Invoice || (exports.Invoice = {})); +//# sourceMappingURL=invoice.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/invoice.js.map b/dist/gen/model/accounting/invoice.js.map new file mode 100644 index 000000000..f79937e4a --- /dev/null +++ b/dist/gen/model/accounting/invoice.js.map @@ -0,0 +1 @@ +{"version":3,"file":"invoice.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/invoice.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/invoiceReminder.d.ts b/dist/gen/model/accounting/invoiceReminder.d.ts new file mode 100644 index 000000000..c999b2d0c --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminder.d.ts @@ -0,0 +1,14 @@ +export declare class InvoiceReminder { + 'enabled'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/invoiceReminder.js b/dist/gen/model/accounting/invoiceReminder.js new file mode 100644 index 000000000..5f11ad9e0 --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminder.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class InvoiceReminder { + static getAttributeTypeMap() { + return InvoiceReminder.attributeTypeMap; + } +} +exports.InvoiceReminder = InvoiceReminder; +InvoiceReminder.discriminator = undefined; +InvoiceReminder.attributeTypeMap = [ + { + "name": "enabled", + "baseName": "Enabled", + "type": "boolean" + } +]; +//# sourceMappingURL=invoiceReminder.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/invoiceReminder.js.map b/dist/gen/model/accounting/invoiceReminder.js.map new file mode 100644 index 000000000..6d8eacef5 --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminder.js.map @@ -0,0 +1 @@ +{"version":3,"file":"invoiceReminder.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/invoiceReminder.ts"],"names":[],"mappings":";;AAaA,MAAa,eAAe;IAexB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AAjBL,0CAkBC;AAZU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/invoiceReminders.d.ts b/dist/gen/model/accounting/invoiceReminders.d.ts new file mode 100644 index 000000000..d403a727d --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminders.d.ts @@ -0,0 +1,15 @@ +import { InvoiceReminder } from './invoiceReminder'; +export declare class InvoiceReminders { + 'invoiceReminders'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/invoiceReminders.js b/dist/gen/model/accounting/invoiceReminders.js new file mode 100644 index 000000000..7d22aa5b4 --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminders.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class InvoiceReminders { + static getAttributeTypeMap() { + return InvoiceReminders.attributeTypeMap; + } +} +exports.InvoiceReminders = InvoiceReminders; +InvoiceReminders.discriminator = undefined; +InvoiceReminders.attributeTypeMap = [ + { + "name": "invoiceReminders", + "baseName": "InvoiceReminders", + "type": "Array" + } +]; +//# sourceMappingURL=invoiceReminders.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/invoiceReminders.js.map b/dist/gen/model/accounting/invoiceReminders.js.map new file mode 100644 index 000000000..9681c89fe --- /dev/null +++ b/dist/gen/model/accounting/invoiceReminders.js.map @@ -0,0 +1 @@ +{"version":3,"file":"invoiceReminders.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/invoiceReminders.ts"],"names":[],"mappings":";;AAcA,MAAa,gBAAgB;IAYzB,MAAM,CAAC,mBAAmB;QACtB,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;;AAdL,4CAeC;AAZU,8BAAa,GAAuB,SAAS,CAAC;AAE9C,iCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/invoices.d.ts b/dist/gen/model/accounting/invoices.d.ts new file mode 100644 index 000000000..151c3938f --- /dev/null +++ b/dist/gen/model/accounting/invoices.d.ts @@ -0,0 +1,15 @@ +import { Invoice } from './invoice'; +export declare class Invoices { + 'invoices'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/invoices.js b/dist/gen/model/accounting/invoices.js new file mode 100644 index 000000000..753ca999a --- /dev/null +++ b/dist/gen/model/accounting/invoices.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Invoices { + static getAttributeTypeMap() { + return Invoices.attributeTypeMap; + } +} +exports.Invoices = Invoices; +Invoices.discriminator = undefined; +Invoices.attributeTypeMap = [ + { + "name": "invoices", + "baseName": "Invoices", + "type": "Array" + } +]; +//# sourceMappingURL=invoices.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/invoices.js.map b/dist/gen/model/accounting/invoices.js.map new file mode 100644 index 000000000..0b1f767ba --- /dev/null +++ b/dist/gen/model/accounting/invoices.js.map @@ -0,0 +1 @@ +{"version":3,"file":"invoices.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/invoices.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/item.d.ts b/dist/gen/model/accounting/item.d.ts new file mode 100644 index 000000000..b70996d2f --- /dev/null +++ b/dist/gen/model/accounting/item.d.ts @@ -0,0 +1,30 @@ +import { Purchase } from './purchase'; +import { ValidationError } from './validationError'; +export declare class Item { + 'code': string; + 'inventoryAssetAccountCode': string; + 'name'?: string; + 'isSold'?: boolean; + 'isPurchased'?: boolean; + 'description'?: string; + 'purchaseDescription'?: string; + 'purchaseDetails'?: Purchase; + 'salesDetails'?: Purchase; + 'isTrackedAsInventory'?: boolean; + 'totalCostPool'?: number; + 'quantityOnHand'?: number; + 'updatedDateUTC'?: Date; + 'itemID'?: string; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/item.js b/dist/gen/model/accounting/item.js new file mode 100644 index 000000000..6d671854c --- /dev/null +++ b/dist/gen/model/accounting/item.js @@ -0,0 +1,87 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Item { + static getAttributeTypeMap() { + return Item.attributeTypeMap; + } +} +exports.Item = Item; +Item.discriminator = undefined; +Item.attributeTypeMap = [ + { + "name": "code", + "baseName": "Code", + "type": "string" + }, + { + "name": "inventoryAssetAccountCode", + "baseName": "InventoryAssetAccountCode", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "isSold", + "baseName": "IsSold", + "type": "boolean" + }, + { + "name": "isPurchased", + "baseName": "IsPurchased", + "type": "boolean" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "purchaseDescription", + "baseName": "PurchaseDescription", + "type": "string" + }, + { + "name": "purchaseDetails", + "baseName": "PurchaseDetails", + "type": "Purchase" + }, + { + "name": "salesDetails", + "baseName": "SalesDetails", + "type": "Purchase" + }, + { + "name": "isTrackedAsInventory", + "baseName": "IsTrackedAsInventory", + "type": "boolean" + }, + { + "name": "totalCostPool", + "baseName": "TotalCostPool", + "type": "number" + }, + { + "name": "quantityOnHand", + "baseName": "QuantityOnHand", + "type": "number" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "itemID", + "baseName": "ItemID", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +//# sourceMappingURL=item.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/item.js.map b/dist/gen/model/accounting/item.js.map new file mode 100644 index 000000000..d87c650de --- /dev/null +++ b/dist/gen/model/accounting/item.js.map @@ -0,0 +1 @@ +{"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/item.ts"],"names":[],"mappings":";;AAeA,MAAa,IAAI;IAuIb,MAAM,CAAC,mBAAmB;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;;AAzIL,oBA0IC;AAlFU,kBAAa,GAAuB,SAAS,CAAC;AAE9C,qBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,2BAA2B;QACnC,UAAU,EAAE,2BAA2B;QACvC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,UAAU;KACrB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,UAAU;KACrB;IACD;QACI,MAAM,EAAE,sBAAsB;QAC9B,UAAU,EAAE,sBAAsB;QAClC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/items.d.ts b/dist/gen/model/accounting/items.d.ts new file mode 100644 index 000000000..b8b4dc357 --- /dev/null +++ b/dist/gen/model/accounting/items.d.ts @@ -0,0 +1,15 @@ +import { Item } from './item'; +export declare class Items { + 'items'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/items.js b/dist/gen/model/accounting/items.js new file mode 100644 index 000000000..cfdf398fe --- /dev/null +++ b/dist/gen/model/accounting/items.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Items { + static getAttributeTypeMap() { + return Items.attributeTypeMap; + } +} +exports.Items = Items; +Items.discriminator = undefined; +Items.attributeTypeMap = [ + { + "name": "items", + "baseName": "Items", + "type": "Array" + } +]; +//# sourceMappingURL=items.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/items.js.map b/dist/gen/model/accounting/items.js.map new file mode 100644 index 000000000..32fbc77f2 --- /dev/null +++ b/dist/gen/model/accounting/items.js.map @@ -0,0 +1 @@ +{"version":3,"file":"items.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/items.ts"],"names":[],"mappings":";;AAcA,MAAa,KAAK;IAYd,MAAM,CAAC,mBAAmB;QACtB,OAAO,KAAK,CAAC,gBAAgB,CAAC;IAClC,CAAC;;AAdL,sBAeC;AAZU,mBAAa,GAAuB,SAAS,CAAC;AAE9C,sBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,aAAa;KACxB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/journal.d.ts b/dist/gen/model/accounting/journal.d.ts new file mode 100644 index 000000000..db4d9e457 --- /dev/null +++ b/dist/gen/model/accounting/journal.d.ts @@ -0,0 +1,51 @@ +import { JournalLine } from './journalLine'; +export declare class Journal { + 'journalID'?: string; + 'journalDate'?: string; + 'journalNumber'?: string; + 'createdDateUTC'?: Date; + 'reference'?: string; + 'sourceID'?: string; + 'sourceType'?: Journal.SourceTypeEnum; + 'journalLines'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Journal { + enum SourceTypeEnum { + ACCREC, + ACCPAY, + ACCRECCREDIT, + ACCPAYCREDIT, + ACCRECPAYMENT, + ACCPAYPAYMENT, + ARCREDITPAYMENT, + APCREDITPAYMENT, + CASHREC, + CASHPAID, + TRANSFER, + ARPREPAYMENT, + APPREPAYMENT, + AROVERPAYMENT, + APOVERPAYMENT, + EXPCLAIM, + EXPPAYMENT, + MANJOURNAL, + PAYSLIP, + WAGEPAYABLE, + INTEGRATEDPAYROLLPE, + INTEGRATEDPAYROLLPT, + EXTERNALSPENDMONEY, + INTEGRATEDPAYROLLPTPAYMENT, + INTEGRATEDPAYROLLCN + } +} diff --git a/dist/gen/model/accounting/journal.js b/dist/gen/model/accounting/journal.js new file mode 100644 index 000000000..217c797c3 --- /dev/null +++ b/dist/gen/model/accounting/journal.js @@ -0,0 +1,82 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Journal { + static getAttributeTypeMap() { + return Journal.attributeTypeMap; + } +} +exports.Journal = Journal; +Journal.discriminator = undefined; +Journal.attributeTypeMap = [ + { + "name": "journalID", + "baseName": "JournalID", + "type": "string" + }, + { + "name": "journalDate", + "baseName": "JournalDate", + "type": "string" + }, + { + "name": "journalNumber", + "baseName": "JournalNumber", + "type": "string" + }, + { + "name": "createdDateUTC", + "baseName": "CreatedDateUTC", + "type": "Date" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "sourceID", + "baseName": "SourceID", + "type": "string" + }, + { + "name": "sourceType", + "baseName": "SourceType", + "type": "Journal.SourceTypeEnum" + }, + { + "name": "journalLines", + "baseName": "JournalLines", + "type": "Array" + } +]; +(function (Journal) { + let SourceTypeEnum; + (function (SourceTypeEnum) { + SourceTypeEnum[SourceTypeEnum["ACCREC"] = 'ACCREC'] = "ACCREC"; + SourceTypeEnum[SourceTypeEnum["ACCPAY"] = 'ACCPAY'] = "ACCPAY"; + SourceTypeEnum[SourceTypeEnum["ACCRECCREDIT"] = 'ACCRECCREDIT'] = "ACCRECCREDIT"; + SourceTypeEnum[SourceTypeEnum["ACCPAYCREDIT"] = 'ACCPAYCREDIT'] = "ACCPAYCREDIT"; + SourceTypeEnum[SourceTypeEnum["ACCRECPAYMENT"] = 'ACCRECPAYMENT'] = "ACCRECPAYMENT"; + SourceTypeEnum[SourceTypeEnum["ACCPAYPAYMENT"] = 'ACCPAYPAYMENT'] = "ACCPAYPAYMENT"; + SourceTypeEnum[SourceTypeEnum["ARCREDITPAYMENT"] = 'ARCREDITPAYMENT'] = "ARCREDITPAYMENT"; + SourceTypeEnum[SourceTypeEnum["APCREDITPAYMENT"] = 'APCREDITPAYMENT'] = "APCREDITPAYMENT"; + SourceTypeEnum[SourceTypeEnum["CASHREC"] = 'CASHREC'] = "CASHREC"; + SourceTypeEnum[SourceTypeEnum["CASHPAID"] = 'CASHPAID'] = "CASHPAID"; + SourceTypeEnum[SourceTypeEnum["TRANSFER"] = 'TRANSFER'] = "TRANSFER"; + SourceTypeEnum[SourceTypeEnum["ARPREPAYMENT"] = 'ARPREPAYMENT'] = "ARPREPAYMENT"; + SourceTypeEnum[SourceTypeEnum["APPREPAYMENT"] = 'APPREPAYMENT'] = "APPREPAYMENT"; + SourceTypeEnum[SourceTypeEnum["AROVERPAYMENT"] = 'AROVERPAYMENT'] = "AROVERPAYMENT"; + SourceTypeEnum[SourceTypeEnum["APOVERPAYMENT"] = 'APOVERPAYMENT'] = "APOVERPAYMENT"; + SourceTypeEnum[SourceTypeEnum["EXPCLAIM"] = 'EXPCLAIM'] = "EXPCLAIM"; + SourceTypeEnum[SourceTypeEnum["EXPPAYMENT"] = 'EXPPAYMENT'] = "EXPPAYMENT"; + SourceTypeEnum[SourceTypeEnum["MANJOURNAL"] = 'MANJOURNAL'] = "MANJOURNAL"; + SourceTypeEnum[SourceTypeEnum["PAYSLIP"] = 'PAYSLIP'] = "PAYSLIP"; + SourceTypeEnum[SourceTypeEnum["WAGEPAYABLE"] = 'WAGEPAYABLE'] = "WAGEPAYABLE"; + SourceTypeEnum[SourceTypeEnum["INTEGRATEDPAYROLLPE"] = 'INTEGRATEDPAYROLLPE'] = "INTEGRATEDPAYROLLPE"; + SourceTypeEnum[SourceTypeEnum["INTEGRATEDPAYROLLPT"] = 'INTEGRATEDPAYROLLPT'] = "INTEGRATEDPAYROLLPT"; + SourceTypeEnum[SourceTypeEnum["EXTERNALSPENDMONEY"] = 'EXTERNALSPENDMONEY'] = "EXTERNALSPENDMONEY"; + SourceTypeEnum[SourceTypeEnum["INTEGRATEDPAYROLLPTPAYMENT"] = 'INTEGRATEDPAYROLLPTPAYMENT'] = "INTEGRATEDPAYROLLPTPAYMENT"; + SourceTypeEnum[SourceTypeEnum["INTEGRATEDPAYROLLCN"] = 'INTEGRATEDPAYROLLCN'] = "INTEGRATEDPAYROLLCN"; + })(SourceTypeEnum = Journal.SourceTypeEnum || (Journal.SourceTypeEnum = {})); +})(Journal = exports.Journal || (exports.Journal = {})); +//# sourceMappingURL=journal.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/journal.js.map b/dist/gen/model/accounting/journal.js.map new file mode 100644 index 000000000..470efa06a --- /dev/null +++ b/dist/gen/model/accounting/journal.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journal.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/journal.ts"],"names":[],"mappings":";;AAcA,MAAa,OAAO;IA8EhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AAhFL,0BAiFC;AA/CU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,oBAAoB;KAC/B;CAAK,CAAC;AAOf,WAAiB,OAAO;IACpB,IAAY,cA0BX;IA1BD,WAAY,cAAc;QACtB,0CAAe,QAAQ,YAAA,CAAA;QACvB,0CAAe,QAAQ,YAAA,CAAA;QACvB,gDAAqB,cAAc,kBAAA,CAAA;QACnC,gDAAqB,cAAc,kBAAA,CAAA;QACnC,iDAAsB,eAAe,mBAAA,CAAA;QACrC,iDAAsB,eAAe,mBAAA,CAAA;QACrC,mDAAwB,iBAAiB,qBAAA,CAAA;QACzC,mDAAwB,iBAAiB,qBAAA,CAAA;QACzC,2CAAgB,SAAS,aAAA,CAAA;QACzB,4CAAiB,UAAU,cAAA,CAAA;QAC3B,4CAAiB,UAAU,cAAA,CAAA;QAC3B,gDAAqB,cAAc,kBAAA,CAAA;QACnC,gDAAqB,cAAc,kBAAA,CAAA;QACnC,iDAAsB,eAAe,mBAAA,CAAA;QACrC,iDAAsB,eAAe,mBAAA,CAAA;QACrC,4CAAiB,UAAU,cAAA,CAAA;QAC3B,8CAAmB,YAAY,gBAAA,CAAA;QAC/B,8CAAmB,YAAY,gBAAA,CAAA;QAC/B,2CAAgB,SAAS,aAAA,CAAA;QACzB,+CAAoB,aAAa,iBAAA,CAAA;QACjC,uDAA4B,qBAAqB,yBAAA,CAAA;QACjD,uDAA4B,qBAAqB,yBAAA,CAAA;QACjD,sDAA2B,oBAAoB,wBAAA,CAAA;QAC/C,8DAAmC,4BAA4B,gCAAA,CAAA;QAC/D,uDAA4B,qBAAqB,yBAAA,CAAA;IACrD,CAAC,EA1BW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QA0BzB;AACL,CAAC,EA5BgB,OAAO,GAAP,eAAO,KAAP,eAAO,QA4BvB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/journalLine.d.ts b/dist/gen/model/accounting/journalLine.d.ts new file mode 100644 index 000000000..ff6b74149 --- /dev/null +++ b/dist/gen/model/accounting/journalLine.d.ts @@ -0,0 +1,27 @@ +import { AccountType } from './accountType'; +import { TrackingCategory } from './trackingCategory'; +export declare class JournalLine { + 'journalLineID'?: string; + 'accountID'?: string; + 'accountCode'?: string; + 'accountType'?: AccountType; + 'accountName'?: string; + 'description'?: string; + 'netAmount'?: number; + 'grossAmount'?: number; + 'taxAmount'?: number; + 'taxType'?: string; + 'taxName'?: string; + 'trackingCategories'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/journalLine.js b/dist/gen/model/accounting/journalLine.js new file mode 100644 index 000000000..5fde2d1e2 --- /dev/null +++ b/dist/gen/model/accounting/journalLine.js @@ -0,0 +1,72 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class JournalLine { + static getAttributeTypeMap() { + return JournalLine.attributeTypeMap; + } +} +exports.JournalLine = JournalLine; +JournalLine.discriminator = undefined; +JournalLine.attributeTypeMap = [ + { + "name": "journalLineID", + "baseName": "JournalLineID", + "type": "string" + }, + { + "name": "accountID", + "baseName": "AccountID", + "type": "string" + }, + { + "name": "accountCode", + "baseName": "AccountCode", + "type": "string" + }, + { + "name": "accountType", + "baseName": "AccountType", + "type": "AccountType" + }, + { + "name": "accountName", + "baseName": "AccountName", + "type": "string" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "netAmount", + "baseName": "NetAmount", + "type": "number" + }, + { + "name": "grossAmount", + "baseName": "GrossAmount", + "type": "number" + }, + { + "name": "taxAmount", + "baseName": "TaxAmount", + "type": "number" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + }, + { + "name": "taxName", + "baseName": "TaxName", + "type": "string" + }, + { + "name": "trackingCategories", + "baseName": "TrackingCategories", + "type": "Array" + } +]; +//# sourceMappingURL=journalLine.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/journalLine.js.map b/dist/gen/model/accounting/journalLine.js.map new file mode 100644 index 000000000..e611a36e6 --- /dev/null +++ b/dist/gen/model/accounting/journalLine.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journalLine.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/journalLine.ts"],"names":[],"mappings":";;AAeA,MAAa,WAAW;IA+GpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAjHL,kCAkHC;AAnEU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,aAAa;KACxB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,yBAAyB;KACpC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/journals.d.ts b/dist/gen/model/accounting/journals.d.ts new file mode 100644 index 000000000..982e274cd --- /dev/null +++ b/dist/gen/model/accounting/journals.d.ts @@ -0,0 +1,15 @@ +import { Journal } from './journal'; +export declare class Journals { + 'journals'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/journals.js b/dist/gen/model/accounting/journals.js new file mode 100644 index 000000000..e2917991c --- /dev/null +++ b/dist/gen/model/accounting/journals.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Journals { + static getAttributeTypeMap() { + return Journals.attributeTypeMap; + } +} +exports.Journals = Journals; +Journals.discriminator = undefined; +Journals.attributeTypeMap = [ + { + "name": "journals", + "baseName": "Journals", + "type": "Array" + } +]; +//# sourceMappingURL=journals.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/journals.js.map b/dist/gen/model/accounting/journals.js.map new file mode 100644 index 000000000..45d8c110a --- /dev/null +++ b/dist/gen/model/accounting/journals.js.map @@ -0,0 +1 @@ +{"version":3,"file":"journals.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/journals.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/lineAmountTypes.d.ts b/dist/gen/model/accounting/lineAmountTypes.d.ts new file mode 100644 index 000000000..879367aa2 --- /dev/null +++ b/dist/gen/model/accounting/lineAmountTypes.d.ts @@ -0,0 +1,5 @@ +export declare enum LineAmountTypes { + Exclusive, + Inclusive, + NoTax +} diff --git a/dist/gen/model/accounting/lineAmountTypes.js b/dist/gen/model/accounting/lineAmountTypes.js new file mode 100644 index 000000000..ad36feb63 --- /dev/null +++ b/dist/gen/model/accounting/lineAmountTypes.js @@ -0,0 +1,9 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var LineAmountTypes; +(function (LineAmountTypes) { + LineAmountTypes[LineAmountTypes["Exclusive"] = 'Exclusive'] = "Exclusive"; + LineAmountTypes[LineAmountTypes["Inclusive"] = 'Inclusive'] = "Inclusive"; + LineAmountTypes[LineAmountTypes["NoTax"] = 'NoTax'] = "NoTax"; +})(LineAmountTypes = exports.LineAmountTypes || (exports.LineAmountTypes = {})); +//# sourceMappingURL=lineAmountTypes.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/lineAmountTypes.js.map b/dist/gen/model/accounting/lineAmountTypes.js.map new file mode 100644 index 000000000..c79567b0c --- /dev/null +++ b/dist/gen/model/accounting/lineAmountTypes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lineAmountTypes.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/lineAmountTypes.ts"],"names":[],"mappings":";;AAgBA,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,+CAAkB,WAAW,eAAA,CAAA;IAC7B,+CAAkB,WAAW,eAAA,CAAA;IAC7B,2CAAc,OAAO,WAAA,CAAA;AACzB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/lineItem.d.ts b/dist/gen/model/accounting/lineItem.d.ts new file mode 100644 index 000000000..f6299da84 --- /dev/null +++ b/dist/gen/model/accounting/lineItem.d.ts @@ -0,0 +1,27 @@ +import { LineItemTracking } from './lineItemTracking'; +export declare class LineItem { + 'lineItemID'?: string; + 'description'?: string; + 'quantity'?: number; + 'unitAmount'?: number; + 'itemCode'?: string; + 'accountCode'?: string; + 'taxType'?: string; + 'taxAmount'?: number; + 'lineAmount'?: number; + 'tracking'?: Array; + 'discountRate'?: string; + 'discountAmount'?: number; + 'repeatingInvoiceID'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/lineItem.js b/dist/gen/model/accounting/lineItem.js new file mode 100644 index 000000000..9b64cdc6d --- /dev/null +++ b/dist/gen/model/accounting/lineItem.js @@ -0,0 +1,77 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class LineItem { + static getAttributeTypeMap() { + return LineItem.attributeTypeMap; + } +} +exports.LineItem = LineItem; +LineItem.discriminator = undefined; +LineItem.attributeTypeMap = [ + { + "name": "lineItemID", + "baseName": "LineItemID", + "type": "string" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "quantity", + "baseName": "Quantity", + "type": "number" + }, + { + "name": "unitAmount", + "baseName": "UnitAmount", + "type": "number" + }, + { + "name": "itemCode", + "baseName": "ItemCode", + "type": "string" + }, + { + "name": "accountCode", + "baseName": "AccountCode", + "type": "string" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + }, + { + "name": "taxAmount", + "baseName": "TaxAmount", + "type": "number" + }, + { + "name": "lineAmount", + "baseName": "LineAmount", + "type": "number" + }, + { + "name": "tracking", + "baseName": "Tracking", + "type": "Array" + }, + { + "name": "discountRate", + "baseName": "DiscountRate", + "type": "string" + }, + { + "name": "discountAmount", + "baseName": "DiscountAmount", + "type": "number" + }, + { + "name": "repeatingInvoiceID", + "baseName": "RepeatingInvoiceID", + "type": "string" + } +]; +//# sourceMappingURL=lineItem.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/lineItem.js.map b/dist/gen/model/accounting/lineItem.js.map new file mode 100644 index 000000000..8c2eadb11 --- /dev/null +++ b/dist/gen/model/accounting/lineItem.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lineItem.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/lineItem.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IA2HjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AA7HL,4BA8HC;AAxEU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/lineItemTracking.d.ts b/dist/gen/model/accounting/lineItemTracking.d.ts new file mode 100644 index 000000000..ade0a6057 --- /dev/null +++ b/dist/gen/model/accounting/lineItemTracking.d.ts @@ -0,0 +1,16 @@ +export declare class LineItemTracking { + 'trackingCategoryID'?: string; + 'name'?: string; + 'option'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/lineItemTracking.js b/dist/gen/model/accounting/lineItemTracking.js new file mode 100644 index 000000000..1c3c7d02b --- /dev/null +++ b/dist/gen/model/accounting/lineItemTracking.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class LineItemTracking { + static getAttributeTypeMap() { + return LineItemTracking.attributeTypeMap; + } +} +exports.LineItemTracking = LineItemTracking; +LineItemTracking.discriminator = undefined; +LineItemTracking.attributeTypeMap = [ + { + "name": "trackingCategoryID", + "baseName": "TrackingCategoryID", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "option", + "baseName": "Option", + "type": "string" + } +]; +//# sourceMappingURL=lineItemTracking.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/lineItemTracking.js.map b/dist/gen/model/accounting/lineItemTracking.js.map new file mode 100644 index 000000000..18166d0e0 --- /dev/null +++ b/dist/gen/model/accounting/lineItemTracking.js.map @@ -0,0 +1 @@ +{"version":3,"file":"lineItemTracking.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/lineItemTracking.ts"],"names":[],"mappings":";;AAaA,MAAa,gBAAgB;IAiCzB,MAAM,CAAC,mBAAmB;QACtB,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;;AAnCL,4CAoCC;AAtBU,8BAAa,GAAuB,SAAS,CAAC;AAE9C,iCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/linkedTransaction.d.ts b/dist/gen/model/accounting/linkedTransaction.d.ts new file mode 100644 index 000000000..676bd74fe --- /dev/null +++ b/dist/gen/model/accounting/linkedTransaction.d.ts @@ -0,0 +1,41 @@ +import { ValidationError } from './validationError'; +export declare class LinkedTransaction { + 'sourceTransactionID'?: string; + 'sourceLineItemID': string; + 'contactID'?: string; + 'targetTransactionID'?: string; + 'targetLineItemID'?: string; + 'linkedTransactionID'?: string; + 'status'?: LinkedTransaction.StatusEnum; + 'type'?: LinkedTransaction.TypeEnum; + 'updatedDateUTC'?: Date; + 'sourceTransactionTypeCode'?: LinkedTransaction.SourceTransactionTypeCodeEnum; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace LinkedTransaction { + enum StatusEnum { + APPROVED, + DRAFT, + ONDRAFT, + BILLED, + VOIDED + } + enum TypeEnum { + BILLABLEEXPENSE + } + enum SourceTransactionTypeCodeEnum { + ACCPAY, + SPEND + } +} diff --git a/dist/gen/model/accounting/linkedTransaction.js b/dist/gen/model/accounting/linkedTransaction.js new file mode 100644 index 000000000..41e6b91a2 --- /dev/null +++ b/dist/gen/model/accounting/linkedTransaction.js @@ -0,0 +1,86 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class LinkedTransaction { + static getAttributeTypeMap() { + return LinkedTransaction.attributeTypeMap; + } +} +exports.LinkedTransaction = LinkedTransaction; +LinkedTransaction.discriminator = undefined; +LinkedTransaction.attributeTypeMap = [ + { + "name": "sourceTransactionID", + "baseName": "SourceTransactionID", + "type": "string" + }, + { + "name": "sourceLineItemID", + "baseName": "SourceLineItemID", + "type": "string" + }, + { + "name": "contactID", + "baseName": "ContactID", + "type": "string" + }, + { + "name": "targetTransactionID", + "baseName": "TargetTransactionID", + "type": "string" + }, + { + "name": "targetLineItemID", + "baseName": "TargetLineItemID", + "type": "string" + }, + { + "name": "linkedTransactionID", + "baseName": "LinkedTransactionID", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "LinkedTransaction.StatusEnum" + }, + { + "name": "type", + "baseName": "Type", + "type": "LinkedTransaction.TypeEnum" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "sourceTransactionTypeCode", + "baseName": "SourceTransactionTypeCode", + "type": "LinkedTransaction.SourceTransactionTypeCodeEnum" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (LinkedTransaction) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["APPROVED"] = 'APPROVED'] = "APPROVED"; + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["ONDRAFT"] = 'ONDRAFT'] = "ONDRAFT"; + StatusEnum[StatusEnum["BILLED"] = 'BILLED'] = "BILLED"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = LinkedTransaction.StatusEnum || (LinkedTransaction.StatusEnum = {})); + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["BILLABLEEXPENSE"] = 'BILLABLEEXPENSE'] = "BILLABLEEXPENSE"; + })(TypeEnum = LinkedTransaction.TypeEnum || (LinkedTransaction.TypeEnum = {})); + let SourceTransactionTypeCodeEnum; + (function (SourceTransactionTypeCodeEnum) { + SourceTransactionTypeCodeEnum[SourceTransactionTypeCodeEnum["ACCPAY"] = 'ACCPAY'] = "ACCPAY"; + SourceTransactionTypeCodeEnum[SourceTransactionTypeCodeEnum["SPEND"] = 'SPEND'] = "SPEND"; + })(SourceTransactionTypeCodeEnum = LinkedTransaction.SourceTransactionTypeCodeEnum || (LinkedTransaction.SourceTransactionTypeCodeEnum = {})); +})(LinkedTransaction = exports.LinkedTransaction || (exports.LinkedTransaction = {})); +//# sourceMappingURL=linkedTransaction.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/linkedTransaction.js.map b/dist/gen/model/accounting/linkedTransaction.js.map new file mode 100644 index 000000000..6414c18d5 --- /dev/null +++ b/dist/gen/model/accounting/linkedTransaction.js.map @@ -0,0 +1 @@ +{"version":3,"file":"linkedTransaction.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/linkedTransaction.ts"],"names":[],"mappings":";;AAcA,MAAa,iBAAiB;IAyG1B,MAAM,CAAC,mBAAmB;QACtB,OAAO,iBAAiB,CAAC,gBAAgB,CAAC;IAC9C,CAAC;;AA3GL,8CA4GC;AA9DU,+BAAa,GAAuB,SAAS,CAAC;AAE9C,kCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,8BAA8B;KACzC;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,4BAA4B;KACvC;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,2BAA2B;QACnC,UAAU,EAAE,2BAA2B;QACvC,MAAM,EAAE,iDAAiD;KAC5D;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC;AAOf,WAAiB,iBAAiB;IAC9B,IAAY,UAMX;IAND,WAAY,UAAU;QAClB,oCAAiB,UAAU,cAAA,CAAA;QAC3B,iCAAc,OAAO,WAAA,CAAA;QACrB,mCAAgB,SAAS,aAAA,CAAA;QACzB,kCAAe,QAAQ,YAAA,CAAA;QACvB,kCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EANW,UAAU,GAAV,4BAAU,KAAV,4BAAU,QAMrB;IACD,IAAY,QAEX;IAFD,WAAY,QAAQ;QAChB,uCAAwB,iBAAiB,qBAAA,CAAA;IAC7C,CAAC,EAFW,QAAQ,GAAR,0BAAQ,KAAR,0BAAQ,QAEnB;IACD,IAAY,6BAGX;IAHD,WAAY,6BAA6B;QACrC,wEAAe,QAAQ,YAAA,CAAA;QACvB,uEAAc,OAAO,WAAA,CAAA;IACzB,CAAC,EAHW,6BAA6B,GAA7B,+CAA6B,KAA7B,+CAA6B,QAGxC;AACL,CAAC,EAfgB,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAejC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/linkedTransactions.d.ts b/dist/gen/model/accounting/linkedTransactions.d.ts new file mode 100644 index 000000000..905c976dc --- /dev/null +++ b/dist/gen/model/accounting/linkedTransactions.d.ts @@ -0,0 +1,15 @@ +import { LinkedTransaction } from './linkedTransaction'; +export declare class LinkedTransactions { + 'linkedTransactions'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/linkedTransactions.js b/dist/gen/model/accounting/linkedTransactions.js new file mode 100644 index 000000000..2aede2c17 --- /dev/null +++ b/dist/gen/model/accounting/linkedTransactions.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class LinkedTransactions { + static getAttributeTypeMap() { + return LinkedTransactions.attributeTypeMap; + } +} +exports.LinkedTransactions = LinkedTransactions; +LinkedTransactions.discriminator = undefined; +LinkedTransactions.attributeTypeMap = [ + { + "name": "linkedTransactions", + "baseName": "LinkedTransactions", + "type": "Array" + } +]; +//# sourceMappingURL=linkedTransactions.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/linkedTransactions.js.map b/dist/gen/model/accounting/linkedTransactions.js.map new file mode 100644 index 000000000..43cdd9dcc --- /dev/null +++ b/dist/gen/model/accounting/linkedTransactions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"linkedTransactions.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/linkedTransactions.ts"],"names":[],"mappings":";;AAcA,MAAa,kBAAkB;IAY3B,MAAM,CAAC,mBAAmB;QACtB,OAAO,kBAAkB,CAAC,gBAAgB,CAAC;IAC/C,CAAC;;AAdL,gDAeC;AAZU,gCAAa,GAAuB,SAAS,CAAC;AAE9C,mCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,0BAA0B;KACrC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournal.d.ts b/dist/gen/model/accounting/manualJournal.d.ts new file mode 100644 index 000000000..4af5f6889 --- /dev/null +++ b/dist/gen/model/accounting/manualJournal.d.ts @@ -0,0 +1,38 @@ +import { Attachment } from './attachment'; +import { LineAmountTypes } from './lineAmountTypes'; +import { ManualJournalLine } from './manualJournalLine'; +import { ValidationError } from './validationError'; +export declare class ManualJournal { + 'narration': string; + 'journalLines': Array; + 'date'?: string; + 'lineAmountTypes'?: LineAmountTypes; + 'status'?: ManualJournal.StatusEnum; + 'url'?: string; + 'showOnCashBasisReports'?: boolean; + 'hasAttachments'?: boolean; + 'updatedDateUTC'?: Date; + 'manualJournalID'?: string; + 'warnings'?: Array; + 'validationErrors'?: Array; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace ManualJournal { + enum StatusEnum { + DRAFT, + POSTED, + DELETED, + VOIDED + } +} diff --git a/dist/gen/model/accounting/manualJournal.js b/dist/gen/model/accounting/manualJournal.js new file mode 100644 index 000000000..6f04e883b --- /dev/null +++ b/dist/gen/model/accounting/manualJournal.js @@ -0,0 +1,86 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ManualJournal { + static getAttributeTypeMap() { + return ManualJournal.attributeTypeMap; + } +} +exports.ManualJournal = ManualJournal; +ManualJournal.discriminator = undefined; +ManualJournal.attributeTypeMap = [ + { + "name": "narration", + "baseName": "Narration", + "type": "string" + }, + { + "name": "journalLines", + "baseName": "JournalLines", + "type": "Array" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "status", + "baseName": "Status", + "type": "ManualJournal.StatusEnum" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "showOnCashBasisReports", + "baseName": "ShowOnCashBasisReports", + "type": "boolean" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "manualJournalID", + "baseName": "ManualJournalID", + "type": "string" + }, + { + "name": "warnings", + "baseName": "Warnings", + "type": "Array" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (ManualJournal) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["POSTED"] = 'POSTED'] = "POSTED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = ManualJournal.StatusEnum || (ManualJournal.StatusEnum = {})); +})(ManualJournal = exports.ManualJournal || (exports.ManualJournal = {})); +//# sourceMappingURL=manualJournal.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournal.js.map b/dist/gen/model/accounting/manualJournal.js.map new file mode 100644 index 000000000..c8c2460ce --- /dev/null +++ b/dist/gen/model/accounting/manualJournal.js.map @@ -0,0 +1 @@ +{"version":3,"file":"manualJournal.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/manualJournal.ts"],"names":[],"mappings":";;AAiBA,MAAa,aAAa;IAwHtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AA1HL,sCA2HC;AAxEU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,0BAA0B;KACrC;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,0BAA0B;KACrC;IACD;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,wBAAwB;QAChC,UAAU,EAAE,wBAAwB;QACpC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC;AAOf,WAAiB,aAAa;IAC1B,IAAY,UAKX;IALD,WAAY,UAAU;QAClB,iCAAc,OAAO,WAAA,CAAA;QACrB,kCAAe,QAAQ,YAAA,CAAA;QACvB,mCAAgB,SAAS,aAAA,CAAA;QACzB,kCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EALW,UAAU,GAAV,wBAAU,KAAV,wBAAU,QAKrB;AACL,CAAC,EAPgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAO7B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournalLine.d.ts b/dist/gen/model/accounting/manualJournalLine.d.ts new file mode 100644 index 000000000..5bb85b181 --- /dev/null +++ b/dist/gen/model/accounting/manualJournalLine.d.ts @@ -0,0 +1,21 @@ +import { TrackingCategory } from './trackingCategory'; +export declare class ManualJournalLine { + 'lineAmount'?: number; + 'accountCode'?: string; + 'description'?: string; + 'taxType'?: string; + 'tracking'?: Array; + 'taxAmount'?: number; + 'isBlank'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/manualJournalLine.js b/dist/gen/model/accounting/manualJournalLine.js new file mode 100644 index 000000000..5bcd16d17 --- /dev/null +++ b/dist/gen/model/accounting/manualJournalLine.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ManualJournalLine { + static getAttributeTypeMap() { + return ManualJournalLine.attributeTypeMap; + } +} +exports.ManualJournalLine = ManualJournalLine; +ManualJournalLine.discriminator = undefined; +ManualJournalLine.attributeTypeMap = [ + { + "name": "lineAmount", + "baseName": "LineAmount", + "type": "number" + }, + { + "name": "accountCode", + "baseName": "AccountCode", + "type": "string" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + }, + { + "name": "tracking", + "baseName": "Tracking", + "type": "Array" + }, + { + "name": "taxAmount", + "baseName": "TaxAmount", + "type": "number" + }, + { + "name": "isBlank", + "baseName": "IsBlank", + "type": "boolean" + } +]; +//# sourceMappingURL=manualJournalLine.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournalLine.js.map b/dist/gen/model/accounting/manualJournalLine.js.map new file mode 100644 index 000000000..9c4c2719c --- /dev/null +++ b/dist/gen/model/accounting/manualJournalLine.js.map @@ -0,0 +1 @@ +{"version":3,"file":"manualJournalLine.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/manualJournalLine.ts"],"names":[],"mappings":";;AAcA,MAAa,iBAAiB;IAqE1B,MAAM,CAAC,mBAAmB;QACtB,OAAO,iBAAiB,CAAC,gBAAgB,CAAC;IAC9C,CAAC;;AAvEL,8CAwEC;AA1CU,+BAAa,GAAuB,SAAS,CAAC;AAE9C,kCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournals.d.ts b/dist/gen/model/accounting/manualJournals.d.ts new file mode 100644 index 000000000..9991ed759 --- /dev/null +++ b/dist/gen/model/accounting/manualJournals.d.ts @@ -0,0 +1,15 @@ +import { ManualJournal } from './manualJournal'; +export declare class ManualJournals { + 'manualJournals'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/manualJournals.js b/dist/gen/model/accounting/manualJournals.js new file mode 100644 index 000000000..358f3156b --- /dev/null +++ b/dist/gen/model/accounting/manualJournals.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ManualJournals { + static getAttributeTypeMap() { + return ManualJournals.attributeTypeMap; + } +} +exports.ManualJournals = ManualJournals; +ManualJournals.discriminator = undefined; +ManualJournals.attributeTypeMap = [ + { + "name": "manualJournals", + "baseName": "ManualJournals", + "type": "Array" + } +]; +//# sourceMappingURL=manualJournals.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/manualJournals.js.map b/dist/gen/model/accounting/manualJournals.js.map new file mode 100644 index 000000000..8fad0b18e --- /dev/null +++ b/dist/gen/model/accounting/manualJournals.js.map @@ -0,0 +1 @@ +{"version":3,"file":"manualJournals.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/manualJournals.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/modelError.d.ts b/dist/gen/model/accounting/modelError.d.ts new file mode 100644 index 000000000..c3db38d61 --- /dev/null +++ b/dist/gen/model/accounting/modelError.d.ts @@ -0,0 +1,18 @@ +import { Element } from './element'; +export declare class ModelError { + 'errorNumber'?: number; + 'type'?: string; + 'message'?: string; + 'elements'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/modelError.js b/dist/gen/model/accounting/modelError.js new file mode 100644 index 000000000..5bf2041e0 --- /dev/null +++ b/dist/gen/model/accounting/modelError.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ModelError { + static getAttributeTypeMap() { + return ModelError.attributeTypeMap; + } +} +exports.ModelError = ModelError; +ModelError.discriminator = undefined; +ModelError.attributeTypeMap = [ + { + "name": "errorNumber", + "baseName": "ErrorNumber", + "type": "number" + }, + { + "name": "type", + "baseName": "Type", + "type": "string" + }, + { + "name": "message", + "baseName": "Message", + "type": "string" + }, + { + "name": "elements", + "baseName": "Elements", + "type": "Array" + } +]; +//# sourceMappingURL=modelError.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/modelError.js.map b/dist/gen/model/accounting/modelError.js.map new file mode 100644 index 000000000..f61480fd4 --- /dev/null +++ b/dist/gen/model/accounting/modelError.js.map @@ -0,0 +1 @@ +{"version":3,"file":"modelError.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/modelError.ts"],"names":[],"mappings":";;AAcA,MAAa,UAAU;IA0CnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AA5CL,gCA6CC;AA3BU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/models.d.ts b/dist/gen/model/accounting/models.d.ts new file mode 100644 index 000000000..2da51dd7d --- /dev/null +++ b/dist/gen/model/accounting/models.d.ts @@ -0,0 +1,142 @@ +export * from './account'; +export * from './accountType'; +export * from './accounts'; +export * from './accountsPayable'; +export * from './accountsReceivable'; +export * from './address'; +export * from './allocation'; +export * from './allocations'; +export * from './attachment'; +export * from './attachments'; +export * from './balances'; +export * from './bankTransaction'; +export * from './bankTransactions'; +export * from './bankTransfer'; +export * from './bankTransfers'; +export * from './batchPayment'; +export * from './batchPaymentDetails'; +export * from './batchPayments'; +export * from './bill'; +export * from './brandingTheme'; +export * from './brandingThemes'; +export * from './cISOrgSetting'; +export * from './cISSetting'; +export * from './cISSettings'; +export * from './contact'; +export * from './contactGroup'; +export * from './contactGroups'; +export * from './contactPerson'; +export * from './contacts'; +export * from './countryCode'; +export * from './creditNote'; +export * from './creditNotes'; +export * from './currencies'; +export * from './currency'; +export * from './currencyCode'; +export * from './element'; +export * from './employee'; +export * from './employees'; +export * from './expenseClaim'; +export * from './expenseClaims'; +export * from './externalLink'; +export * from './historyRecord'; +export * from './historyRecords'; +export * from './invoice'; +export * from './invoiceReminder'; +export * from './invoiceReminders'; +export * from './invoices'; +export * from './item'; +export * from './items'; +export * from './journal'; +export * from './journalLine'; +export * from './journals'; +export * from './lineAmountTypes'; +export * from './lineItem'; +export * from './lineItemTracking'; +export * from './linkedTransaction'; +export * from './linkedTransactions'; +export * from './manualJournal'; +export * from './manualJournalLine'; +export * from './manualJournals'; +export * from './modelError'; +export * from './onlineInvoice'; +export * from './onlineInvoices'; +export * from './organisation'; +export * from './organisations'; +export * from './overpayment'; +export * from './overpayments'; +export * from './payment'; +export * from './paymentService'; +export * from './paymentServices'; +export * from './paymentTerm'; +export * from './paymentTermType'; +export * from './payments'; +export * from './phone'; +export * from './prepayment'; +export * from './prepayments'; +export * from './purchase'; +export * from './purchaseOrder'; +export * from './purchaseOrders'; +export * from './quote'; +export * from './quoteStatusCodes'; +export * from './quotes'; +export * from './receipt'; +export * from './receipts'; +export * from './repeatingInvoice'; +export * from './repeatingInvoices'; +export * from './report'; +export * from './reportAttribute'; +export * from './reportCell'; +export * from './reportFields'; +export * from './reportRow'; +export * from './reportRows'; +export * from './reportWithRow'; +export * from './reportWithRows'; +export * from './reports'; +export * from './requestEmpty'; +export * from './rowType'; +export * from './salesTrackingCategory'; +export * from './schedule'; +export * from './taxComponent'; +export * from './taxRate'; +export * from './taxRates'; +export * from './taxType'; +export * from './tenNinteyNineContact'; +export * from './timeZone'; +export * from './trackingCategories'; +export * from './trackingCategory'; +export * from './trackingOption'; +export * from './trackingOptions'; +export * from './user'; +export * from './users'; +export * from './validationError'; +import localVarRequest = require('request'); +export declare class ObjectSerializer { + static findCorrectType(data: any, expectedType: string): any; + static serialize(data: any, type: string): any; + static deserialize(data: any, type: string): any; +} +export interface Authentication { + applyToRequest(requestOptions: localVarRequest.Options): Promise | void; +} +export declare class HttpBasicAuth implements Authentication { + username: string; + password: string; + applyToRequest(requestOptions: localVarRequest.Options): void; +} +export declare class ApiKeyAuth implements Authentication { + private location; + private paramName; + apiKey: string; + constructor(location: string, paramName: string); + applyToRequest(requestOptions: localVarRequest.Options): void; +} +export declare class OAuth implements Authentication { + accessToken: string; + applyToRequest(requestOptions: localVarRequest.Options): void; +} +export declare class VoidAuth implements Authentication { + username: string; + password: string; + applyToRequest(_: localVarRequest.Options): void; +} diff --git a/dist/gen/model/accounting/models.js b/dist/gen/model/accounting/models.js new file mode 100644 index 000000000..ac0bf8225 --- /dev/null +++ b/dist/gen/model/accounting/models.js @@ -0,0 +1,567 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +Object.defineProperty(exports, "__esModule", { value: true }); +__export(require("./account")); +__export(require("./accountType")); +__export(require("./accounts")); +__export(require("./accountsPayable")); +__export(require("./accountsReceivable")); +__export(require("./address")); +__export(require("./allocation")); +__export(require("./allocations")); +__export(require("./attachment")); +__export(require("./attachments")); +__export(require("./balances")); +__export(require("./bankTransaction")); +__export(require("./bankTransactions")); +__export(require("./bankTransfer")); +__export(require("./bankTransfers")); +__export(require("./batchPayment")); +__export(require("./batchPaymentDetails")); +__export(require("./batchPayments")); +__export(require("./bill")); +__export(require("./brandingTheme")); +__export(require("./brandingThemes")); +__export(require("./cISOrgSetting")); +__export(require("./cISSetting")); +__export(require("./cISSettings")); +__export(require("./contact")); +__export(require("./contactGroup")); +__export(require("./contactGroups")); +__export(require("./contactPerson")); +__export(require("./contacts")); +__export(require("./countryCode")); +__export(require("./creditNote")); +__export(require("./creditNotes")); +__export(require("./currencies")); +__export(require("./currency")); +__export(require("./currencyCode")); +__export(require("./element")); +__export(require("./employee")); +__export(require("./employees")); +__export(require("./expenseClaim")); +__export(require("./expenseClaims")); +__export(require("./externalLink")); +__export(require("./historyRecord")); +__export(require("./historyRecords")); +__export(require("./invoice")); +__export(require("./invoiceReminder")); +__export(require("./invoiceReminders")); +__export(require("./invoices")); +__export(require("./item")); +__export(require("./items")); +__export(require("./journal")); +__export(require("./journalLine")); +__export(require("./journals")); +__export(require("./lineAmountTypes")); +__export(require("./lineItem")); +__export(require("./lineItemTracking")); +__export(require("./linkedTransaction")); +__export(require("./linkedTransactions")); +__export(require("./manualJournal")); +__export(require("./manualJournalLine")); +__export(require("./manualJournals")); +__export(require("./modelError")); +__export(require("./onlineInvoice")); +__export(require("./onlineInvoices")); +__export(require("./organisation")); +__export(require("./organisations")); +__export(require("./overpayment")); +__export(require("./overpayments")); +__export(require("./payment")); +__export(require("./paymentService")); +__export(require("./paymentServices")); +__export(require("./paymentTerm")); +__export(require("./paymentTermType")); +__export(require("./payments")); +__export(require("./phone")); +__export(require("./prepayment")); +__export(require("./prepayments")); +__export(require("./purchase")); +__export(require("./purchaseOrder")); +__export(require("./purchaseOrders")); +__export(require("./quote")); +__export(require("./quoteStatusCodes")); +__export(require("./quotes")); +__export(require("./receipt")); +__export(require("./receipts")); +__export(require("./repeatingInvoice")); +__export(require("./repeatingInvoices")); +__export(require("./report")); +__export(require("./reportAttribute")); +__export(require("./reportCell")); +__export(require("./reportFields")); +__export(require("./reportRow")); +__export(require("./reportRows")); +__export(require("./reportWithRow")); +__export(require("./reportWithRows")); +__export(require("./reports")); +__export(require("./requestEmpty")); +__export(require("./rowType")); +__export(require("./salesTrackingCategory")); +__export(require("./schedule")); +__export(require("./taxComponent")); +__export(require("./taxRate")); +__export(require("./taxRates")); +__export(require("./taxType")); +__export(require("./tenNinteyNineContact")); +__export(require("./timeZone")); +__export(require("./trackingCategories")); +__export(require("./trackingCategory")); +__export(require("./trackingOption")); +__export(require("./trackingOptions")); +__export(require("./user")); +__export(require("./users")); +__export(require("./validationError")); +const account_1 = require("./account"); +const accountType_1 = require("./accountType"); +const accounts_1 = require("./accounts"); +const accountsPayable_1 = require("./accountsPayable"); +const accountsReceivable_1 = require("./accountsReceivable"); +const address_1 = require("./address"); +const allocation_1 = require("./allocation"); +const allocations_1 = require("./allocations"); +const attachment_1 = require("./attachment"); +const attachments_1 = require("./attachments"); +const balances_1 = require("./balances"); +const bankTransaction_1 = require("./bankTransaction"); +const bankTransactions_1 = require("./bankTransactions"); +const bankTransfer_1 = require("./bankTransfer"); +const bankTransfers_1 = require("./bankTransfers"); +const batchPayment_1 = require("./batchPayment"); +const batchPaymentDetails_1 = require("./batchPaymentDetails"); +const batchPayments_1 = require("./batchPayments"); +const bill_1 = require("./bill"); +const brandingTheme_1 = require("./brandingTheme"); +const brandingThemes_1 = require("./brandingThemes"); +const cISOrgSetting_1 = require("./cISOrgSetting"); +const cISSetting_1 = require("./cISSetting"); +const cISSettings_1 = require("./cISSettings"); +const contact_1 = require("./contact"); +const contactGroup_1 = require("./contactGroup"); +const contactGroups_1 = require("./contactGroups"); +const contactPerson_1 = require("./contactPerson"); +const contacts_1 = require("./contacts"); +const countryCode_1 = require("./countryCode"); +const creditNote_1 = require("./creditNote"); +const creditNotes_1 = require("./creditNotes"); +const currencies_1 = require("./currencies"); +const currency_1 = require("./currency"); +const currencyCode_1 = require("./currencyCode"); +const element_1 = require("./element"); +const employee_1 = require("./employee"); +const employees_1 = require("./employees"); +const expenseClaim_1 = require("./expenseClaim"); +const expenseClaims_1 = require("./expenseClaims"); +const externalLink_1 = require("./externalLink"); +const historyRecord_1 = require("./historyRecord"); +const historyRecords_1 = require("./historyRecords"); +const invoice_1 = require("./invoice"); +const invoiceReminder_1 = require("./invoiceReminder"); +const invoiceReminders_1 = require("./invoiceReminders"); +const invoices_1 = require("./invoices"); +const item_1 = require("./item"); +const items_1 = require("./items"); +const journal_1 = require("./journal"); +const journalLine_1 = require("./journalLine"); +const journals_1 = require("./journals"); +const lineAmountTypes_1 = require("./lineAmountTypes"); +const lineItem_1 = require("./lineItem"); +const lineItemTracking_1 = require("./lineItemTracking"); +const linkedTransaction_1 = require("./linkedTransaction"); +const linkedTransactions_1 = require("./linkedTransactions"); +const manualJournal_1 = require("./manualJournal"); +const manualJournalLine_1 = require("./manualJournalLine"); +const manualJournals_1 = require("./manualJournals"); +const modelError_1 = require("./modelError"); +const onlineInvoice_1 = require("./onlineInvoice"); +const onlineInvoices_1 = require("./onlineInvoices"); +const organisation_1 = require("./organisation"); +const organisations_1 = require("./organisations"); +const overpayment_1 = require("./overpayment"); +const overpayments_1 = require("./overpayments"); +const payment_1 = require("./payment"); +const paymentService_1 = require("./paymentService"); +const paymentServices_1 = require("./paymentServices"); +const paymentTerm_1 = require("./paymentTerm"); +const paymentTermType_1 = require("./paymentTermType"); +const payments_1 = require("./payments"); +const phone_1 = require("./phone"); +const prepayment_1 = require("./prepayment"); +const prepayments_1 = require("./prepayments"); +const purchase_1 = require("./purchase"); +const purchaseOrder_1 = require("./purchaseOrder"); +const purchaseOrders_1 = require("./purchaseOrders"); +const quote_1 = require("./quote"); +const quoteStatusCodes_1 = require("./quoteStatusCodes"); +const quotes_1 = require("./quotes"); +const receipt_1 = require("./receipt"); +const receipts_1 = require("./receipts"); +const repeatingInvoice_1 = require("./repeatingInvoice"); +const repeatingInvoices_1 = require("./repeatingInvoices"); +const report_1 = require("./report"); +const reportAttribute_1 = require("./reportAttribute"); +const reportCell_1 = require("./reportCell"); +const reportFields_1 = require("./reportFields"); +const reportRow_1 = require("./reportRow"); +const reportRows_1 = require("./reportRows"); +const reportWithRow_1 = require("./reportWithRow"); +const reportWithRows_1 = require("./reportWithRows"); +const reports_1 = require("./reports"); +const requestEmpty_1 = require("./requestEmpty"); +const rowType_1 = require("./rowType"); +const salesTrackingCategory_1 = require("./salesTrackingCategory"); +const schedule_1 = require("./schedule"); +const taxComponent_1 = require("./taxComponent"); +const taxRate_1 = require("./taxRate"); +const taxRates_1 = require("./taxRates"); +const taxType_1 = require("./taxType"); +const tenNinteyNineContact_1 = require("./tenNinteyNineContact"); +const timeZone_1 = require("./timeZone"); +const trackingCategories_1 = require("./trackingCategories"); +const trackingCategory_1 = require("./trackingCategory"); +const trackingOption_1 = require("./trackingOption"); +const trackingOptions_1 = require("./trackingOptions"); +const user_1 = require("./user"); +const users_1 = require("./users"); +const validationError_1 = require("./validationError"); +let primitives = [ + "string", + "boolean", + "double", + "integer", + "long", + "float", + "number", + "any" +]; +let enumsMap = { + "Account.StatusEnum": account_1.Account.StatusEnum, + "Account.BankAccountTypeEnum": account_1.Account.BankAccountTypeEnum, + "Account.ClassEnum": account_1.Account.ClassEnum, + "Account.SystemAccountEnum": account_1.Account.SystemAccountEnum, + "AccountType": accountType_1.AccountType, + "Address.AddressTypeEnum": address_1.Address.AddressTypeEnum, + "BankTransaction.TypeEnum": bankTransaction_1.BankTransaction.TypeEnum, + "BankTransaction.StatusEnum": bankTransaction_1.BankTransaction.StatusEnum, + "BatchPayment.TypeEnum": batchPayment_1.BatchPayment.TypeEnum, + "BrandingTheme.TypeEnum": brandingTheme_1.BrandingTheme.TypeEnum, + "Contact.ContactStatusEnum": contact_1.Contact.ContactStatusEnum, + "ContactGroup.StatusEnum": contactGroup_1.ContactGroup.StatusEnum, + "CountryCode": countryCode_1.CountryCode, + "CreditNote.TypeEnum": creditNote_1.CreditNote.TypeEnum, + "CreditNote.StatusEnum": creditNote_1.CreditNote.StatusEnum, + "CurrencyCode": currencyCode_1.CurrencyCode, + "Employee.StatusEnum": employee_1.Employee.StatusEnum, + "ExpenseClaim.StatusEnum": expenseClaim_1.ExpenseClaim.StatusEnum, + "ExternalLink.LinkTypeEnum": externalLink_1.ExternalLink.LinkTypeEnum, + "Invoice.TypeEnum": invoice_1.Invoice.TypeEnum, + "Invoice.StatusEnum": invoice_1.Invoice.StatusEnum, + "Journal.SourceTypeEnum": journal_1.Journal.SourceTypeEnum, + "LineAmountTypes": lineAmountTypes_1.LineAmountTypes, + "LinkedTransaction.StatusEnum": linkedTransaction_1.LinkedTransaction.StatusEnum, + "LinkedTransaction.TypeEnum": linkedTransaction_1.LinkedTransaction.TypeEnum, + "LinkedTransaction.SourceTransactionTypeCodeEnum": linkedTransaction_1.LinkedTransaction.SourceTransactionTypeCodeEnum, + "ManualJournal.StatusEnum": manualJournal_1.ManualJournal.StatusEnum, + "Organisation.VersionEnum": organisation_1.Organisation.VersionEnum, + "Organisation.OrganisationTypeEnum": organisation_1.Organisation.OrganisationTypeEnum, + "Organisation.SalesTaxBasisEnum": organisation_1.Organisation.SalesTaxBasisEnum, + "Organisation.SalesTaxPeriodEnum": organisation_1.Organisation.SalesTaxPeriodEnum, + "Organisation.OrganisationEntityTypeEnum": organisation_1.Organisation.OrganisationEntityTypeEnum, + "Organisation.ClassEnum": organisation_1.Organisation.ClassEnum, + "Organisation.EditionEnum": organisation_1.Organisation.EditionEnum, + "Overpayment.TypeEnum": overpayment_1.Overpayment.TypeEnum, + "Overpayment.StatusEnum": overpayment_1.Overpayment.StatusEnum, + "Payment.StatusEnum": payment_1.Payment.StatusEnum, + "Payment.PaymentTypeEnum": payment_1.Payment.PaymentTypeEnum, + "PaymentTermType": paymentTermType_1.PaymentTermType, + "Phone.PhoneTypeEnum": phone_1.Phone.PhoneTypeEnum, + "Prepayment.TypeEnum": prepayment_1.Prepayment.TypeEnum, + "Prepayment.StatusEnum": prepayment_1.Prepayment.StatusEnum, + "PurchaseOrder.StatusEnum": purchaseOrder_1.PurchaseOrder.StatusEnum, + "QuoteStatusCodes": quoteStatusCodes_1.QuoteStatusCodes, + "Receipt.StatusEnum": receipt_1.Receipt.StatusEnum, + "RepeatingInvoice.TypeEnum": repeatingInvoice_1.RepeatingInvoice.TypeEnum, + "RepeatingInvoice.StatusEnum": repeatingInvoice_1.RepeatingInvoice.StatusEnum, + "Report.ReportTypeEnum": report_1.Report.ReportTypeEnum, + "RowType": rowType_1.RowType, + "Schedule.UnitEnum": schedule_1.Schedule.UnitEnum, + "Schedule.DueDateTypeEnum": schedule_1.Schedule.DueDateTypeEnum, + "TaxRate.StatusEnum": taxRate_1.TaxRate.StatusEnum, + "TaxRate.ReportTaxTypeEnum": taxRate_1.TaxRate.ReportTaxTypeEnum, + "TaxType": taxType_1.TaxType, + "TimeZone": timeZone_1.TimeZone, + "TrackingCategory.StatusEnum": trackingCategory_1.TrackingCategory.StatusEnum, + "TrackingOption.StatusEnum": trackingOption_1.TrackingOption.StatusEnum, + "User.OrganisationRoleEnum": user_1.User.OrganisationRoleEnum, +}; +let typeMap = { + "Account": account_1.Account, + "Accounts": accounts_1.Accounts, + "AccountsPayable": accountsPayable_1.AccountsPayable, + "AccountsReceivable": accountsReceivable_1.AccountsReceivable, + "Address": address_1.Address, + "Allocation": allocation_1.Allocation, + "Allocations": allocations_1.Allocations, + "Attachment": attachment_1.Attachment, + "Attachments": attachments_1.Attachments, + "Balances": balances_1.Balances, + "BankTransaction": bankTransaction_1.BankTransaction, + "BankTransactions": bankTransactions_1.BankTransactions, + "BankTransfer": bankTransfer_1.BankTransfer, + "BankTransfers": bankTransfers_1.BankTransfers, + "BatchPayment": batchPayment_1.BatchPayment, + "BatchPaymentDetails": batchPaymentDetails_1.BatchPaymentDetails, + "BatchPayments": batchPayments_1.BatchPayments, + "Bill": bill_1.Bill, + "BrandingTheme": brandingTheme_1.BrandingTheme, + "BrandingThemes": brandingThemes_1.BrandingThemes, + "CISOrgSetting": cISOrgSetting_1.CISOrgSetting, + "CISSetting": cISSetting_1.CISSetting, + "CISSettings": cISSettings_1.CISSettings, + "Contact": contact_1.Contact, + "ContactGroup": contactGroup_1.ContactGroup, + "ContactGroups": contactGroups_1.ContactGroups, + "ContactPerson": contactPerson_1.ContactPerson, + "Contacts": contacts_1.Contacts, + "CreditNote": creditNote_1.CreditNote, + "CreditNotes": creditNotes_1.CreditNotes, + "Currencies": currencies_1.Currencies, + "Currency": currency_1.Currency, + "Element": element_1.Element, + "Employee": employee_1.Employee, + "Employees": employees_1.Employees, + "ExpenseClaim": expenseClaim_1.ExpenseClaim, + "ExpenseClaims": expenseClaims_1.ExpenseClaims, + "ExternalLink": externalLink_1.ExternalLink, + "HistoryRecord": historyRecord_1.HistoryRecord, + "HistoryRecords": historyRecords_1.HistoryRecords, + "Invoice": invoice_1.Invoice, + "InvoiceReminder": invoiceReminder_1.InvoiceReminder, + "InvoiceReminders": invoiceReminders_1.InvoiceReminders, + "Invoices": invoices_1.Invoices, + "Item": item_1.Item, + "Items": items_1.Items, + "Journal": journal_1.Journal, + "JournalLine": journalLine_1.JournalLine, + "Journals": journals_1.Journals, + "LineItem": lineItem_1.LineItem, + "LineItemTracking": lineItemTracking_1.LineItemTracking, + "LinkedTransaction": linkedTransaction_1.LinkedTransaction, + "LinkedTransactions": linkedTransactions_1.LinkedTransactions, + "ManualJournal": manualJournal_1.ManualJournal, + "ManualJournalLine": manualJournalLine_1.ManualJournalLine, + "ManualJournals": manualJournals_1.ManualJournals, + "ModelError": modelError_1.ModelError, + "OnlineInvoice": onlineInvoice_1.OnlineInvoice, + "OnlineInvoices": onlineInvoices_1.OnlineInvoices, + "Organisation": organisation_1.Organisation, + "Organisations": organisations_1.Organisations, + "Overpayment": overpayment_1.Overpayment, + "Overpayments": overpayments_1.Overpayments, + "Payment": payment_1.Payment, + "PaymentService": paymentService_1.PaymentService, + "PaymentServices": paymentServices_1.PaymentServices, + "PaymentTerm": paymentTerm_1.PaymentTerm, + "Payments": payments_1.Payments, + "Phone": phone_1.Phone, + "Prepayment": prepayment_1.Prepayment, + "Prepayments": prepayments_1.Prepayments, + "Purchase": purchase_1.Purchase, + "PurchaseOrder": purchaseOrder_1.PurchaseOrder, + "PurchaseOrders": purchaseOrders_1.PurchaseOrders, + "Quote": quote_1.Quote, + "Quotes": quotes_1.Quotes, + "Receipt": receipt_1.Receipt, + "Receipts": receipts_1.Receipts, + "RepeatingInvoice": repeatingInvoice_1.RepeatingInvoice, + "RepeatingInvoices": repeatingInvoices_1.RepeatingInvoices, + "Report": report_1.Report, + "ReportAttribute": reportAttribute_1.ReportAttribute, + "ReportCell": reportCell_1.ReportCell, + "ReportFields": reportFields_1.ReportFields, + "ReportRow": reportRow_1.ReportRow, + "ReportRows": reportRows_1.ReportRows, + "ReportWithRow": reportWithRow_1.ReportWithRow, + "ReportWithRows": reportWithRows_1.ReportWithRows, + "Reports": reports_1.Reports, + "RequestEmpty": requestEmpty_1.RequestEmpty, + "SalesTrackingCategory": salesTrackingCategory_1.SalesTrackingCategory, + "Schedule": schedule_1.Schedule, + "TaxComponent": taxComponent_1.TaxComponent, + "TaxRate": taxRate_1.TaxRate, + "TaxRates": taxRates_1.TaxRates, + "TenNinteyNineContact": tenNinteyNineContact_1.TenNinteyNineContact, + "TrackingCategories": trackingCategories_1.TrackingCategories, + "TrackingCategory": trackingCategory_1.TrackingCategory, + "TrackingOption": trackingOption_1.TrackingOption, + "TrackingOptions": trackingOptions_1.TrackingOptions, + "User": user_1.User, + "Users": users_1.Users, + "ValidationError": validationError_1.ValidationError, +}; +class ObjectSerializer { + static findCorrectType(data, expectedType) { + if (data == undefined) { + return expectedType; + } + else if (primitives.indexOf(expectedType.toLowerCase()) !== -1) { + return expectedType; + } + else if (expectedType === "Date") { + return expectedType; + } + else { + if (enumsMap[expectedType]) { + return expectedType; + } + if (!typeMap[expectedType]) { + return expectedType; + } + let discriminatorProperty = typeMap[expectedType].discriminator; + if (discriminatorProperty == null) { + return expectedType; + } + else { + if (data[discriminatorProperty]) { + var discriminatorType = data[discriminatorProperty]; + if (typeMap[discriminatorType]) { + return discriminatorType; + } + else { + return expectedType; + } + } + else { + return expectedType; + } + } + } + } + static serialize(data, type) { + if (data == undefined) { + return data; + } + else if (primitives.indexOf(type.toLowerCase()) !== -1) { + return data; + } + else if (type.lastIndexOf("Array<", 0) === 0) { + let subType = type.replace("Array<", ""); + subType = subType.substring(0, subType.length - 1); + let transformedData = []; + for (let index in data) { + let date = data[index]; + transformedData.push(ObjectSerializer.serialize(date, subType)); + } + return transformedData; + } + else if (type === "Date") { + return data.toISOString(); + } + else { + if (enumsMap[type]) { + return data; + } + if (!typeMap[type]) { + return data; + } + type = this.findCorrectType(data, type); + let attributeTypes = typeMap[type].getAttributeTypeMap(); + let instance = {}; + for (let index in attributeTypes) { + let attributeType = attributeTypes[index]; + instance[attributeType.baseName] = ObjectSerializer.serialize(data[attributeType.name], attributeType.type); + } + return instance; + } + } + static deserialize(data, type) { + type = ObjectSerializer.findCorrectType(data, type); + if (data == undefined) { + return data; + } + else if (primitives.indexOf(type.toLowerCase()) !== -1) { + return data; + } + else if (type.lastIndexOf("Array<", 0) === 0) { + let subType = type.replace("Array<", ""); + subType = subType.substring(0, subType.length - 1); + let transformedData = []; + for (let index in data) { + let date = data[index]; + transformedData.push(ObjectSerializer.deserialize(date, subType)); + } + return transformedData; + } + else if (type === "Date") { + return new Date(data); + } + else { + if (enumsMap[type]) { + return data; + } + if (!typeMap[type]) { + return data; + } + let instance = new typeMap[type](); + let attributeTypes = typeMap[type].getAttributeTypeMap(); + for (let index in attributeTypes) { + let attributeType = attributeTypes[index]; + instance[attributeType.name] = ObjectSerializer.deserialize(data[attributeType.baseName], attributeType.type); + } + return instance; + } + } +} +exports.ObjectSerializer = ObjectSerializer; +class HttpBasicAuth { + constructor() { + this.username = ''; + this.password = ''; + } + applyToRequest(requestOptions) { + requestOptions.auth = { + username: this.username, password: this.password + }; + } +} +exports.HttpBasicAuth = HttpBasicAuth; +class ApiKeyAuth { + constructor(location, paramName) { + this.location = location; + this.paramName = paramName; + this.apiKey = ''; + } + applyToRequest(requestOptions) { + if (this.location == "query") { + requestOptions.qs[this.paramName] = this.apiKey; + } + else if (this.location == "header" && requestOptions && requestOptions.headers) { + requestOptions.headers[this.paramName] = this.apiKey; + } + } +} +exports.ApiKeyAuth = ApiKeyAuth; +class OAuth { + constructor() { + this.accessToken = ''; + } + applyToRequest(requestOptions) { + if (requestOptions && requestOptions.headers) { + requestOptions.headers["Authorization"] = "Bearer " + this.accessToken; + } + } +} +exports.OAuth = OAuth; +class VoidAuth { + constructor() { + this.username = ''; + this.password = ''; + } + applyToRequest(_) { + } +} +exports.VoidAuth = VoidAuth; +//# sourceMappingURL=models.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/models.js.map b/dist/gen/model/accounting/models.js.map new file mode 100644 index 000000000..980efb264 --- /dev/null +++ b/dist/gen/model/accounting/models.js.map @@ -0,0 +1 @@ +{"version":3,"file":"models.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/models.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/onlineInvoice.d.ts b/dist/gen/model/accounting/onlineInvoice.d.ts new file mode 100644 index 000000000..0a5f23d8b --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoice.d.ts @@ -0,0 +1,14 @@ +export declare class OnlineInvoice { + 'onlineInvoiceUrl'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/onlineInvoice.js b/dist/gen/model/accounting/onlineInvoice.js new file mode 100644 index 000000000..c11816676 --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoice.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class OnlineInvoice { + static getAttributeTypeMap() { + return OnlineInvoice.attributeTypeMap; + } +} +exports.OnlineInvoice = OnlineInvoice; +OnlineInvoice.discriminator = undefined; +OnlineInvoice.attributeTypeMap = [ + { + "name": "onlineInvoiceUrl", + "baseName": "OnlineInvoiceUrl", + "type": "string" + } +]; +//# sourceMappingURL=onlineInvoice.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/onlineInvoice.js.map b/dist/gen/model/accounting/onlineInvoice.js.map new file mode 100644 index 000000000..71cc4a6ed --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoice.js.map @@ -0,0 +1 @@ +{"version":3,"file":"onlineInvoice.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/onlineInvoice.ts"],"names":[],"mappings":";;AAaA,MAAa,aAAa;IAetB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAjBL,sCAkBC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/onlineInvoices.d.ts b/dist/gen/model/accounting/onlineInvoices.d.ts new file mode 100644 index 000000000..d990e8097 --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoices.d.ts @@ -0,0 +1,15 @@ +import { OnlineInvoice } from './onlineInvoice'; +export declare class OnlineInvoices { + 'onlineInvoices'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/onlineInvoices.js b/dist/gen/model/accounting/onlineInvoices.js new file mode 100644 index 000000000..afccdabe5 --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoices.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class OnlineInvoices { + static getAttributeTypeMap() { + return OnlineInvoices.attributeTypeMap; + } +} +exports.OnlineInvoices = OnlineInvoices; +OnlineInvoices.discriminator = undefined; +OnlineInvoices.attributeTypeMap = [ + { + "name": "onlineInvoices", + "baseName": "OnlineInvoices", + "type": "Array" + } +]; +//# sourceMappingURL=onlineInvoices.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/onlineInvoices.js.map b/dist/gen/model/accounting/onlineInvoices.js.map new file mode 100644 index 000000000..bde299719 --- /dev/null +++ b/dist/gen/model/accounting/onlineInvoices.js.map @@ -0,0 +1 @@ +{"version":3,"file":"onlineInvoices.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/onlineInvoices.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/organisation.d.ts b/dist/gen/model/accounting/organisation.d.ts new file mode 100644 index 000000000..63676ca4e --- /dev/null +++ b/dist/gen/model/accounting/organisation.d.ts @@ -0,0 +1,137 @@ +import { Address } from './address'; +import { CountryCode } from './countryCode'; +import { CurrencyCode } from './currencyCode'; +import { ExternalLink } from './externalLink'; +import { PaymentTerm } from './paymentTerm'; +import { Phone } from './phone'; +import { TimeZone } from './timeZone'; +export declare class Organisation { + 'organisationID'?: string; + 'aPIKey'?: string; + 'name'?: string; + 'legalName'?: string; + 'paysTax'?: boolean; + 'version'?: Organisation.VersionEnum; + 'organisationType'?: Organisation.OrganisationTypeEnum; + 'baseCurrency'?: CurrencyCode; + 'countryCode'?: CountryCode; + 'isDemoCompany'?: boolean; + 'organisationStatus'?: string; + 'registrationNumber'?: string; + 'taxNumber'?: string; + 'financialYearEndDay'?: number; + 'financialYearEndMonth'?: number; + 'salesTaxBasis'?: Organisation.SalesTaxBasisEnum; + 'salesTaxPeriod'?: Organisation.SalesTaxPeriodEnum; + 'defaultSalesTax'?: string; + 'defaultPurchasesTax'?: string; + 'periodLockDate'?: string; + 'endOfYearLockDate'?: string; + 'createdDateUTC'?: Date; + 'timezone'?: TimeZone; + 'organisationEntityType'?: Organisation.OrganisationEntityTypeEnum; + 'shortCode'?: string; + '_class'?: Organisation.ClassEnum; + 'edition'?: Organisation.EditionEnum; + 'lineOfBusiness'?: string; + 'addresses'?: Array
; + 'phones'?: Array; + 'externalLinks'?: Array; + 'paymentTerms'?: PaymentTerm; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Organisation { + enum VersionEnum { + AU, + NZ, + GLOBAL, + UK, + US, + AUONRAMP, + NZONRAMP, + GLOBALONRAMP, + UKONRAMP, + USONRAMP + } + enum OrganisationTypeEnum { + ACCOUNTINGPRACTICE, + COMPANY, + CHARITY, + CLUBORSOCIETY, + LOOKTHROUGHCOMPANY, + NOTFORPROFIT, + PARTNERSHIP, + SCORPORATION, + SELFMANAGEDSUPERANNUATIONFUND, + SOLETRADER, + SUPERANNUATIONFUND, + TRUST + } + enum SalesTaxBasisEnum { + PAYMENTS, + INVOICE, + NONE, + CASH, + ACCRUAL, + FLATRATECASH, + FLATRATEACCRUAL, + ACCRUALS + } + enum SalesTaxPeriodEnum { + MONTHLY, + QUARTERLY1, + QUARTERLY2, + QUARTERLY3, + ANNUALLY, + ONEMONTHS, + TWOMONTHS, + SIXMONTHS, + _1MONTHLY, + _2MONTHLY, + _3MONTHLY, + _6MONTHLY, + QUARTERLY, + YEARLY + } + enum OrganisationEntityTypeEnum { + ACCOUNTINGPRACTICE, + COMPANY, + CHARITY, + CLUBORSOCIETY, + LOOKTHROUGHCOMPANY, + NOTFORPROFIT, + PARTNERSHIP, + SCORPORATION, + SELFMANAGEDSUPERANNUATIONFUND, + SOLETRADER, + SUPERANNUATIONFUND, + TRUST + } + enum ClassEnum { + DEMO, + TRIAL, + STARTER, + STANDARD, + PREMIUM, + PREMIUM20, + PREMIUM50, + PREMIUM100, + LEDGER, + GSTCASHBOOK, + NONGSTCASHBOOK + } + enum EditionEnum { + BUSINESS, + PARTNER + } +} diff --git a/dist/gen/model/accounting/organisation.js b/dist/gen/model/accounting/organisation.js new file mode 100644 index 000000000..6c586caa1 --- /dev/null +++ b/dist/gen/model/accounting/organisation.js @@ -0,0 +1,264 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Organisation { + static getAttributeTypeMap() { + return Organisation.attributeTypeMap; + } +} +exports.Organisation = Organisation; +Organisation.discriminator = undefined; +Organisation.attributeTypeMap = [ + { + "name": "organisationID", + "baseName": "OrganisationID", + "type": "string" + }, + { + "name": "aPIKey", + "baseName": "APIKey", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "legalName", + "baseName": "LegalName", + "type": "string" + }, + { + "name": "paysTax", + "baseName": "PaysTax", + "type": "boolean" + }, + { + "name": "version", + "baseName": "Version", + "type": "Organisation.VersionEnum" + }, + { + "name": "organisationType", + "baseName": "OrganisationType", + "type": "Organisation.OrganisationTypeEnum" + }, + { + "name": "baseCurrency", + "baseName": "BaseCurrency", + "type": "CurrencyCode" + }, + { + "name": "countryCode", + "baseName": "CountryCode", + "type": "CountryCode" + }, + { + "name": "isDemoCompany", + "baseName": "IsDemoCompany", + "type": "boolean" + }, + { + "name": "organisationStatus", + "baseName": "OrganisationStatus", + "type": "string" + }, + { + "name": "registrationNumber", + "baseName": "RegistrationNumber", + "type": "string" + }, + { + "name": "taxNumber", + "baseName": "TaxNumber", + "type": "string" + }, + { + "name": "financialYearEndDay", + "baseName": "FinancialYearEndDay", + "type": "number" + }, + { + "name": "financialYearEndMonth", + "baseName": "FinancialYearEndMonth", + "type": "number" + }, + { + "name": "salesTaxBasis", + "baseName": "SalesTaxBasis", + "type": "Organisation.SalesTaxBasisEnum" + }, + { + "name": "salesTaxPeriod", + "baseName": "SalesTaxPeriod", + "type": "Organisation.SalesTaxPeriodEnum" + }, + { + "name": "defaultSalesTax", + "baseName": "DefaultSalesTax", + "type": "string" + }, + { + "name": "defaultPurchasesTax", + "baseName": "DefaultPurchasesTax", + "type": "string" + }, + { + "name": "periodLockDate", + "baseName": "PeriodLockDate", + "type": "string" + }, + { + "name": "endOfYearLockDate", + "baseName": "EndOfYearLockDate", + "type": "string" + }, + { + "name": "createdDateUTC", + "baseName": "CreatedDateUTC", + "type": "Date" + }, + { + "name": "timezone", + "baseName": "Timezone", + "type": "TimeZone" + }, + { + "name": "organisationEntityType", + "baseName": "OrganisationEntityType", + "type": "Organisation.OrganisationEntityTypeEnum" + }, + { + "name": "shortCode", + "baseName": "ShortCode", + "type": "string" + }, + { + "name": "_class", + "baseName": "Class", + "type": "Organisation.ClassEnum" + }, + { + "name": "edition", + "baseName": "Edition", + "type": "Organisation.EditionEnum" + }, + { + "name": "lineOfBusiness", + "baseName": "LineOfBusiness", + "type": "string" + }, + { + "name": "addresses", + "baseName": "Addresses", + "type": "Array
" + }, + { + "name": "phones", + "baseName": "Phones", + "type": "Array" + }, + { + "name": "externalLinks", + "baseName": "ExternalLinks", + "type": "Array" + }, + { + "name": "paymentTerms", + "baseName": "PaymentTerms", + "type": "PaymentTerm" + } +]; +(function (Organisation) { + let VersionEnum; + (function (VersionEnum) { + VersionEnum[VersionEnum["AU"] = 'AU'] = "AU"; + VersionEnum[VersionEnum["NZ"] = 'NZ'] = "NZ"; + VersionEnum[VersionEnum["GLOBAL"] = 'GLOBAL'] = "GLOBAL"; + VersionEnum[VersionEnum["UK"] = 'UK'] = "UK"; + VersionEnum[VersionEnum["US"] = 'US'] = "US"; + VersionEnum[VersionEnum["AUONRAMP"] = 'AUONRAMP'] = "AUONRAMP"; + VersionEnum[VersionEnum["NZONRAMP"] = 'NZONRAMP'] = "NZONRAMP"; + VersionEnum[VersionEnum["GLOBALONRAMP"] = 'GLOBALONRAMP'] = "GLOBALONRAMP"; + VersionEnum[VersionEnum["UKONRAMP"] = 'UKONRAMP'] = "UKONRAMP"; + VersionEnum[VersionEnum["USONRAMP"] = 'USONRAMP'] = "USONRAMP"; + })(VersionEnum = Organisation.VersionEnum || (Organisation.VersionEnum = {})); + let OrganisationTypeEnum; + (function (OrganisationTypeEnum) { + OrganisationTypeEnum[OrganisationTypeEnum["ACCOUNTINGPRACTICE"] = 'ACCOUNTING_PRACTICE'] = "ACCOUNTINGPRACTICE"; + OrganisationTypeEnum[OrganisationTypeEnum["COMPANY"] = 'COMPANY'] = "COMPANY"; + OrganisationTypeEnum[OrganisationTypeEnum["CHARITY"] = 'CHARITY'] = "CHARITY"; + OrganisationTypeEnum[OrganisationTypeEnum["CLUBORSOCIETY"] = 'CLUB_OR_SOCIETY'] = "CLUBORSOCIETY"; + OrganisationTypeEnum[OrganisationTypeEnum["LOOKTHROUGHCOMPANY"] = 'LOOK_THROUGH_COMPANY'] = "LOOKTHROUGHCOMPANY"; + OrganisationTypeEnum[OrganisationTypeEnum["NOTFORPROFIT"] = 'NOT_FOR_PROFIT'] = "NOTFORPROFIT"; + OrganisationTypeEnum[OrganisationTypeEnum["PARTNERSHIP"] = 'PARTNERSHIP'] = "PARTNERSHIP"; + OrganisationTypeEnum[OrganisationTypeEnum["SCORPORATION"] = 'S_CORPORATION'] = "SCORPORATION"; + OrganisationTypeEnum[OrganisationTypeEnum["SELFMANAGEDSUPERANNUATIONFUND"] = 'SELF_MANAGED_SUPERANNUATION_FUND'] = "SELFMANAGEDSUPERANNUATIONFUND"; + OrganisationTypeEnum[OrganisationTypeEnum["SOLETRADER"] = 'SOLE_TRADER'] = "SOLETRADER"; + OrganisationTypeEnum[OrganisationTypeEnum["SUPERANNUATIONFUND"] = 'SUPERANNUATION_FUND'] = "SUPERANNUATIONFUND"; + OrganisationTypeEnum[OrganisationTypeEnum["TRUST"] = 'TRUST'] = "TRUST"; + })(OrganisationTypeEnum = Organisation.OrganisationTypeEnum || (Organisation.OrganisationTypeEnum = {})); + let SalesTaxBasisEnum; + (function (SalesTaxBasisEnum) { + SalesTaxBasisEnum[SalesTaxBasisEnum["PAYMENTS"] = 'PAYMENTS'] = "PAYMENTS"; + SalesTaxBasisEnum[SalesTaxBasisEnum["INVOICE"] = 'INVOICE'] = "INVOICE"; + SalesTaxBasisEnum[SalesTaxBasisEnum["NONE"] = 'NONE'] = "NONE"; + SalesTaxBasisEnum[SalesTaxBasisEnum["CASH"] = 'CASH'] = "CASH"; + SalesTaxBasisEnum[SalesTaxBasisEnum["ACCRUAL"] = 'ACCRUAL'] = "ACCRUAL"; + SalesTaxBasisEnum[SalesTaxBasisEnum["FLATRATECASH"] = 'FLATRATECASH'] = "FLATRATECASH"; + SalesTaxBasisEnum[SalesTaxBasisEnum["FLATRATEACCRUAL"] = 'FLATRATEACCRUAL'] = "FLATRATEACCRUAL"; + SalesTaxBasisEnum[SalesTaxBasisEnum["ACCRUALS"] = 'ACCRUALS'] = "ACCRUALS"; + })(SalesTaxBasisEnum = Organisation.SalesTaxBasisEnum || (Organisation.SalesTaxBasisEnum = {})); + let SalesTaxPeriodEnum; + (function (SalesTaxPeriodEnum) { + SalesTaxPeriodEnum[SalesTaxPeriodEnum["MONTHLY"] = 'MONTHLY'] = "MONTHLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["QUARTERLY1"] = 'QUARTERLY1'] = "QUARTERLY1"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["QUARTERLY2"] = 'QUARTERLY2'] = "QUARTERLY2"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["QUARTERLY3"] = 'QUARTERLY3'] = "QUARTERLY3"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["ANNUALLY"] = 'ANNUALLY'] = "ANNUALLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["ONEMONTHS"] = 'ONEMONTHS'] = "ONEMONTHS"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["TWOMONTHS"] = 'TWOMONTHS'] = "TWOMONTHS"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["SIXMONTHS"] = 'SIXMONTHS'] = "SIXMONTHS"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["_1MONTHLY"] = '1MONTHLY'] = "_1MONTHLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["_2MONTHLY"] = '2MONTHLY'] = "_2MONTHLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["_3MONTHLY"] = '3MONTHLY'] = "_3MONTHLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["_6MONTHLY"] = '6MONTHLY'] = "_6MONTHLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["QUARTERLY"] = 'QUARTERLY'] = "QUARTERLY"; + SalesTaxPeriodEnum[SalesTaxPeriodEnum["YEARLY"] = 'YEARLY'] = "YEARLY"; + })(SalesTaxPeriodEnum = Organisation.SalesTaxPeriodEnum || (Organisation.SalesTaxPeriodEnum = {})); + let OrganisationEntityTypeEnum; + (function (OrganisationEntityTypeEnum) { + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["ACCOUNTINGPRACTICE"] = 'ACCOUNTING_PRACTICE'] = "ACCOUNTINGPRACTICE"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["COMPANY"] = 'COMPANY'] = "COMPANY"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["CHARITY"] = 'CHARITY'] = "CHARITY"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["CLUBORSOCIETY"] = 'CLUB_OR_SOCIETY'] = "CLUBORSOCIETY"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["LOOKTHROUGHCOMPANY"] = 'LOOK_THROUGH_COMPANY'] = "LOOKTHROUGHCOMPANY"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["NOTFORPROFIT"] = 'NOT_FOR_PROFIT'] = "NOTFORPROFIT"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["PARTNERSHIP"] = 'PARTNERSHIP'] = "PARTNERSHIP"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["SCORPORATION"] = 'S_CORPORATION'] = "SCORPORATION"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["SELFMANAGEDSUPERANNUATIONFUND"] = 'SELF_MANAGED_SUPERANNUATION_FUND'] = "SELFMANAGEDSUPERANNUATIONFUND"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["SOLETRADER"] = 'SOLE_TRADER'] = "SOLETRADER"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["SUPERANNUATIONFUND"] = 'SUPERANNUATION_FUND'] = "SUPERANNUATIONFUND"; + OrganisationEntityTypeEnum[OrganisationEntityTypeEnum["TRUST"] = 'TRUST'] = "TRUST"; + })(OrganisationEntityTypeEnum = Organisation.OrganisationEntityTypeEnum || (Organisation.OrganisationEntityTypeEnum = {})); + let ClassEnum; + (function (ClassEnum) { + ClassEnum[ClassEnum["DEMO"] = 'DEMO'] = "DEMO"; + ClassEnum[ClassEnum["TRIAL"] = 'TRIAL'] = "TRIAL"; + ClassEnum[ClassEnum["STARTER"] = 'STARTER'] = "STARTER"; + ClassEnum[ClassEnum["STANDARD"] = 'STANDARD'] = "STANDARD"; + ClassEnum[ClassEnum["PREMIUM"] = 'PREMIUM'] = "PREMIUM"; + ClassEnum[ClassEnum["PREMIUM20"] = 'PREMIUM_20'] = "PREMIUM20"; + ClassEnum[ClassEnum["PREMIUM50"] = 'PREMIUM_50'] = "PREMIUM50"; + ClassEnum[ClassEnum["PREMIUM100"] = 'PREMIUM_100'] = "PREMIUM100"; + ClassEnum[ClassEnum["LEDGER"] = 'LEDGER'] = "LEDGER"; + ClassEnum[ClassEnum["GSTCASHBOOK"] = 'GST_CASHBOOK'] = "GSTCASHBOOK"; + ClassEnum[ClassEnum["NONGSTCASHBOOK"] = 'NON_GST_CASHBOOK'] = "NONGSTCASHBOOK"; + })(ClassEnum = Organisation.ClassEnum || (Organisation.ClassEnum = {})); + let EditionEnum; + (function (EditionEnum) { + EditionEnum[EditionEnum["BUSINESS"] = 'BUSINESS'] = "BUSINESS"; + EditionEnum[EditionEnum["PARTNER"] = 'PARTNER'] = "PARTNER"; + })(EditionEnum = Organisation.EditionEnum || (Organisation.EditionEnum = {})); +})(Organisation = exports.Organisation || (exports.Organisation = {})); +//# sourceMappingURL=organisation.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/organisation.js.map b/dist/gen/model/accounting/organisation.js.map new file mode 100644 index 000000000..c88ea8bc0 --- /dev/null +++ b/dist/gen/model/accounting/organisation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"organisation.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/organisation.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/organisations.d.ts b/dist/gen/model/accounting/organisations.d.ts new file mode 100644 index 000000000..be6c5271c --- /dev/null +++ b/dist/gen/model/accounting/organisations.d.ts @@ -0,0 +1,15 @@ +import { Organisation } from './organisation'; +export declare class Organisations { + 'organisations'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/organisations.js b/dist/gen/model/accounting/organisations.js new file mode 100644 index 000000000..82dd146f8 --- /dev/null +++ b/dist/gen/model/accounting/organisations.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Organisations { + static getAttributeTypeMap() { + return Organisations.attributeTypeMap; + } +} +exports.Organisations = Organisations; +Organisations.discriminator = undefined; +Organisations.attributeTypeMap = [ + { + "name": "organisations", + "baseName": "Organisations", + "type": "Array" + } +]; +//# sourceMappingURL=organisations.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/organisations.js.map b/dist/gen/model/accounting/organisations.js.map new file mode 100644 index 000000000..7239c8aa2 --- /dev/null +++ b/dist/gen/model/accounting/organisations.js.map @@ -0,0 +1 @@ +{"version":3,"file":"organisations.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/organisations.ts"],"names":[],"mappings":";;AAcA,MAAa,aAAa;IAYtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAdL,sCAeC;AAZU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/overpayment.d.ts b/dist/gen/model/accounting/overpayment.d.ts new file mode 100644 index 000000000..de657f468 --- /dev/null +++ b/dist/gen/model/accounting/overpayment.d.ts @@ -0,0 +1,50 @@ +import { Allocation } from './allocation'; +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { Payment } from './payment'; +export declare class Overpayment { + 'type'?: Overpayment.TypeEnum; + 'contact'?: Contact; + 'date'?: string; + 'status'?: Overpayment.StatusEnum; + 'lineAmountTypes'?: LineAmountTypes; + 'lineItems'?: Array; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'updatedDateUTC'?: Date; + 'currencyCode'?: CurrencyCode; + 'overpaymentID'?: string; + 'currencyRate'?: number; + 'remainingCredit'?: number; + 'allocations'?: Array; + 'payments'?: Array; + 'hasAttachments'?: boolean; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Overpayment { + enum TypeEnum { + RECEIVEOVERPAYMENT, + SPENDOVERPAYMENT, + AROVERPAYMENT + } + enum StatusEnum { + AUTHORISED, + PAID, + VOIDED + } +} diff --git a/dist/gen/model/accounting/overpayment.js b/dist/gen/model/accounting/overpayment.js new file mode 100644 index 000000000..60f0aec49 --- /dev/null +++ b/dist/gen/model/accounting/overpayment.js @@ -0,0 +1,116 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Overpayment { + static getAttributeTypeMap() { + return Overpayment.attributeTypeMap; + } +} +exports.Overpayment = Overpayment; +Overpayment.discriminator = undefined; +Overpayment.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "Overpayment.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "Overpayment.StatusEnum" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "overpaymentID", + "baseName": "OverpaymentID", + "type": "string" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "remainingCredit", + "baseName": "RemainingCredit", + "type": "number" + }, + { + "name": "allocations", + "baseName": "Allocations", + "type": "Array" + }, + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (Overpayment) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["RECEIVEOVERPAYMENT"] = 'RECEIVE-OVERPAYMENT'] = "RECEIVEOVERPAYMENT"; + TypeEnum[TypeEnum["SPENDOVERPAYMENT"] = 'SPEND-OVERPAYMENT'] = "SPENDOVERPAYMENT"; + TypeEnum[TypeEnum["AROVERPAYMENT"] = 'AROVERPAYMENT'] = "AROVERPAYMENT"; + })(TypeEnum = Overpayment.TypeEnum || (Overpayment.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["PAID"] = 'PAID'] = "PAID"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = Overpayment.StatusEnum || (Overpayment.StatusEnum = {})); +})(Overpayment = exports.Overpayment || (exports.Overpayment = {})); +//# sourceMappingURL=overpayment.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/overpayment.js.map b/dist/gen/model/accounting/overpayment.js.map new file mode 100644 index 000000000..c98787824 --- /dev/null +++ b/dist/gen/model/accounting/overpayment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"overpayment.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/overpayment.ts"],"names":[],"mappings":";;AAoBA,MAAa,WAAW;IA+JpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAjKL,kCAkKC;AAjGU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,sBAAsB;KACjC;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC;AAOf,WAAiB,WAAW;IACxB,IAAY,QAIX;IAJD,WAAY,QAAQ;QAChB,0CAA2B,qBAAqB,wBAAA,CAAA;QAChD,wCAAyB,mBAAmB,sBAAA,CAAA;QAC5C,qCAAsB,eAAe,mBAAA,CAAA;IACzC,CAAC,EAJW,QAAQ,GAAR,oBAAQ,KAAR,oBAAQ,QAInB;IACD,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,gCAAa,MAAM,UAAA,CAAA;QACnB,kCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EAJW,UAAU,GAAV,sBAAU,KAAV,sBAAU,QAIrB;AACL,CAAC,EAXgB,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAW3B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/overpayments.d.ts b/dist/gen/model/accounting/overpayments.d.ts new file mode 100644 index 000000000..a67cbae9f --- /dev/null +++ b/dist/gen/model/accounting/overpayments.d.ts @@ -0,0 +1,15 @@ +import { Overpayment } from './overpayment'; +export declare class Overpayments { + 'overpayments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/overpayments.js b/dist/gen/model/accounting/overpayments.js new file mode 100644 index 000000000..29164950a --- /dev/null +++ b/dist/gen/model/accounting/overpayments.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Overpayments { + static getAttributeTypeMap() { + return Overpayments.attributeTypeMap; + } +} +exports.Overpayments = Overpayments; +Overpayments.discriminator = undefined; +Overpayments.attributeTypeMap = [ + { + "name": "overpayments", + "baseName": "Overpayments", + "type": "Array" + } +]; +//# sourceMappingURL=overpayments.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/overpayments.js.map b/dist/gen/model/accounting/overpayments.js.map new file mode 100644 index 000000000..c097d1040 --- /dev/null +++ b/dist/gen/model/accounting/overpayments.js.map @@ -0,0 +1 @@ +{"version":3,"file":"overpayments.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/overpayments.ts"],"names":[],"mappings":";;AAcA,MAAa,YAAY;IAYrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AAdL,oCAeC;AAZU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,oBAAoB;KAC/B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/payment.d.ts b/dist/gen/model/accounting/payment.d.ts new file mode 100644 index 000000000..bebddc945 --- /dev/null +++ b/dist/gen/model/accounting/payment.d.ts @@ -0,0 +1,58 @@ +import { Account } from './account'; +import { CreditNote } from './creditNote'; +import { Invoice } from './invoice'; +import { Overpayment } from './overpayment'; +import { Prepayment } from './prepayment'; +import { ValidationError } from './validationError'; +export declare class Payment { + 'invoice'?: Invoice; + 'creditNote'?: CreditNote; + 'prepayment'?: Prepayment; + 'overpayment'?: Overpayment; + 'invoiceNumber'?: string; + 'creditNoteNumber'?: string; + 'account'?: Account; + 'code'?: string; + 'date'?: string; + 'currencyRate'?: number; + 'amount'?: number; + 'reference'?: string; + 'isReconciled'?: boolean; + 'status'?: Payment.StatusEnum; + 'paymentType'?: Payment.PaymentTypeEnum; + 'updatedDateUTC'?: Date; + 'paymentID'?: string; + 'bankAccountNumber'?: string; + 'particulars'?: string; + 'details'?: string; + 'hasAccount'?: boolean; + 'hasValidationErrors'?: boolean; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Payment { + enum StatusEnum { + AUTHORISED, + DELETED + } + enum PaymentTypeEnum { + ACCRECPAYMENT, + ACCPAYPAYMENT, + ARCREDITPAYMENT, + APCREDITPAYMENT, + AROVERPAYMENTPAYMENT, + ARPREPAYMENTPAYMENT, + APPREPAYMENTPAYMENT, + APOVERPAYMENTPAYMENT + } +} diff --git a/dist/gen/model/accounting/payment.js b/dist/gen/model/accounting/payment.js new file mode 100644 index 000000000..3e598a87c --- /dev/null +++ b/dist/gen/model/accounting/payment.js @@ -0,0 +1,145 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Payment { + static getAttributeTypeMap() { + return Payment.attributeTypeMap; + } +} +exports.Payment = Payment; +Payment.discriminator = undefined; +Payment.attributeTypeMap = [ + { + "name": "invoice", + "baseName": "Invoice", + "type": "Invoice" + }, + { + "name": "creditNote", + "baseName": "CreditNote", + "type": "CreditNote" + }, + { + "name": "prepayment", + "baseName": "Prepayment", + "type": "Prepayment" + }, + { + "name": "overpayment", + "baseName": "Overpayment", + "type": "Overpayment" + }, + { + "name": "invoiceNumber", + "baseName": "InvoiceNumber", + "type": "string" + }, + { + "name": "creditNoteNumber", + "baseName": "CreditNoteNumber", + "type": "string" + }, + { + "name": "account", + "baseName": "Account", + "type": "Account" + }, + { + "name": "code", + "baseName": "Code", + "type": "string" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "amount", + "baseName": "Amount", + "type": "number" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "isReconciled", + "baseName": "IsReconciled", + "type": "boolean" + }, + { + "name": "status", + "baseName": "Status", + "type": "Payment.StatusEnum" + }, + { + "name": "paymentType", + "baseName": "PaymentType", + "type": "Payment.PaymentTypeEnum" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "paymentID", + "baseName": "PaymentID", + "type": "string" + }, + { + "name": "bankAccountNumber", + "baseName": "BankAccountNumber", + "type": "string" + }, + { + "name": "particulars", + "baseName": "Particulars", + "type": "string" + }, + { + "name": "details", + "baseName": "Details", + "type": "string" + }, + { + "name": "hasAccount", + "baseName": "HasAccount", + "type": "boolean" + }, + { + "name": "hasValidationErrors", + "baseName": "HasValidationErrors", + "type": "boolean" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +(function (Payment) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = Payment.StatusEnum || (Payment.StatusEnum = {})); + let PaymentTypeEnum; + (function (PaymentTypeEnum) { + PaymentTypeEnum[PaymentTypeEnum["ACCRECPAYMENT"] = 'ACCRECPAYMENT'] = "ACCRECPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["ACCPAYPAYMENT"] = 'ACCPAYPAYMENT'] = "ACCPAYPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["ARCREDITPAYMENT"] = 'ARCREDITPAYMENT'] = "ARCREDITPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["APCREDITPAYMENT"] = 'APCREDITPAYMENT'] = "APCREDITPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["AROVERPAYMENTPAYMENT"] = 'AROVERPAYMENTPAYMENT'] = "AROVERPAYMENTPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["ARPREPAYMENTPAYMENT"] = 'ARPREPAYMENTPAYMENT'] = "ARPREPAYMENTPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["APPREPAYMENTPAYMENT"] = 'APPREPAYMENTPAYMENT'] = "APPREPAYMENTPAYMENT"; + PaymentTypeEnum[PaymentTypeEnum["APOVERPAYMENTPAYMENT"] = 'APOVERPAYMENTPAYMENT'] = "APOVERPAYMENTPAYMENT"; + })(PaymentTypeEnum = Payment.PaymentTypeEnum || (Payment.PaymentTypeEnum = {})); +})(Payment = exports.Payment || (exports.Payment = {})); +//# sourceMappingURL=payment.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/payment.js.map b/dist/gen/model/accounting/payment.js.map new file mode 100644 index 000000000..4f2c3356c --- /dev/null +++ b/dist/gen/model/accounting/payment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"payment.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/payment.ts"],"names":[],"mappings":";;AAmBA,MAAa,OAAO;IAsMhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AAxML,0BAyMC;AA1HU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,YAAY;KACvB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,YAAY;KACvB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,aAAa;KACxB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,oBAAoB;KAC/B;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,yBAAyB;KACpC;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,qBAAqB;QAC7B,UAAU,EAAE,qBAAqB;QACjC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC;AAOf,WAAiB,OAAO;IACpB,IAAY,UAGX;IAHD,WAAY,UAAU;QAClB,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;IACD,IAAY,eASX;IATD,WAAY,eAAe;QACvB,mDAAsB,eAAe,mBAAA,CAAA;QACrC,mDAAsB,eAAe,mBAAA,CAAA;QACrC,qDAAwB,iBAAiB,qBAAA,CAAA;QACzC,qDAAwB,iBAAiB,qBAAA,CAAA;QACzC,0DAA6B,sBAAsB,0BAAA,CAAA;QACnD,yDAA4B,qBAAqB,yBAAA,CAAA;QACjD,yDAA4B,qBAAqB,yBAAA,CAAA;QACjD,0DAA6B,sBAAsB,0BAAA,CAAA;IACvD,CAAC,EATW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAS1B;AACL,CAAC,EAfgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAevB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentService.d.ts b/dist/gen/model/accounting/paymentService.d.ts new file mode 100644 index 000000000..85f72940e --- /dev/null +++ b/dist/gen/model/accounting/paymentService.d.ts @@ -0,0 +1,20 @@ +import { ValidationError } from './validationError'; +export declare class PaymentService { + 'paymentServiceID'?: string; + 'paymentServiceName'?: string; + 'paymentServiceUrl'?: string; + 'payNowText'?: string; + 'paymentServiceType'?: string; + 'validationErrors'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/paymentService.js b/dist/gen/model/accounting/paymentService.js new file mode 100644 index 000000000..eeb39e578 --- /dev/null +++ b/dist/gen/model/accounting/paymentService.js @@ -0,0 +1,42 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class PaymentService { + static getAttributeTypeMap() { + return PaymentService.attributeTypeMap; + } +} +exports.PaymentService = PaymentService; +PaymentService.discriminator = undefined; +PaymentService.attributeTypeMap = [ + { + "name": "paymentServiceID", + "baseName": "PaymentServiceID", + "type": "string" + }, + { + "name": "paymentServiceName", + "baseName": "PaymentServiceName", + "type": "string" + }, + { + "name": "paymentServiceUrl", + "baseName": "PaymentServiceUrl", + "type": "string" + }, + { + "name": "payNowText", + "baseName": "PayNowText", + "type": "string" + }, + { + "name": "paymentServiceType", + "baseName": "PaymentServiceType", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + } +]; +//# sourceMappingURL=paymentService.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentService.js.map b/dist/gen/model/accounting/paymentService.js.map new file mode 100644 index 000000000..7be249f83 --- /dev/null +++ b/dist/gen/model/accounting/paymentService.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paymentService.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/paymentService.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IA4DvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AA9DL,wCA+DC;AArCU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentServices.d.ts b/dist/gen/model/accounting/paymentServices.d.ts new file mode 100644 index 000000000..098092ed2 --- /dev/null +++ b/dist/gen/model/accounting/paymentServices.d.ts @@ -0,0 +1,15 @@ +import { PaymentService } from './paymentService'; +export declare class PaymentServices { + 'paymentServices'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/paymentServices.js b/dist/gen/model/accounting/paymentServices.js new file mode 100644 index 000000000..04c047e0a --- /dev/null +++ b/dist/gen/model/accounting/paymentServices.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class PaymentServices { + static getAttributeTypeMap() { + return PaymentServices.attributeTypeMap; + } +} +exports.PaymentServices = PaymentServices; +PaymentServices.discriminator = undefined; +PaymentServices.attributeTypeMap = [ + { + "name": "paymentServices", + "baseName": "PaymentServices", + "type": "Array" + } +]; +//# sourceMappingURL=paymentServices.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentServices.js.map b/dist/gen/model/accounting/paymentServices.js.map new file mode 100644 index 000000000..ff94253da --- /dev/null +++ b/dist/gen/model/accounting/paymentServices.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paymentServices.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/paymentServices.ts"],"names":[],"mappings":";;AAcA,MAAa,eAAe;IAYxB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AAdL,0CAeC;AAZU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,uBAAuB;KAClC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentTerm.d.ts b/dist/gen/model/accounting/paymentTerm.d.ts new file mode 100644 index 000000000..57f77c296 --- /dev/null +++ b/dist/gen/model/accounting/paymentTerm.d.ts @@ -0,0 +1,16 @@ +import { Bill } from './bill'; +export declare class PaymentTerm { + 'bills'?: Bill; + 'sales'?: Bill; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/paymentTerm.js b/dist/gen/model/accounting/paymentTerm.js new file mode 100644 index 000000000..58781f75d --- /dev/null +++ b/dist/gen/model/accounting/paymentTerm.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class PaymentTerm { + static getAttributeTypeMap() { + return PaymentTerm.attributeTypeMap; + } +} +exports.PaymentTerm = PaymentTerm; +PaymentTerm.discriminator = undefined; +PaymentTerm.attributeTypeMap = [ + { + "name": "bills", + "baseName": "Bills", + "type": "Bill" + }, + { + "name": "sales", + "baseName": "Sales", + "type": "Bill" + } +]; +//# sourceMappingURL=paymentTerm.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentTerm.js.map b/dist/gen/model/accounting/paymentTerm.js.map new file mode 100644 index 000000000..418a7712f --- /dev/null +++ b/dist/gen/model/accounting/paymentTerm.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paymentTerm.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/paymentTerm.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAkBpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AApBL,kCAqBC;AAjBU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,MAAM;KACjB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentTermType.d.ts b/dist/gen/model/accounting/paymentTermType.d.ts new file mode 100644 index 000000000..81ca74dab --- /dev/null +++ b/dist/gen/model/accounting/paymentTermType.d.ts @@ -0,0 +1,6 @@ +export declare enum PaymentTermType { + DAYSAFTERBILLDATE, + DAYSAFTERBILLMONTH, + OFCURRENTMONTH, + OFFOLLOWINGMONTH +} diff --git a/dist/gen/model/accounting/paymentTermType.js b/dist/gen/model/accounting/paymentTermType.js new file mode 100644 index 000000000..664ed7ee1 --- /dev/null +++ b/dist/gen/model/accounting/paymentTermType.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var PaymentTermType; +(function (PaymentTermType) { + PaymentTermType[PaymentTermType["DAYSAFTERBILLDATE"] = 'DAYSAFTERBILLDATE'] = "DAYSAFTERBILLDATE"; + PaymentTermType[PaymentTermType["DAYSAFTERBILLMONTH"] = 'DAYSAFTERBILLMONTH'] = "DAYSAFTERBILLMONTH"; + PaymentTermType[PaymentTermType["OFCURRENTMONTH"] = 'OFCURRENTMONTH'] = "OFCURRENTMONTH"; + PaymentTermType[PaymentTermType["OFFOLLOWINGMONTH"] = 'OFFOLLOWINGMONTH'] = "OFFOLLOWINGMONTH"; +})(PaymentTermType = exports.PaymentTermType || (exports.PaymentTermType = {})); +//# sourceMappingURL=paymentTermType.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/paymentTermType.js.map b/dist/gen/model/accounting/paymentTermType.js.map new file mode 100644 index 000000000..17ecfc085 --- /dev/null +++ b/dist/gen/model/accounting/paymentTermType.js.map @@ -0,0 +1 @@ +{"version":3,"file":"paymentTermType.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/paymentTermType.ts"],"names":[],"mappings":";;AAaA,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,uDAA0B,mBAAmB,uBAAA,CAAA;IAC7C,wDAA2B,oBAAoB,wBAAA,CAAA;IAC/C,oDAAuB,gBAAgB,oBAAA,CAAA;IACvC,sDAAyB,kBAAkB,sBAAA,CAAA;AAC/C,CAAC,EALW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAK1B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/payments.d.ts b/dist/gen/model/accounting/payments.d.ts new file mode 100644 index 000000000..e0c5cab0c --- /dev/null +++ b/dist/gen/model/accounting/payments.d.ts @@ -0,0 +1,15 @@ +import { Payment } from './payment'; +export declare class Payments { + 'payments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/payments.js b/dist/gen/model/accounting/payments.js new file mode 100644 index 000000000..15c4364a9 --- /dev/null +++ b/dist/gen/model/accounting/payments.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Payments { + static getAttributeTypeMap() { + return Payments.attributeTypeMap; + } +} +exports.Payments = Payments; +Payments.discriminator = undefined; +Payments.attributeTypeMap = [ + { + "name": "payments", + "baseName": "Payments", + "type": "Array" + } +]; +//# sourceMappingURL=payments.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/payments.js.map b/dist/gen/model/accounting/payments.js.map new file mode 100644 index 000000000..6ba99c7be --- /dev/null +++ b/dist/gen/model/accounting/payments.js.map @@ -0,0 +1 @@ +{"version":3,"file":"payments.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/payments.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/phone.d.ts b/dist/gen/model/accounting/phone.d.ts new file mode 100644 index 000000000..4246cb103 --- /dev/null +++ b/dist/gen/model/accounting/phone.d.ts @@ -0,0 +1,26 @@ +export declare class Phone { + 'phoneType'?: Phone.PhoneTypeEnum; + 'phoneNumber'?: string; + 'phoneAreaCode'?: string; + 'phoneCountryCode'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Phone { + enum PhoneTypeEnum { + DEFAULT, + DDI, + MOBILE, + FAX, + OFFICE + } +} diff --git a/dist/gen/model/accounting/phone.js b/dist/gen/model/accounting/phone.js new file mode 100644 index 000000000..b22f948ab --- /dev/null +++ b/dist/gen/model/accounting/phone.js @@ -0,0 +1,42 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Phone { + static getAttributeTypeMap() { + return Phone.attributeTypeMap; + } +} +exports.Phone = Phone; +Phone.discriminator = undefined; +Phone.attributeTypeMap = [ + { + "name": "phoneType", + "baseName": "PhoneType", + "type": "Phone.PhoneTypeEnum" + }, + { + "name": "phoneNumber", + "baseName": "PhoneNumber", + "type": "string" + }, + { + "name": "phoneAreaCode", + "baseName": "PhoneAreaCode", + "type": "string" + }, + { + "name": "phoneCountryCode", + "baseName": "PhoneCountryCode", + "type": "string" + } +]; +(function (Phone) { + let PhoneTypeEnum; + (function (PhoneTypeEnum) { + PhoneTypeEnum[PhoneTypeEnum["DEFAULT"] = 'DEFAULT'] = "DEFAULT"; + PhoneTypeEnum[PhoneTypeEnum["DDI"] = 'DDI'] = "DDI"; + PhoneTypeEnum[PhoneTypeEnum["MOBILE"] = 'MOBILE'] = "MOBILE"; + PhoneTypeEnum[PhoneTypeEnum["FAX"] = 'FAX'] = "FAX"; + PhoneTypeEnum[PhoneTypeEnum["OFFICE"] = 'OFFICE'] = "OFFICE"; + })(PhoneTypeEnum = Phone.PhoneTypeEnum || (Phone.PhoneTypeEnum = {})); +})(Phone = exports.Phone || (exports.Phone = {})); +//# sourceMappingURL=phone.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/phone.js.map b/dist/gen/model/accounting/phone.js.map new file mode 100644 index 000000000..4ff3cbbfd --- /dev/null +++ b/dist/gen/model/accounting/phone.js.map @@ -0,0 +1 @@ +{"version":3,"file":"phone.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/phone.ts"],"names":[],"mappings":";;AAaA,MAAa,KAAK;IAuCd,MAAM,CAAC,mBAAmB;QACtB,OAAO,KAAK,CAAC,gBAAgB,CAAC;IAClC,CAAC;;AAzCL,sBA0CC;AA3BU,mBAAa,GAAuB,SAAS,CAAC;AAE9C,sBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,qBAAqB;KAChC;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,KAAK;IAClB,IAAY,aAMX;IAND,WAAY,aAAa;QACrB,yCAAgB,SAAS,aAAA,CAAA;QACzB,qCAAY,KAAK,SAAA,CAAA;QACjB,wCAAe,QAAQ,YAAA,CAAA;QACvB,qCAAY,KAAK,SAAA,CAAA;QACjB,wCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EANW,aAAa,GAAb,mBAAa,KAAb,mBAAa,QAMxB;AACL,CAAC,EARgB,KAAK,GAAL,aAAK,KAAL,aAAK,QAQrB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/prepayment.d.ts b/dist/gen/model/accounting/prepayment.d.ts new file mode 100644 index 000000000..3f3c7c363 --- /dev/null +++ b/dist/gen/model/accounting/prepayment.d.ts @@ -0,0 +1,49 @@ +import { Allocation } from './allocation'; +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +export declare class Prepayment { + 'type'?: Prepayment.TypeEnum; + 'contact'?: Contact; + 'date'?: string; + 'status'?: Prepayment.StatusEnum; + 'lineAmountTypes'?: LineAmountTypes; + 'lineItems'?: Array; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'updatedDateUTC'?: Date; + 'currencyCode'?: CurrencyCode; + 'prepaymentID'?: string; + 'currencyRate'?: number; + 'remainingCredit'?: number; + 'allocations'?: Array; + 'hasAttachments'?: boolean; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Prepayment { + enum TypeEnum { + RECEIVEPREPAYMENT, + SPENDPREPAYMENT, + ARPREPAYMENT, + APPREPAYMENT + } + enum StatusEnum { + AUTHORISED, + PAID, + VOIDED + } +} diff --git a/dist/gen/model/accounting/prepayment.js b/dist/gen/model/accounting/prepayment.js new file mode 100644 index 000000000..4f4373b4a --- /dev/null +++ b/dist/gen/model/accounting/prepayment.js @@ -0,0 +1,112 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Prepayment { + static getAttributeTypeMap() { + return Prepayment.attributeTypeMap; + } +} +exports.Prepayment = Prepayment; +Prepayment.discriminator = undefined; +Prepayment.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "Prepayment.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "Prepayment.StatusEnum" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "prepaymentID", + "baseName": "PrepaymentID", + "type": "string" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "remainingCredit", + "baseName": "RemainingCredit", + "type": "number" + }, + { + "name": "allocations", + "baseName": "Allocations", + "type": "Array" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (Prepayment) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["RECEIVEPREPAYMENT"] = 'RECEIVE-PREPAYMENT'] = "RECEIVEPREPAYMENT"; + TypeEnum[TypeEnum["SPENDPREPAYMENT"] = 'SPEND-PREPAYMENT'] = "SPENDPREPAYMENT"; + TypeEnum[TypeEnum["ARPREPAYMENT"] = 'ARPREPAYMENT'] = "ARPREPAYMENT"; + TypeEnum[TypeEnum["APPREPAYMENT"] = 'APPREPAYMENT'] = "APPREPAYMENT"; + })(TypeEnum = Prepayment.TypeEnum || (Prepayment.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["PAID"] = 'PAID'] = "PAID"; + StatusEnum[StatusEnum["VOIDED"] = 'VOIDED'] = "VOIDED"; + })(StatusEnum = Prepayment.StatusEnum || (Prepayment.StatusEnum = {})); +})(Prepayment = exports.Prepayment || (exports.Prepayment = {})); +//# sourceMappingURL=prepayment.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/prepayment.js.map b/dist/gen/model/accounting/prepayment.js.map new file mode 100644 index 000000000..e61e43d66 --- /dev/null +++ b/dist/gen/model/accounting/prepayment.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prepayment.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/prepayment.ts"],"names":[],"mappings":";;AAmBA,MAAa,UAAU;IAsJnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AAxJL,gCAyJC;AA5FU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,qBAAqB;KAChC;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,uBAAuB;KAClC;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC;AAOf,WAAiB,UAAU;IACvB,IAAY,QAKX;IALD,WAAY,QAAQ;QAChB,yCAA0B,oBAAoB,uBAAA,CAAA;QAC9C,uCAAwB,kBAAkB,qBAAA,CAAA;QAC1C,oCAAqB,cAAc,kBAAA,CAAA;QACnC,oCAAqB,cAAc,kBAAA,CAAA;IACvC,CAAC,EALW,QAAQ,GAAR,mBAAQ,KAAR,mBAAQ,QAKnB;IACD,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,gCAAa,MAAM,UAAA,CAAA;QACnB,kCAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EAJW,UAAU,GAAV,qBAAU,KAAV,qBAAU,QAIrB;AACL,CAAC,EAZgB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAY1B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/prepayments.d.ts b/dist/gen/model/accounting/prepayments.d.ts new file mode 100644 index 000000000..9e0668eed --- /dev/null +++ b/dist/gen/model/accounting/prepayments.d.ts @@ -0,0 +1,15 @@ +import { Prepayment } from './prepayment'; +export declare class Prepayments { + 'prepayments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/prepayments.js b/dist/gen/model/accounting/prepayments.js new file mode 100644 index 000000000..945d2522d --- /dev/null +++ b/dist/gen/model/accounting/prepayments.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Prepayments { + static getAttributeTypeMap() { + return Prepayments.attributeTypeMap; + } +} +exports.Prepayments = Prepayments; +Prepayments.discriminator = undefined; +Prepayments.attributeTypeMap = [ + { + "name": "prepayments", + "baseName": "Prepayments", + "type": "Array" + } +]; +//# sourceMappingURL=prepayments.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/prepayments.js.map b/dist/gen/model/accounting/prepayments.js.map new file mode 100644 index 000000000..f61957173 --- /dev/null +++ b/dist/gen/model/accounting/prepayments.js.map @@ -0,0 +1 @@ +{"version":3,"file":"prepayments.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/prepayments.ts"],"names":[],"mappings":";;AAcA,MAAa,WAAW;IAYpB,MAAM,CAAC,mBAAmB;QACtB,OAAO,WAAW,CAAC,gBAAgB,CAAC;IACxC,CAAC;;AAdL,kCAeC;AAZU,yBAAa,GAAuB,SAAS,CAAC;AAE9C,4BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/purchase.d.ts b/dist/gen/model/accounting/purchase.d.ts new file mode 100644 index 000000000..793aae825 --- /dev/null +++ b/dist/gen/model/accounting/purchase.d.ts @@ -0,0 +1,17 @@ +export declare class Purchase { + 'unitPrice'?: number; + 'accountCode'?: string; + 'cOGSAccountCode'?: string; + 'taxType'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/purchase.js b/dist/gen/model/accounting/purchase.js new file mode 100644 index 000000000..d906399df --- /dev/null +++ b/dist/gen/model/accounting/purchase.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Purchase { + static getAttributeTypeMap() { + return Purchase.attributeTypeMap; + } +} +exports.Purchase = Purchase; +Purchase.discriminator = undefined; +Purchase.attributeTypeMap = [ + { + "name": "unitPrice", + "baseName": "UnitPrice", + "type": "number" + }, + { + "name": "accountCode", + "baseName": "AccountCode", + "type": "string" + }, + { + "name": "cOGSAccountCode", + "baseName": "COGSAccountCode", + "type": "string" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + } +]; +//# sourceMappingURL=purchase.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/purchase.js.map b/dist/gen/model/accounting/purchase.js.map new file mode 100644 index 000000000..2afb81fca --- /dev/null +++ b/dist/gen/model/accounting/purchase.js.map @@ -0,0 +1 @@ +{"version":3,"file":"purchase.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/purchase.ts"],"names":[],"mappings":";;AAaA,MAAa,QAAQ;IA0CjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AA5CL,4BA6CC;AA3BU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/purchaseOrder.d.ts b/dist/gen/model/accounting/purchaseOrder.d.ts new file mode 100644 index 000000000..1e9a85bf5 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrder.d.ts @@ -0,0 +1,56 @@ +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { ValidationError } from './validationError'; +export declare class PurchaseOrder { + 'contact': Contact; + 'lineItems': Array; + 'date'?: string; + 'deliveryDate'?: string; + 'lineAmountTypes'?: LineAmountTypes; + 'purchaseOrderNumber'?: string; + 'reference'?: string; + 'brandingThemeID'?: string; + 'currencyCode'?: CurrencyCode; + 'status'?: PurchaseOrder.StatusEnum; + 'sentToContact'?: boolean; + 'deliveryAddress'?: string; + 'attentionTo'?: string; + 'telephone'?: string; + 'deliveryInstructions'?: string; + 'expectedArrivalDate'?: string; + 'purchaseOrderID'?: string; + 'currencyRate'?: number; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'totalDiscount'?: number; + 'hasAttachments'?: boolean; + 'updatedDateUTC'?: Date; + 'statusAttributeString'?: string; + 'validationErrors'?: Array; + 'warnings'?: Array; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace PurchaseOrder { + enum StatusEnum { + DRAFT, + SUBMITTED, + AUTHORISED, + BILLED, + DELETED + } +} diff --git a/dist/gen/model/accounting/purchaseOrder.js b/dist/gen/model/accounting/purchaseOrder.js new file mode 100644 index 000000000..14b5f3a13 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrder.js @@ -0,0 +1,162 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class PurchaseOrder { + static getAttributeTypeMap() { + return PurchaseOrder.attributeTypeMap; + } +} +exports.PurchaseOrder = PurchaseOrder; +PurchaseOrder.discriminator = undefined; +PurchaseOrder.attributeTypeMap = [ + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "deliveryDate", + "baseName": "DeliveryDate", + "type": "string" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "purchaseOrderNumber", + "baseName": "PurchaseOrderNumber", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "status", + "baseName": "Status", + "type": "PurchaseOrder.StatusEnum" + }, + { + "name": "sentToContact", + "baseName": "SentToContact", + "type": "boolean" + }, + { + "name": "deliveryAddress", + "baseName": "DeliveryAddress", + "type": "string" + }, + { + "name": "attentionTo", + "baseName": "AttentionTo", + "type": "string" + }, + { + "name": "telephone", + "baseName": "Telephone", + "type": "string" + }, + { + "name": "deliveryInstructions", + "baseName": "DeliveryInstructions", + "type": "string" + }, + { + "name": "expectedArrivalDate", + "baseName": "ExpectedArrivalDate", + "type": "string" + }, + { + "name": "purchaseOrderID", + "baseName": "PurchaseOrderID", + "type": "string" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "totalDiscount", + "baseName": "TotalDiscount", + "type": "number" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "statusAttributeString", + "baseName": "StatusAttributeString", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + }, + { + "name": "warnings", + "baseName": "Warnings", + "type": "Array" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (PurchaseOrder) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["SUBMITTED"] = 'SUBMITTED'] = "SUBMITTED"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["BILLED"] = 'BILLED'] = "BILLED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = PurchaseOrder.StatusEnum || (PurchaseOrder.StatusEnum = {})); +})(PurchaseOrder = exports.PurchaseOrder || (exports.PurchaseOrder = {})); +//# sourceMappingURL=purchaseOrder.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/purchaseOrder.js.map b/dist/gen/model/accounting/purchaseOrder.js.map new file mode 100644 index 000000000..862a8b549 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrder.js.map @@ -0,0 +1 @@ +{"version":3,"file":"purchaseOrder.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/purchaseOrder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/purchaseOrders.d.ts b/dist/gen/model/accounting/purchaseOrders.d.ts new file mode 100644 index 000000000..228418e81 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrders.d.ts @@ -0,0 +1,15 @@ +import { PurchaseOrder } from './purchaseOrder'; +export declare class PurchaseOrders { + 'purchaseOrders'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/purchaseOrders.js b/dist/gen/model/accounting/purchaseOrders.js new file mode 100644 index 000000000..d6b5eab56 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrders.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class PurchaseOrders { + static getAttributeTypeMap() { + return PurchaseOrders.attributeTypeMap; + } +} +exports.PurchaseOrders = PurchaseOrders; +PurchaseOrders.discriminator = undefined; +PurchaseOrders.attributeTypeMap = [ + { + "name": "purchaseOrders", + "baseName": "PurchaseOrders", + "type": "Array" + } +]; +//# sourceMappingURL=purchaseOrders.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/purchaseOrders.js.map b/dist/gen/model/accounting/purchaseOrders.js.map new file mode 100644 index 000000000..04d4b3c38 --- /dev/null +++ b/dist/gen/model/accounting/purchaseOrders.js.map @@ -0,0 +1 @@ +{"version":3,"file":"purchaseOrders.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/purchaseOrders.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/quote.d.ts b/dist/gen/model/accounting/quote.d.ts new file mode 100644 index 000000000..32ad37527 --- /dev/null +++ b/dist/gen/model/accounting/quote.d.ts @@ -0,0 +1,40 @@ +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { QuoteStatusCodes } from './quoteStatusCodes'; +export declare class Quote { + 'quoteID'?: string; + 'quoteNumber'?: string; + 'reference'?: string; + 'terms'?: string; + 'contact': Contact; + 'lineItems'?: Array; + 'date'?: string; + 'dateString'?: string; + 'expiryDate'?: string; + 'expiryDateString'?: string; + 'status'?: QuoteStatusCodes; + 'currencyCode'?: CurrencyCode; + 'currencyRate'?: number; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'totalDiscount'?: number; + 'title'?: string; + 'summary'?: string; + 'brandingThemeID'?: string; + 'updatedDateUTC'?: Date; + 'lineAmountTypes'?: LineAmountTypes; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/quote.js b/dist/gen/model/accounting/quote.js new file mode 100644 index 000000000..ad71945f9 --- /dev/null +++ b/dist/gen/model/accounting/quote.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Quote { + static getAttributeTypeMap() { + return Quote.attributeTypeMap; + } +} +exports.Quote = Quote; +Quote.discriminator = undefined; +Quote.attributeTypeMap = [ + { + "name": "quoteID", + "baseName": "QuoteID", + "type": "string" + }, + { + "name": "quoteNumber", + "baseName": "QuoteNumber", + "type": "string" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "terms", + "baseName": "Terms", + "type": "string" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "dateString", + "baseName": "DateString", + "type": "string" + }, + { + "name": "expiryDate", + "baseName": "ExpiryDate", + "type": "string" + }, + { + "name": "expiryDateString", + "baseName": "ExpiryDateString", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "QuoteStatusCodes" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "currencyRate", + "baseName": "CurrencyRate", + "type": "number" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "totalDiscount", + "baseName": "TotalDiscount", + "type": "number" + }, + { + "name": "title", + "baseName": "Title", + "type": "string" + }, + { + "name": "summary", + "baseName": "Summary", + "type": "string" + }, + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + } +]; +//# sourceMappingURL=quote.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/quote.js.map b/dist/gen/model/accounting/quote.js.map new file mode 100644 index 000000000..2065db79b --- /dev/null +++ b/dist/gen/model/accounting/quote.js.map @@ -0,0 +1 @@ +{"version":3,"file":"quote.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/quote.ts"],"names":[],"mappings":";;AAkBA,MAAa,KAAK;IAgMd,MAAM,CAAC,mBAAmB;QACtB,OAAO,KAAK,CAAC,gBAAgB,CAAC;IAClC,CAAC;;AAlML,sBAmMC;AArHU,mBAAa,GAAuB,SAAS,CAAC;AAE9C,sBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,kBAAkB;KAC7B;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/quoteStatusCodes.d.ts b/dist/gen/model/accounting/quoteStatusCodes.d.ts new file mode 100644 index 000000000..cb090c78d --- /dev/null +++ b/dist/gen/model/accounting/quoteStatusCodes.d.ts @@ -0,0 +1,7 @@ +export declare enum QuoteStatusCodes { + DRAFT, + SENT, + DECLINED, + ACCEPTED, + INVOICED +} diff --git a/dist/gen/model/accounting/quoteStatusCodes.js b/dist/gen/model/accounting/quoteStatusCodes.js new file mode 100644 index 000000000..e14755124 --- /dev/null +++ b/dist/gen/model/accounting/quoteStatusCodes.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var QuoteStatusCodes; +(function (QuoteStatusCodes) { + QuoteStatusCodes[QuoteStatusCodes["DRAFT"] = 'DRAFT'] = "DRAFT"; + QuoteStatusCodes[QuoteStatusCodes["SENT"] = 'SENT'] = "SENT"; + QuoteStatusCodes[QuoteStatusCodes["DECLINED"] = 'DECLINED'] = "DECLINED"; + QuoteStatusCodes[QuoteStatusCodes["ACCEPTED"] = 'ACCEPTED'] = "ACCEPTED"; + QuoteStatusCodes[QuoteStatusCodes["INVOICED"] = 'INVOICED'] = "INVOICED"; +})(QuoteStatusCodes = exports.QuoteStatusCodes || (exports.QuoteStatusCodes = {})); +//# sourceMappingURL=quoteStatusCodes.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/quoteStatusCodes.js.map b/dist/gen/model/accounting/quoteStatusCodes.js.map new file mode 100644 index 000000000..aa8876dc4 --- /dev/null +++ b/dist/gen/model/accounting/quoteStatusCodes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"quoteStatusCodes.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/quoteStatusCodes.ts"],"names":[],"mappings":";;AAgBA,IAAY,gBAMX;AAND,WAAY,gBAAgB;IACxB,6CAAc,OAAO,WAAA,CAAA;IACrB,4CAAa,MAAM,UAAA,CAAA;IACnB,gDAAiB,UAAU,cAAA,CAAA;IAC3B,gDAAiB,UAAU,cAAA,CAAA;IAC3B,gDAAiB,UAAU,cAAA,CAAA;AAC/B,CAAC,EANW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAM3B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/quotes.d.ts b/dist/gen/model/accounting/quotes.d.ts new file mode 100644 index 000000000..b1f3b130e --- /dev/null +++ b/dist/gen/model/accounting/quotes.d.ts @@ -0,0 +1,15 @@ +import { Quote } from './quote'; +export declare class Quotes { + 'quotes'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/quotes.js b/dist/gen/model/accounting/quotes.js new file mode 100644 index 000000000..a5d52b8a8 --- /dev/null +++ b/dist/gen/model/accounting/quotes.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Quotes { + static getAttributeTypeMap() { + return Quotes.attributeTypeMap; + } +} +exports.Quotes = Quotes; +Quotes.discriminator = undefined; +Quotes.attributeTypeMap = [ + { + "name": "quotes", + "baseName": "Quotes", + "type": "Array" + } +]; +//# sourceMappingURL=quotes.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/quotes.js.map b/dist/gen/model/accounting/quotes.js.map new file mode 100644 index 000000000..bb4e67b1c --- /dev/null +++ b/dist/gen/model/accounting/quotes.js.map @@ -0,0 +1 @@ +{"version":3,"file":"quotes.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/quotes.ts"],"names":[],"mappings":";;AAcA,MAAa,MAAM;IAYf,MAAM,CAAC,mBAAmB;QACtB,OAAO,MAAM,CAAC,gBAAgB,CAAC;IACnC,CAAC;;AAdL,wBAeC;AAZU,oBAAa,GAAuB,SAAS,CAAC;AAE9C,uBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,cAAc;KACzB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/receipt.d.ts b/dist/gen/model/accounting/receipt.d.ts new file mode 100644 index 000000000..bc8e5c968 --- /dev/null +++ b/dist/gen/model/accounting/receipt.d.ts @@ -0,0 +1,44 @@ +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { User } from './user'; +import { ValidationError } from './validationError'; +export declare class Receipt { + 'date': string; + 'contact': Contact; + 'lineItems': Array; + 'user': User; + 'reference'?: string; + 'lineAmountTypes'?: LineAmountTypes; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'receiptID'?: string; + 'status'?: Receipt.StatusEnum; + 'receiptNumber'?: string; + 'updatedDateUTC'?: Date; + 'hasAttachments'?: boolean; + 'url'?: string; + 'validationErrors'?: Array; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Receipt { + enum StatusEnum { + DRAFT, + SUBMITTED, + AUTHORISED, + DECLINED + } +} diff --git a/dist/gen/model/accounting/receipt.js b/dist/gen/model/accounting/receipt.js new file mode 100644 index 000000000..b799f3070 --- /dev/null +++ b/dist/gen/model/accounting/receipt.js @@ -0,0 +1,106 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Receipt { + static getAttributeTypeMap() { + return Receipt.attributeTypeMap; + } +} +exports.Receipt = Receipt; +Receipt.discriminator = undefined; +Receipt.attributeTypeMap = [ + { + "name": "date", + "baseName": "Date", + "type": "string" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "user", + "baseName": "User", + "type": "User" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "receiptID", + "baseName": "ReceiptID", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "Receipt.StatusEnum" + }, + { + "name": "receiptNumber", + "baseName": "ReceiptNumber", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "url", + "baseName": "Url", + "type": "string" + }, + { + "name": "validationErrors", + "baseName": "ValidationErrors", + "type": "Array" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (Receipt) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["SUBMITTED"] = 'SUBMITTED'] = "SUBMITTED"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + StatusEnum[StatusEnum["DECLINED"] = 'DECLINED'] = "DECLINED"; + })(StatusEnum = Receipt.StatusEnum || (Receipt.StatusEnum = {})); +})(Receipt = exports.Receipt || (exports.Receipt = {})); +//# sourceMappingURL=receipt.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/receipt.js.map b/dist/gen/model/accounting/receipt.js.map new file mode 100644 index 000000000..013046b9d --- /dev/null +++ b/dist/gen/model/accounting/receipt.js.map @@ -0,0 +1 @@ +{"version":3,"file":"receipt.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/receipt.ts"],"names":[],"mappings":";;AAmBA,MAAa,OAAO;IAmJhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AArJL,0BAsJC;AA5FU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,oBAAoB;KAC/B;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,wBAAwB;KACnC;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC;AAOf,WAAiB,OAAO;IACpB,IAAY,UAKX;IALD,WAAY,UAAU;QAClB,iCAAc,OAAO,WAAA,CAAA;QACrB,qCAAkB,WAAW,eAAA,CAAA;QAC7B,sCAAmB,YAAY,gBAAA,CAAA;QAC/B,oCAAiB,UAAU,cAAA,CAAA;IAC/B,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB;AACL,CAAC,EAPgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAOvB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/receipts.d.ts b/dist/gen/model/accounting/receipts.d.ts new file mode 100644 index 000000000..90e163456 --- /dev/null +++ b/dist/gen/model/accounting/receipts.d.ts @@ -0,0 +1,15 @@ +import { Receipt } from './receipt'; +export declare class Receipts { + 'receipts'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/receipts.js b/dist/gen/model/accounting/receipts.js new file mode 100644 index 000000000..08093e58b --- /dev/null +++ b/dist/gen/model/accounting/receipts.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Receipts { + static getAttributeTypeMap() { + return Receipts.attributeTypeMap; + } +} +exports.Receipts = Receipts; +Receipts.discriminator = undefined; +Receipts.attributeTypeMap = [ + { + "name": "receipts", + "baseName": "Receipts", + "type": "Array" + } +]; +//# sourceMappingURL=receipts.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/receipts.js.map b/dist/gen/model/accounting/receipts.js.map new file mode 100644 index 000000000..51368fe07 --- /dev/null +++ b/dist/gen/model/accounting/receipts.js.map @@ -0,0 +1 @@ +{"version":3,"file":"receipts.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/receipts.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/repeatingInvoice.d.ts b/dist/gen/model/accounting/repeatingInvoice.d.ts new file mode 100644 index 000000000..328654a90 --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoice.d.ts @@ -0,0 +1,45 @@ +import { Attachment } from './attachment'; +import { Contact } from './contact'; +import { CurrencyCode } from './currencyCode'; +import { LineAmountTypes } from './lineAmountTypes'; +import { LineItem } from './lineItem'; +import { Schedule } from './schedule'; +export declare class RepeatingInvoice { + 'type'?: RepeatingInvoice.TypeEnum; + 'contact'?: Contact; + 'schedule'?: Schedule; + 'lineItems'?: Array; + 'lineAmountTypes'?: LineAmountTypes; + 'reference'?: string; + 'brandingThemeID'?: string; + 'currencyCode'?: CurrencyCode; + 'status'?: RepeatingInvoice.StatusEnum; + 'subTotal'?: number; + 'totalTax'?: number; + 'total'?: number; + 'repeatingInvoiceID'?: string; + 'ID'?: string; + 'hasAttachments'?: boolean; + 'attachments'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace RepeatingInvoice { + enum TypeEnum { + ACCPAY, + ACCREC + } + enum StatusEnum { + DRAFT, + AUTHORISED + } +} diff --git a/dist/gen/model/accounting/repeatingInvoice.js b/dist/gen/model/accounting/repeatingInvoice.js new file mode 100644 index 000000000..fd02bc4b5 --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoice.js @@ -0,0 +1,104 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class RepeatingInvoice { + static getAttributeTypeMap() { + return RepeatingInvoice.attributeTypeMap; + } +} +exports.RepeatingInvoice = RepeatingInvoice; +RepeatingInvoice.discriminator = undefined; +RepeatingInvoice.attributeTypeMap = [ + { + "name": "type", + "baseName": "Type", + "type": "RepeatingInvoice.TypeEnum" + }, + { + "name": "contact", + "baseName": "Contact", + "type": "Contact" + }, + { + "name": "schedule", + "baseName": "Schedule", + "type": "Schedule" + }, + { + "name": "lineItems", + "baseName": "LineItems", + "type": "Array" + }, + { + "name": "lineAmountTypes", + "baseName": "LineAmountTypes", + "type": "LineAmountTypes" + }, + { + "name": "reference", + "baseName": "Reference", + "type": "string" + }, + { + "name": "brandingThemeID", + "baseName": "BrandingThemeID", + "type": "string" + }, + { + "name": "currencyCode", + "baseName": "CurrencyCode", + "type": "CurrencyCode" + }, + { + "name": "status", + "baseName": "Status", + "type": "RepeatingInvoice.StatusEnum" + }, + { + "name": "subTotal", + "baseName": "SubTotal", + "type": "number" + }, + { + "name": "totalTax", + "baseName": "TotalTax", + "type": "number" + }, + { + "name": "total", + "baseName": "Total", + "type": "number" + }, + { + "name": "repeatingInvoiceID", + "baseName": "RepeatingInvoiceID", + "type": "string" + }, + { + "name": "ID", + "baseName": "ID", + "type": "string" + }, + { + "name": "hasAttachments", + "baseName": "HasAttachments", + "type": "boolean" + }, + { + "name": "attachments", + "baseName": "Attachments", + "type": "Array" + } +]; +(function (RepeatingInvoice) { + let TypeEnum; + (function (TypeEnum) { + TypeEnum[TypeEnum["ACCPAY"] = 'ACCPAY'] = "ACCPAY"; + TypeEnum[TypeEnum["ACCREC"] = 'ACCREC'] = "ACCREC"; + })(TypeEnum = RepeatingInvoice.TypeEnum || (RepeatingInvoice.TypeEnum = {})); + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["DRAFT"] = 'DRAFT'] = "DRAFT"; + StatusEnum[StatusEnum["AUTHORISED"] = 'AUTHORISED'] = "AUTHORISED"; + })(StatusEnum = RepeatingInvoice.StatusEnum || (RepeatingInvoice.StatusEnum = {})); +})(RepeatingInvoice = exports.RepeatingInvoice || (exports.RepeatingInvoice = {})); +//# sourceMappingURL=repeatingInvoice.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/repeatingInvoice.js.map b/dist/gen/model/accounting/repeatingInvoice.js.map new file mode 100644 index 000000000..51d4a843c --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoice.js.map @@ -0,0 +1 @@ +{"version":3,"file":"repeatingInvoice.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/repeatingInvoice.ts"],"names":[],"mappings":";;AAmBA,MAAa,gBAAgB;IA0IzB,MAAM,CAAC,mBAAmB;QACtB,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;;AA5IL,4CA6IC;AAvFU,8BAAa,GAAuB,SAAS,CAAC;AAE9C,iCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,2BAA2B;KACtC;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,UAAU;KACrB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,iBAAiB;KAC5B;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,iBAAiB;QACzB,UAAU,EAAE,iBAAiB;QAC7B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,cAAc;KACzB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,6BAA6B;KACxC;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC;AAOf,WAAiB,gBAAgB;IAC7B,IAAY,QAGX;IAHD,WAAY,QAAQ;QAChB,8BAAe,QAAQ,YAAA,CAAA;QACvB,8BAAe,QAAQ,YAAA,CAAA;IAC3B,CAAC,EAHW,QAAQ,GAAR,yBAAQ,KAAR,yBAAQ,QAGnB;IACD,IAAY,UAGX;IAHD,WAAY,UAAU;QAClB,iCAAc,OAAO,WAAA,CAAA;QACrB,sCAAmB,YAAY,gBAAA,CAAA;IACnC,CAAC,EAHW,UAAU,GAAV,2BAAU,KAAV,2BAAU,QAGrB;AACL,CAAC,EATgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAShC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/repeatingInvoices.d.ts b/dist/gen/model/accounting/repeatingInvoices.d.ts new file mode 100644 index 000000000..3d87110d1 --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoices.d.ts @@ -0,0 +1,15 @@ +import { RepeatingInvoice } from './repeatingInvoice'; +export declare class RepeatingInvoices { + 'repeatingInvoices'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/repeatingInvoices.js b/dist/gen/model/accounting/repeatingInvoices.js new file mode 100644 index 000000000..8b3a03461 --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoices.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class RepeatingInvoices { + static getAttributeTypeMap() { + return RepeatingInvoices.attributeTypeMap; + } +} +exports.RepeatingInvoices = RepeatingInvoices; +RepeatingInvoices.discriminator = undefined; +RepeatingInvoices.attributeTypeMap = [ + { + "name": "repeatingInvoices", + "baseName": "RepeatingInvoices", + "type": "Array" + } +]; +//# sourceMappingURL=repeatingInvoices.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/repeatingInvoices.js.map b/dist/gen/model/accounting/repeatingInvoices.js.map new file mode 100644 index 000000000..1f5ea86ce --- /dev/null +++ b/dist/gen/model/accounting/repeatingInvoices.js.map @@ -0,0 +1 @@ +{"version":3,"file":"repeatingInvoices.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/repeatingInvoices.ts"],"names":[],"mappings":";;AAcA,MAAa,iBAAiB;IAY1B,MAAM,CAAC,mBAAmB;QACtB,OAAO,iBAAiB,CAAC,gBAAgB,CAAC;IAC9C,CAAC;;AAdL,8CAeC;AAZU,+BAAa,GAAuB,SAAS,CAAC;AAE9C,kCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,yBAAyB;KACpC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/report.d.ts b/dist/gen/model/accounting/report.d.ts new file mode 100644 index 000000000..f3123cc4e --- /dev/null +++ b/dist/gen/model/accounting/report.d.ts @@ -0,0 +1,26 @@ +import { TenNinteyNineContact } from './tenNinteyNineContact'; +export declare class Report { + 'reportID'?: string; + 'reportName'?: string; + 'reportType'?: Report.ReportTypeEnum; + 'reportTitle'?: string; + 'reportDate'?: string; + 'updatedDateUTC'?: Date; + 'contacts'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Report { + enum ReportTypeEnum { + AgedPayablesByContact + } +} diff --git a/dist/gen/model/accounting/report.js b/dist/gen/model/accounting/report.js new file mode 100644 index 000000000..7dc03dd90 --- /dev/null +++ b/dist/gen/model/accounting/report.js @@ -0,0 +1,53 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Report { + static getAttributeTypeMap() { + return Report.attributeTypeMap; + } +} +exports.Report = Report; +Report.discriminator = undefined; +Report.attributeTypeMap = [ + { + "name": "reportID", + "baseName": "ReportID", + "type": "string" + }, + { + "name": "reportName", + "baseName": "ReportName", + "type": "string" + }, + { + "name": "reportType", + "baseName": "ReportType", + "type": "Report.ReportTypeEnum" + }, + { + "name": "reportTitle", + "baseName": "ReportTitle", + "type": "string" + }, + { + "name": "reportDate", + "baseName": "ReportDate", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "contacts", + "baseName": "Contacts", + "type": "Array" + } +]; +(function (Report) { + let ReportTypeEnum; + (function (ReportTypeEnum) { + ReportTypeEnum[ReportTypeEnum["AgedPayablesByContact"] = 'AgedPayablesByContact'] = "AgedPayablesByContact"; + })(ReportTypeEnum = Report.ReportTypeEnum || (Report.ReportTypeEnum = {})); +})(Report = exports.Report || (exports.Report = {})); +//# sourceMappingURL=report.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/report.js.map b/dist/gen/model/accounting/report.js.map new file mode 100644 index 000000000..9bbcf86dd --- /dev/null +++ b/dist/gen/model/accounting/report.js.map @@ -0,0 +1 @@ +{"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/report.ts"],"names":[],"mappings":";;AAcA,MAAa,MAAM;IAkEf,MAAM,CAAC,mBAAmB;QACtB,OAAO,MAAM,CAAC,gBAAgB,CAAC;IACnC,CAAC;;AApEL,wBAqEC;AA1CU,oBAAa,GAAuB,SAAS,CAAC;AAE9C,uBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,uBAAuB;KAClC;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,6BAA6B;KACxC;CAAK,CAAC;AAOf,WAAiB,MAAM;IACnB,IAAY,cAEX;IAFD,WAAY,cAAc;QACtB,yDAA8B,uBAAuB,2BAAA,CAAA;IACzD,CAAC,EAFW,cAAc,GAAd,qBAAc,KAAd,qBAAc,QAEzB;AACL,CAAC,EAJgB,MAAM,GAAN,cAAM,KAAN,cAAM,QAItB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportAttribute.d.ts b/dist/gen/model/accounting/reportAttribute.d.ts new file mode 100644 index 000000000..1f5b70ab2 --- /dev/null +++ b/dist/gen/model/accounting/reportAttribute.d.ts @@ -0,0 +1,15 @@ +export declare class ReportAttribute { + 'id'?: string; + 'value'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportAttribute.js b/dist/gen/model/accounting/reportAttribute.js new file mode 100644 index 000000000..c6c20df79 --- /dev/null +++ b/dist/gen/model/accounting/reportAttribute.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportAttribute { + static getAttributeTypeMap() { + return ReportAttribute.attributeTypeMap; + } +} +exports.ReportAttribute = ReportAttribute; +ReportAttribute.discriminator = undefined; +ReportAttribute.attributeTypeMap = [ + { + "name": "id", + "baseName": "Id", + "type": "string" + }, + { + "name": "value", + "baseName": "Value", + "type": "string" + } +]; +//# sourceMappingURL=reportAttribute.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportAttribute.js.map b/dist/gen/model/accounting/reportAttribute.js.map new file mode 100644 index 000000000..20dbb56cc --- /dev/null +++ b/dist/gen/model/accounting/reportAttribute.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportAttribute.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportAttribute.ts"],"names":[],"mappings":";;AAaA,MAAa,eAAe;IAkBxB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AApBL,0CAqBC;AAjBU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportCell.d.ts b/dist/gen/model/accounting/reportCell.d.ts new file mode 100644 index 000000000..995eda643 --- /dev/null +++ b/dist/gen/model/accounting/reportCell.d.ts @@ -0,0 +1,16 @@ +import { ReportAttribute } from './reportAttribute'; +export declare class ReportCell { + 'value'?: string; + 'attributes'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportCell.js b/dist/gen/model/accounting/reportCell.js new file mode 100644 index 000000000..0634ff524 --- /dev/null +++ b/dist/gen/model/accounting/reportCell.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportCell { + static getAttributeTypeMap() { + return ReportCell.attributeTypeMap; + } +} +exports.ReportCell = ReportCell; +ReportCell.discriminator = undefined; +ReportCell.attributeTypeMap = [ + { + "name": "value", + "baseName": "Value", + "type": "string" + }, + { + "name": "attributes", + "baseName": "Attributes", + "type": "Array" + } +]; +//# sourceMappingURL=reportCell.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportCell.js.map b/dist/gen/model/accounting/reportCell.js.map new file mode 100644 index 000000000..1060eac6e --- /dev/null +++ b/dist/gen/model/accounting/reportCell.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportCell.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportCell.ts"],"names":[],"mappings":";;AAcA,MAAa,UAAU;IAkBnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AApBL,gCAqBC;AAjBU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,wBAAwB;KACnC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportFields.d.ts b/dist/gen/model/accounting/reportFields.d.ts new file mode 100644 index 000000000..70cb9a5b8 --- /dev/null +++ b/dist/gen/model/accounting/reportFields.d.ts @@ -0,0 +1,16 @@ +export declare class ReportFields { + 'fieldID'?: string; + 'description'?: string; + 'value'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportFields.js b/dist/gen/model/accounting/reportFields.js new file mode 100644 index 000000000..67514a031 --- /dev/null +++ b/dist/gen/model/accounting/reportFields.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportFields { + static getAttributeTypeMap() { + return ReportFields.attributeTypeMap; + } +} +exports.ReportFields = ReportFields; +ReportFields.discriminator = undefined; +ReportFields.attributeTypeMap = [ + { + "name": "fieldID", + "baseName": "FieldID", + "type": "string" + }, + { + "name": "description", + "baseName": "Description", + "type": "string" + }, + { + "name": "value", + "baseName": "Value", + "type": "string" + } +]; +//# sourceMappingURL=reportFields.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportFields.js.map b/dist/gen/model/accounting/reportFields.js.map new file mode 100644 index 000000000..22508a97b --- /dev/null +++ b/dist/gen/model/accounting/reportFields.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportFields.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportFields.ts"],"names":[],"mappings":";;AAaA,MAAa,YAAY;IAwBrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AA1BL,oCA2BC;AAtBU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportRow.d.ts b/dist/gen/model/accounting/reportRow.d.ts new file mode 100644 index 000000000..8b6b44be8 --- /dev/null +++ b/dist/gen/model/accounting/reportRow.d.ts @@ -0,0 +1,18 @@ +import { ReportCell } from './reportCell'; +import { RowType } from './rowType'; +export declare class ReportRow { + 'rowType'?: RowType; + 'title'?: string; + 'cells'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportRow.js b/dist/gen/model/accounting/reportRow.js new file mode 100644 index 000000000..0e0949d40 --- /dev/null +++ b/dist/gen/model/accounting/reportRow.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportRow { + static getAttributeTypeMap() { + return ReportRow.attributeTypeMap; + } +} +exports.ReportRow = ReportRow; +ReportRow.discriminator = undefined; +ReportRow.attributeTypeMap = [ + { + "name": "rowType", + "baseName": "RowType", + "type": "RowType" + }, + { + "name": "title", + "baseName": "Title", + "type": "string" + }, + { + "name": "cells", + "baseName": "Cells", + "type": "Array" + } +]; +//# sourceMappingURL=reportRow.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportRow.js.map b/dist/gen/model/accounting/reportRow.js.map new file mode 100644 index 000000000..28e0a4bdc --- /dev/null +++ b/dist/gen/model/accounting/reportRow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportRow.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportRow.ts"],"names":[],"mappings":";;AAeA,MAAa,SAAS;IAwBlB,MAAM,CAAC,mBAAmB;QACtB,OAAO,SAAS,CAAC,gBAAgB,CAAC;IACtC,CAAC;;AA1BL,8BA2BC;AAtBU,uBAAa,GAAuB,SAAS,CAAC;AAE9C,0BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,mBAAmB;KAC9B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportRows.d.ts b/dist/gen/model/accounting/reportRows.d.ts new file mode 100644 index 000000000..7b55b3e76 --- /dev/null +++ b/dist/gen/model/accounting/reportRows.d.ts @@ -0,0 +1,20 @@ +import { ReportCell } from './reportCell'; +import { ReportRow } from './reportRow'; +import { RowType } from './rowType'; +export declare class ReportRows { + 'rowType'?: RowType; + 'title'?: string; + 'cells'?: Array; + 'rows'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportRows.js b/dist/gen/model/accounting/reportRows.js new file mode 100644 index 000000000..15df4b798 --- /dev/null +++ b/dist/gen/model/accounting/reportRows.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportRows { + static getAttributeTypeMap() { + return ReportRows.attributeTypeMap; + } +} +exports.ReportRows = ReportRows; +ReportRows.discriminator = undefined; +ReportRows.attributeTypeMap = [ + { + "name": "rowType", + "baseName": "RowType", + "type": "RowType" + }, + { + "name": "title", + "baseName": "Title", + "type": "string" + }, + { + "name": "cells", + "baseName": "Cells", + "type": "Array" + }, + { + "name": "rows", + "baseName": "Rows", + "type": "Array" + } +]; +//# sourceMappingURL=reportRows.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportRows.js.map b/dist/gen/model/accounting/reportRows.js.map new file mode 100644 index 000000000..7990f35b1 --- /dev/null +++ b/dist/gen/model/accounting/reportRows.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportRows.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportRows.ts"],"names":[],"mappings":";;AAgBA,MAAa,UAAU;IA8BnB,MAAM,CAAC,mBAAmB;QACtB,OAAO,UAAU,CAAC,gBAAgB,CAAC;IACvC,CAAC;;AAhCL,gCAiCC;AA3BU,wBAAa,GAAuB,SAAS,CAAC;AAE9C,2BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,kBAAkB;KAC7B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportWithRow.d.ts b/dist/gen/model/accounting/reportWithRow.d.ts new file mode 100644 index 000000000..76a7d20f1 --- /dev/null +++ b/dist/gen/model/accounting/reportWithRow.d.ts @@ -0,0 +1,24 @@ +import { ReportFields } from './reportFields'; +import { ReportRows } from './reportRows'; +export declare class ReportWithRow { + 'reportID'?: string; + 'reportName'?: string; + 'reportTitle'?: string; + 'reportType'?: string; + 'reportTitles'?: Array; + 'reportDate'?: string; + 'rows'?: Array; + 'updatedDateUTC'?: Date; + 'fields'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportWithRow.js b/dist/gen/model/accounting/reportWithRow.js new file mode 100644 index 000000000..82466220e --- /dev/null +++ b/dist/gen/model/accounting/reportWithRow.js @@ -0,0 +1,57 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportWithRow { + static getAttributeTypeMap() { + return ReportWithRow.attributeTypeMap; + } +} +exports.ReportWithRow = ReportWithRow; +ReportWithRow.discriminator = undefined; +ReportWithRow.attributeTypeMap = [ + { + "name": "reportID", + "baseName": "ReportID", + "type": "string" + }, + { + "name": "reportName", + "baseName": "ReportName", + "type": "string" + }, + { + "name": "reportTitle", + "baseName": "ReportTitle", + "type": "string" + }, + { + "name": "reportType", + "baseName": "ReportType", + "type": "string" + }, + { + "name": "reportTitles", + "baseName": "ReportTitles", + "type": "Array" + }, + { + "name": "reportDate", + "baseName": "ReportDate", + "type": "string" + }, + { + "name": "rows", + "baseName": "Rows", + "type": "Array" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "fields", + "baseName": "Fields", + "type": "Array" + } +]; +//# sourceMappingURL=reportWithRow.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportWithRow.js.map b/dist/gen/model/accounting/reportWithRow.js.map new file mode 100644 index 000000000..71c7b746b --- /dev/null +++ b/dist/gen/model/accounting/reportWithRow.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportWithRow.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportWithRow.ts"],"names":[],"mappings":";;AAeA,MAAa,aAAa;IAiFtB,MAAM,CAAC,mBAAmB;QACtB,OAAO,aAAa,CAAC,gBAAgB,CAAC;IAC1C,CAAC;;AAnFL,sCAoFC;AApDU,2BAAa,GAAuB,SAAS,CAAC;AAE9C,8BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,eAAe;KAC1B;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,qBAAqB;KAChC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reportWithRows.d.ts b/dist/gen/model/accounting/reportWithRows.d.ts new file mode 100644 index 000000000..db945ece2 --- /dev/null +++ b/dist/gen/model/accounting/reportWithRows.d.ts @@ -0,0 +1,15 @@ +import { ReportWithRow } from './reportWithRow'; +export declare class ReportWithRows { + 'reports'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reportWithRows.js b/dist/gen/model/accounting/reportWithRows.js new file mode 100644 index 000000000..64415667d --- /dev/null +++ b/dist/gen/model/accounting/reportWithRows.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ReportWithRows { + static getAttributeTypeMap() { + return ReportWithRows.attributeTypeMap; + } +} +exports.ReportWithRows = ReportWithRows; +ReportWithRows.discriminator = undefined; +ReportWithRows.attributeTypeMap = [ + { + "name": "reports", + "baseName": "Reports", + "type": "Array" + } +]; +//# sourceMappingURL=reportWithRows.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reportWithRows.js.map b/dist/gen/model/accounting/reportWithRows.js.map new file mode 100644 index 000000000..de33ef7b4 --- /dev/null +++ b/dist/gen/model/accounting/reportWithRows.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reportWithRows.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reportWithRows.ts"],"names":[],"mappings":";;AAcA,MAAa,cAAc;IAYvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AAdL,wCAeC;AAZU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,sBAAsB;KACjC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/reports.d.ts b/dist/gen/model/accounting/reports.d.ts new file mode 100644 index 000000000..e91b419d4 --- /dev/null +++ b/dist/gen/model/accounting/reports.d.ts @@ -0,0 +1,15 @@ +import { Report } from './report'; +export declare class Reports { + 'reports'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/reports.js b/dist/gen/model/accounting/reports.js new file mode 100644 index 000000000..968dc7dd1 --- /dev/null +++ b/dist/gen/model/accounting/reports.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Reports { + static getAttributeTypeMap() { + return Reports.attributeTypeMap; + } +} +exports.Reports = Reports; +Reports.discriminator = undefined; +Reports.attributeTypeMap = [ + { + "name": "reports", + "baseName": "Reports", + "type": "Array" + } +]; +//# sourceMappingURL=reports.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/reports.js.map b/dist/gen/model/accounting/reports.js.map new file mode 100644 index 000000000..9fd7a010f --- /dev/null +++ b/dist/gen/model/accounting/reports.js.map @@ -0,0 +1 @@ +{"version":3,"file":"reports.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/reports.ts"],"names":[],"mappings":";;AAcA,MAAa,OAAO;IAYhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AAdL,0BAeC;AAZU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,eAAe;KAC1B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/requestEmpty.d.ts b/dist/gen/model/accounting/requestEmpty.d.ts new file mode 100644 index 000000000..730868e09 --- /dev/null +++ b/dist/gen/model/accounting/requestEmpty.d.ts @@ -0,0 +1,14 @@ +export declare class RequestEmpty { + 'status'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/requestEmpty.js b/dist/gen/model/accounting/requestEmpty.js new file mode 100644 index 000000000..bbb67d963 --- /dev/null +++ b/dist/gen/model/accounting/requestEmpty.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class RequestEmpty { + static getAttributeTypeMap() { + return RequestEmpty.attributeTypeMap; + } +} +exports.RequestEmpty = RequestEmpty; +RequestEmpty.discriminator = undefined; +RequestEmpty.attributeTypeMap = [ + { + "name": "status", + "baseName": "Status", + "type": "string" + } +]; +//# sourceMappingURL=requestEmpty.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/requestEmpty.js.map b/dist/gen/model/accounting/requestEmpty.js.map new file mode 100644 index 000000000..4491d7581 --- /dev/null +++ b/dist/gen/model/accounting/requestEmpty.js.map @@ -0,0 +1 @@ +{"version":3,"file":"requestEmpty.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/requestEmpty.ts"],"names":[],"mappings":";;AAaA,MAAa,YAAY;IAerB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AAjBL,oCAkBC;AAZU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/rowType.d.ts b/dist/gen/model/accounting/rowType.d.ts new file mode 100644 index 000000000..a7ec342fa --- /dev/null +++ b/dist/gen/model/accounting/rowType.d.ts @@ -0,0 +1,6 @@ +export declare enum RowType { + Header, + Section, + Row, + SummaryRow +} diff --git a/dist/gen/model/accounting/rowType.js b/dist/gen/model/accounting/rowType.js new file mode 100644 index 000000000..13ced44de --- /dev/null +++ b/dist/gen/model/accounting/rowType.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var RowType; +(function (RowType) { + RowType[RowType["Header"] = 'Header'] = "Header"; + RowType[RowType["Section"] = 'Section'] = "Section"; + RowType[RowType["Row"] = 'Row'] = "Row"; + RowType[RowType["SummaryRow"] = 'SummaryRow'] = "SummaryRow"; +})(RowType = exports.RowType || (exports.RowType = {})); +//# sourceMappingURL=rowType.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/rowType.js.map b/dist/gen/model/accounting/rowType.js.map new file mode 100644 index 000000000..2e12b1dbd --- /dev/null +++ b/dist/gen/model/accounting/rowType.js.map @@ -0,0 +1 @@ +{"version":3,"file":"rowType.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/rowType.ts"],"names":[],"mappings":";;AAaA,IAAY,OAKX;AALD,WAAY,OAAO;IACf,4BAAe,QAAQ,YAAA,CAAA;IACvB,6BAAgB,SAAS,aAAA,CAAA;IACzB,yBAAY,KAAK,SAAA,CAAA;IACjB,gCAAmB,YAAY,gBAAA,CAAA;AACnC,CAAC,EALW,OAAO,GAAP,eAAO,KAAP,eAAO,QAKlB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/salesTrackingCategory.d.ts b/dist/gen/model/accounting/salesTrackingCategory.d.ts new file mode 100644 index 000000000..273849376 --- /dev/null +++ b/dist/gen/model/accounting/salesTrackingCategory.d.ts @@ -0,0 +1,15 @@ +export declare class SalesTrackingCategory { + 'trackingCategoryName'?: string; + 'trackingOptionName'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/salesTrackingCategory.js b/dist/gen/model/accounting/salesTrackingCategory.js new file mode 100644 index 000000000..901cc7cd1 --- /dev/null +++ b/dist/gen/model/accounting/salesTrackingCategory.js @@ -0,0 +1,22 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class SalesTrackingCategory { + static getAttributeTypeMap() { + return SalesTrackingCategory.attributeTypeMap; + } +} +exports.SalesTrackingCategory = SalesTrackingCategory; +SalesTrackingCategory.discriminator = undefined; +SalesTrackingCategory.attributeTypeMap = [ + { + "name": "trackingCategoryName", + "baseName": "TrackingCategoryName", + "type": "string" + }, + { + "name": "trackingOptionName", + "baseName": "TrackingOptionName", + "type": "string" + } +]; +//# sourceMappingURL=salesTrackingCategory.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/salesTrackingCategory.js.map b/dist/gen/model/accounting/salesTrackingCategory.js.map new file mode 100644 index 000000000..c8ab6fc90 --- /dev/null +++ b/dist/gen/model/accounting/salesTrackingCategory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"salesTrackingCategory.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/salesTrackingCategory.ts"],"names":[],"mappings":";;AAaA,MAAa,qBAAqB;IAwB9B,MAAM,CAAC,mBAAmB;QACtB,OAAO,qBAAqB,CAAC,gBAAgB,CAAC;IAClD,CAAC;;AA1BL,sDA2BC;AAjBU,mCAAa,GAAuB,SAAS,CAAC;AAE9C,sCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,sBAAsB;QAC9B,UAAU,EAAE,sBAAsB;QAClC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/schedule.d.ts b/dist/gen/model/accounting/schedule.d.ts new file mode 100644 index 000000000..e53305e2b --- /dev/null +++ b/dist/gen/model/accounting/schedule.d.ts @@ -0,0 +1,32 @@ +export declare class Schedule { + 'period'?: number; + 'unit'?: Schedule.UnitEnum; + 'dueDate'?: number; + 'dueDateType'?: Schedule.DueDateTypeEnum; + 'startDate'?: string; + 'nextScheduledDate'?: string; + 'endDate'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace Schedule { + enum UnitEnum { + WEEKLY, + MONTHLY + } + enum DueDateTypeEnum { + DAYSAFTERBILLDATE, + DAYSAFTERBILLMONTH, + OFCURRENTMONTH, + OFFOLLOWINGMONTH + } +} diff --git a/dist/gen/model/accounting/schedule.js b/dist/gen/model/accounting/schedule.js new file mode 100644 index 000000000..7c68e4e33 --- /dev/null +++ b/dist/gen/model/accounting/schedule.js @@ -0,0 +1,61 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Schedule { + static getAttributeTypeMap() { + return Schedule.attributeTypeMap; + } +} +exports.Schedule = Schedule; +Schedule.discriminator = undefined; +Schedule.attributeTypeMap = [ + { + "name": "period", + "baseName": "Period", + "type": "number" + }, + { + "name": "unit", + "baseName": "Unit", + "type": "Schedule.UnitEnum" + }, + { + "name": "dueDate", + "baseName": "DueDate", + "type": "number" + }, + { + "name": "dueDateType", + "baseName": "DueDateType", + "type": "Schedule.DueDateTypeEnum" + }, + { + "name": "startDate", + "baseName": "StartDate", + "type": "string" + }, + { + "name": "nextScheduledDate", + "baseName": "NextScheduledDate", + "type": "string" + }, + { + "name": "endDate", + "baseName": "EndDate", + "type": "string" + } +]; +(function (Schedule) { + let UnitEnum; + (function (UnitEnum) { + UnitEnum[UnitEnum["WEEKLY"] = 'WEEKLY'] = "WEEKLY"; + UnitEnum[UnitEnum["MONTHLY"] = 'MONTHLY'] = "MONTHLY"; + })(UnitEnum = Schedule.UnitEnum || (Schedule.UnitEnum = {})); + let DueDateTypeEnum; + (function (DueDateTypeEnum) { + DueDateTypeEnum[DueDateTypeEnum["DAYSAFTERBILLDATE"] = 'DAYSAFTERBILLDATE'] = "DAYSAFTERBILLDATE"; + DueDateTypeEnum[DueDateTypeEnum["DAYSAFTERBILLMONTH"] = 'DAYSAFTERBILLMONTH'] = "DAYSAFTERBILLMONTH"; + DueDateTypeEnum[DueDateTypeEnum["OFCURRENTMONTH"] = 'OFCURRENTMONTH'] = "OFCURRENTMONTH"; + DueDateTypeEnum[DueDateTypeEnum["OFFOLLOWINGMONTH"] = 'OFFOLLOWINGMONTH'] = "OFFOLLOWINGMONTH"; + })(DueDateTypeEnum = Schedule.DueDateTypeEnum || (Schedule.DueDateTypeEnum = {})); +})(Schedule = exports.Schedule || (exports.Schedule = {})); +//# sourceMappingURL=schedule.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/schedule.js.map b/dist/gen/model/accounting/schedule.js.map new file mode 100644 index 000000000..a4aa24fb7 --- /dev/null +++ b/dist/gen/model/accounting/schedule.js.map @@ -0,0 +1 @@ +{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/schedule.ts"],"names":[],"mappings":";;AAaA,MAAa,QAAQ;IAqEjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAvEL,4BAwEC;AA1CU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,mBAAmB;KAC9B;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,0BAA0B;KACrC;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,QAAQ;IACrB,IAAY,QAGX;IAHD,WAAY,QAAQ;QAChB,8BAAe,QAAQ,YAAA,CAAA;QACvB,+BAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAHW,QAAQ,GAAR,iBAAQ,KAAR,iBAAQ,QAGnB;IACD,IAAY,eAKX;IALD,WAAY,eAAe;QACvB,uDAA0B,mBAAmB,uBAAA,CAAA;QAC7C,wDAA2B,oBAAoB,wBAAA,CAAA;QAC/C,oDAAuB,gBAAgB,oBAAA,CAAA;QACvC,sDAAyB,kBAAkB,sBAAA,CAAA;IAC/C,CAAC,EALW,eAAe,GAAf,wBAAe,KAAf,wBAAe,QAK1B;AACL,CAAC,EAXgB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAWxB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/taxComponent.d.ts b/dist/gen/model/accounting/taxComponent.d.ts new file mode 100644 index 000000000..f3fb308b5 --- /dev/null +++ b/dist/gen/model/accounting/taxComponent.d.ts @@ -0,0 +1,17 @@ +export declare class TaxComponent { + 'name'?: string; + 'rate'?: number; + 'isCompound'?: boolean; + 'isNonRecoverable'?: boolean; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/taxComponent.js b/dist/gen/model/accounting/taxComponent.js new file mode 100644 index 000000000..3d8a50299 --- /dev/null +++ b/dist/gen/model/accounting/taxComponent.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TaxComponent { + static getAttributeTypeMap() { + return TaxComponent.attributeTypeMap; + } +} +exports.TaxComponent = TaxComponent; +TaxComponent.discriminator = undefined; +TaxComponent.attributeTypeMap = [ + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "rate", + "baseName": "Rate", + "type": "number" + }, + { + "name": "isCompound", + "baseName": "IsCompound", + "type": "boolean" + }, + { + "name": "isNonRecoverable", + "baseName": "IsNonRecoverable", + "type": "boolean" + } +]; +//# sourceMappingURL=taxComponent.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/taxComponent.js.map b/dist/gen/model/accounting/taxComponent.js.map new file mode 100644 index 000000000..2ed9ce782 --- /dev/null +++ b/dist/gen/model/accounting/taxComponent.js.map @@ -0,0 +1 @@ +{"version":3,"file":"taxComponent.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/taxComponent.ts"],"names":[],"mappings":";;AAaA,MAAa,YAAY;IA0CrB,MAAM,CAAC,mBAAmB;QACtB,OAAO,YAAY,CAAC,gBAAgB,CAAC;IACzC,CAAC;;AA5CL,oCA6CC;AA3BU,0BAAa,GAAuB,SAAS,CAAC;AAE9C,6BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,YAAY;QACpB,UAAU,EAAE,YAAY;QACxB,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,SAAS;KACpB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/taxRate.d.ts b/dist/gen/model/accounting/taxRate.d.ts new file mode 100644 index 000000000..9f715b11d --- /dev/null +++ b/dist/gen/model/accounting/taxRate.d.ts @@ -0,0 +1,68 @@ +import { TaxComponent } from './taxComponent'; +export declare class TaxRate { + 'name'?: string; + 'taxType'?: string; + 'taxComponents'?: Array; + 'status'?: TaxRate.StatusEnum; + 'reportTaxType': TaxRate.ReportTaxTypeEnum; + 'canApplyToAssets'?: boolean; + 'canApplyToEquity'?: boolean; + 'canApplyToExpenses'?: boolean; + 'canApplyToLiabilities'?: boolean; + 'canApplyToRevenue'?: boolean; + 'displayTaxRate'?: number; + 'effectiveRate'?: number; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace TaxRate { + enum StatusEnum { + ACTIVE, + DELETED, + ARCHIVED, + PENDING + } + enum ReportTaxTypeEnum { + AVALARA, + BASEXCLUDED, + CAPITALSALESOUTPUT, + CAPITALEXPENSESINPUT, + ECOUTPUT, + ECOUTPUTSERVICES, + ECINPUT, + ECACQUISITIONS, + EXEMPTEXPENSES, + EXEMPTINPUT, + EXEMPTOUTPUT, + GSTONIMPORTS, + INPUT, + INPUTTAXED, + MOSSSALES, + NONE, + NONEOUTPUT, + OUTPUT, + PURCHASESINPUT, + SALESOUTPUT, + EXEMPTCAPITAL, + EXEMPTEXPORT, + CAPITALEXINPUT, + GSTONCAPIMPORTS, + REVERSECHARGES, + PAYMENTS, + INVOICE, + CASH, + ACCRUAL, + FLATRATECASH, + FLATRATEACCRUAL, + ACCRUALS + } +} diff --git a/dist/gen/model/accounting/taxRate.js b/dist/gen/model/accounting/taxRate.js new file mode 100644 index 000000000..b7dde3c7e --- /dev/null +++ b/dist/gen/model/accounting/taxRate.js @@ -0,0 +1,116 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TaxRate { + static getAttributeTypeMap() { + return TaxRate.attributeTypeMap; + } +} +exports.TaxRate = TaxRate; +TaxRate.discriminator = undefined; +TaxRate.attributeTypeMap = [ + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "taxType", + "baseName": "TaxType", + "type": "string" + }, + { + "name": "taxComponents", + "baseName": "TaxComponents", + "type": "Array" + }, + { + "name": "status", + "baseName": "Status", + "type": "TaxRate.StatusEnum" + }, + { + "name": "reportTaxType", + "baseName": "ReportTaxType", + "type": "TaxRate.ReportTaxTypeEnum" + }, + { + "name": "canApplyToAssets", + "baseName": "CanApplyToAssets", + "type": "boolean" + }, + { + "name": "canApplyToEquity", + "baseName": "CanApplyToEquity", + "type": "boolean" + }, + { + "name": "canApplyToExpenses", + "baseName": "CanApplyToExpenses", + "type": "boolean" + }, + { + "name": "canApplyToLiabilities", + "baseName": "CanApplyToLiabilities", + "type": "boolean" + }, + { + "name": "canApplyToRevenue", + "baseName": "CanApplyToRevenue", + "type": "boolean" + }, + { + "name": "displayTaxRate", + "baseName": "DisplayTaxRate", + "type": "number" + }, + { + "name": "effectiveRate", + "baseName": "EffectiveRate", + "type": "number" + } +]; +(function (TaxRate) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + StatusEnum[StatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + StatusEnum[StatusEnum["PENDING"] = 'PENDING'] = "PENDING"; + })(StatusEnum = TaxRate.StatusEnum || (TaxRate.StatusEnum = {})); + let ReportTaxTypeEnum; + (function (ReportTaxTypeEnum) { + ReportTaxTypeEnum[ReportTaxTypeEnum["AVALARA"] = 'AVALARA'] = "AVALARA"; + ReportTaxTypeEnum[ReportTaxTypeEnum["BASEXCLUDED"] = 'BASEXCLUDED'] = "BASEXCLUDED"; + ReportTaxTypeEnum[ReportTaxTypeEnum["CAPITALSALESOUTPUT"] = 'CAPITALSALESOUTPUT'] = "CAPITALSALESOUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["CAPITALEXPENSESINPUT"] = 'CAPITALEXPENSESINPUT'] = "CAPITALEXPENSESINPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ECOUTPUT"] = 'ECOUTPUT'] = "ECOUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ECOUTPUTSERVICES"] = 'ECOUTPUTSERVICES'] = "ECOUTPUTSERVICES"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ECINPUT"] = 'ECINPUT'] = "ECINPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ECACQUISITIONS"] = 'ECACQUISITIONS'] = "ECACQUISITIONS"; + ReportTaxTypeEnum[ReportTaxTypeEnum["EXEMPTEXPENSES"] = 'EXEMPTEXPENSES'] = "EXEMPTEXPENSES"; + ReportTaxTypeEnum[ReportTaxTypeEnum["EXEMPTINPUT"] = 'EXEMPTINPUT'] = "EXEMPTINPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["EXEMPTOUTPUT"] = 'EXEMPTOUTPUT'] = "EXEMPTOUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["GSTONIMPORTS"] = 'GSTONIMPORTS'] = "GSTONIMPORTS"; + ReportTaxTypeEnum[ReportTaxTypeEnum["INPUT"] = 'INPUT'] = "INPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["INPUTTAXED"] = 'INPUTTAXED'] = "INPUTTAXED"; + ReportTaxTypeEnum[ReportTaxTypeEnum["MOSSSALES"] = 'MOSSSALES'] = "MOSSSALES"; + ReportTaxTypeEnum[ReportTaxTypeEnum["NONE"] = 'NONE'] = "NONE"; + ReportTaxTypeEnum[ReportTaxTypeEnum["NONEOUTPUT"] = 'NONEOUTPUT'] = "NONEOUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["OUTPUT"] = 'OUTPUT'] = "OUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["PURCHASESINPUT"] = 'PURCHASESINPUT'] = "PURCHASESINPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["SALESOUTPUT"] = 'SALESOUTPUT'] = "SALESOUTPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["EXEMPTCAPITAL"] = 'EXEMPTCAPITAL'] = "EXEMPTCAPITAL"; + ReportTaxTypeEnum[ReportTaxTypeEnum["EXEMPTEXPORT"] = 'EXEMPTEXPORT'] = "EXEMPTEXPORT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["CAPITALEXINPUT"] = 'CAPITALEXINPUT'] = "CAPITALEXINPUT"; + ReportTaxTypeEnum[ReportTaxTypeEnum["GSTONCAPIMPORTS"] = 'GSTONCAPIMPORTS'] = "GSTONCAPIMPORTS"; + ReportTaxTypeEnum[ReportTaxTypeEnum["REVERSECHARGES"] = 'REVERSECHARGES'] = "REVERSECHARGES"; + ReportTaxTypeEnum[ReportTaxTypeEnum["PAYMENTS"] = 'PAYMENTS'] = "PAYMENTS"; + ReportTaxTypeEnum[ReportTaxTypeEnum["INVOICE"] = 'INVOICE'] = "INVOICE"; + ReportTaxTypeEnum[ReportTaxTypeEnum["CASH"] = 'CASH'] = "CASH"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ACCRUAL"] = 'ACCRUAL'] = "ACCRUAL"; + ReportTaxTypeEnum[ReportTaxTypeEnum["FLATRATECASH"] = 'FLATRATECASH'] = "FLATRATECASH"; + ReportTaxTypeEnum[ReportTaxTypeEnum["FLATRATEACCRUAL"] = 'FLATRATEACCRUAL'] = "FLATRATEACCRUAL"; + ReportTaxTypeEnum[ReportTaxTypeEnum["ACCRUALS"] = 'ACCRUALS'] = "ACCRUALS"; + })(ReportTaxTypeEnum = TaxRate.ReportTaxTypeEnum || (TaxRate.ReportTaxTypeEnum = {})); +})(TaxRate = exports.TaxRate || (exports.TaxRate = {})); +//# sourceMappingURL=taxRate.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/taxRate.js.map b/dist/gen/model/accounting/taxRate.js.map new file mode 100644 index 000000000..4f0831477 --- /dev/null +++ b/dist/gen/model/accounting/taxRate.js.map @@ -0,0 +1 @@ +{"version":3,"file":"taxRate.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/taxRate.ts"],"names":[],"mappings":";;AAcA,MAAa,OAAO;IAkHhB,MAAM,CAAC,mBAAmB;QACtB,OAAO,OAAO,CAAC,gBAAgB,CAAC;IACpC,CAAC;;AApHL,0BAqHC;AAnEU,qBAAa,GAAuB,SAAS,CAAC;AAE9C,wBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,qBAAqB;KAChC;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,oBAAoB;KAC/B;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,2BAA2B;KACtC;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,uBAAuB;QAC/B,UAAU,EAAE,uBAAuB;QACnC,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,mBAAmB;QAC3B,UAAU,EAAE,mBAAmB;QAC/B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,OAAO;IACpB,IAAY,UAKX;IALD,WAAY,UAAU;QAClB,kCAAe,QAAQ,YAAA,CAAA;QACvB,mCAAgB,SAAS,aAAA,CAAA;QACzB,oCAAiB,UAAU,cAAA,CAAA;QAC3B,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB;IACD,IAAY,iBAiCX;IAjCD,WAAY,iBAAiB;QACzB,iDAAgB,SAAS,aAAA,CAAA;QACzB,qDAAoB,aAAa,iBAAA,CAAA;QACjC,4DAA2B,oBAAoB,wBAAA,CAAA;QAC/C,8DAA6B,sBAAsB,0BAAA,CAAA;QACnD,kDAAiB,UAAU,cAAA,CAAA;QAC3B,0DAAyB,kBAAkB,sBAAA,CAAA;QAC3C,iDAAgB,SAAS,aAAA,CAAA;QACzB,wDAAuB,gBAAgB,oBAAA,CAAA;QACvC,wDAAuB,gBAAgB,oBAAA,CAAA;QACvC,qDAAoB,aAAa,iBAAA,CAAA;QACjC,sDAAqB,cAAc,kBAAA,CAAA;QACnC,sDAAqB,cAAc,kBAAA,CAAA;QACnC,+CAAc,OAAO,WAAA,CAAA;QACrB,oDAAmB,YAAY,gBAAA,CAAA;QAC/B,mDAAkB,WAAW,eAAA,CAAA;QAC7B,8CAAa,MAAM,UAAA,CAAA;QACnB,oDAAmB,YAAY,gBAAA,CAAA;QAC/B,gDAAe,QAAQ,YAAA,CAAA;QACvB,wDAAuB,gBAAgB,oBAAA,CAAA;QACvC,qDAAoB,aAAa,iBAAA,CAAA;QACjC,uDAAsB,eAAe,mBAAA,CAAA;QACrC,sDAAqB,cAAc,kBAAA,CAAA;QACnC,wDAAuB,gBAAgB,oBAAA,CAAA;QACvC,yDAAwB,iBAAiB,qBAAA,CAAA;QACzC,wDAAuB,gBAAgB,oBAAA,CAAA;QACvC,kDAAiB,UAAU,cAAA,CAAA;QAC3B,iDAAgB,SAAS,aAAA,CAAA;QACzB,8CAAa,MAAM,UAAA,CAAA;QACnB,iDAAgB,SAAS,aAAA,CAAA;QACzB,sDAAqB,cAAc,kBAAA,CAAA;QACnC,yDAAwB,iBAAiB,qBAAA,CAAA;QACzC,kDAAiB,UAAU,cAAA,CAAA;IAC/B,CAAC,EAjCW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAiC5B;AACL,CAAC,EAzCgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAyCvB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/taxRates.d.ts b/dist/gen/model/accounting/taxRates.d.ts new file mode 100644 index 000000000..1062ffc7b --- /dev/null +++ b/dist/gen/model/accounting/taxRates.d.ts @@ -0,0 +1,15 @@ +import { TaxRate } from './taxRate'; +export declare class TaxRates { + 'taxRates'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/taxRates.js b/dist/gen/model/accounting/taxRates.js new file mode 100644 index 000000000..9a15f8437 --- /dev/null +++ b/dist/gen/model/accounting/taxRates.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TaxRates { + static getAttributeTypeMap() { + return TaxRates.attributeTypeMap; + } +} +exports.TaxRates = TaxRates; +TaxRates.discriminator = undefined; +TaxRates.attributeTypeMap = [ + { + "name": "taxRates", + "baseName": "TaxRates", + "type": "Array" + } +]; +//# sourceMappingURL=taxRates.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/taxRates.js.map b/dist/gen/model/accounting/taxRates.js.map new file mode 100644 index 000000000..32f57cf35 --- /dev/null +++ b/dist/gen/model/accounting/taxRates.js.map @@ -0,0 +1 @@ +{"version":3,"file":"taxRates.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/taxRates.ts"],"names":[],"mappings":";;AAcA,MAAa,QAAQ;IAYjB,MAAM,CAAC,mBAAmB;QACtB,OAAO,QAAQ,CAAC,gBAAgB,CAAC;IACrC,CAAC;;AAdL,4BAeC;AAZU,sBAAa,GAAuB,SAAS,CAAC;AAE9C,yBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,gBAAgB;KAC3B;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/taxType.d.ts b/dist/gen/model/accounting/taxType.d.ts new file mode 100644 index 000000000..a3bef0f9c --- /dev/null +++ b/dist/gen/model/accounting/taxType.d.ts @@ -0,0 +1,54 @@ +export declare enum TaxType { + OUTPUT, + INPUT, + CAPEXINPUT, + EXEMPTEXPORT, + EXEMPTEXPENSES, + EXEMPTCAPITAL, + EXEMPTOUTPUT, + INPUTTAXED, + BASEXCLUDED, + GSTONCAPIMPORTS, + GSTONIMPORTS, + NONE, + INPUT2, + ZERORATED, + OUTPUT2, + CAPEXINPUT2, + CAPEXOUTPUT, + CAPEXOUTPUT2, + CAPEXSRINPUT, + CAPEXSROUTPUT, + ECACQUISITIONS, + ECZRINPUT, + ECZROUTPUT, + ECZROUTPUTSERVICES, + EXEMPTINPUT, + REVERSECHARGES, + RRINPUT, + RROUTPUT, + SRINPUT, + SROUTPUT, + ZERORATEDINPUT, + ZERORATEDOUTPUT, + BLINPUT, + DSOUTPUT, + EPINPUT, + ES33OUTPUT, + ESN33OUTPUT, + IGDSINPUT2, + IMINPUT2, + MEINPUT, + NRINPUT, + OPINPUT, + OSOUTPUT, + TXESSINPUT, + TXN33INPUT, + TXPETINPUT, + TXREINPUT, + INPUT3, + INPUT4, + OUTPUT3, + OUTPUT4, + SROUTPUT2 +} diff --git a/dist/gen/model/accounting/taxType.js b/dist/gen/model/accounting/taxType.js new file mode 100644 index 000000000..0f157fafe --- /dev/null +++ b/dist/gen/model/accounting/taxType.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var TaxType; +(function (TaxType) { + TaxType[TaxType["OUTPUT"] = 'OUTPUT'] = "OUTPUT"; + TaxType[TaxType["INPUT"] = 'INPUT'] = "INPUT"; + TaxType[TaxType["CAPEXINPUT"] = 'CAPEXINPUT'] = "CAPEXINPUT"; + TaxType[TaxType["EXEMPTEXPORT"] = 'EXEMPTEXPORT'] = "EXEMPTEXPORT"; + TaxType[TaxType["EXEMPTEXPENSES"] = 'EXEMPTEXPENSES'] = "EXEMPTEXPENSES"; + TaxType[TaxType["EXEMPTCAPITAL"] = 'EXEMPTCAPITAL'] = "EXEMPTCAPITAL"; + TaxType[TaxType["EXEMPTOUTPUT"] = 'EXEMPTOUTPUT'] = "EXEMPTOUTPUT"; + TaxType[TaxType["INPUTTAXED"] = 'INPUTTAXED'] = "INPUTTAXED"; + TaxType[TaxType["BASEXCLUDED"] = 'BASEXCLUDED'] = "BASEXCLUDED"; + TaxType[TaxType["GSTONCAPIMPORTS"] = 'GSTONCAPIMPORTS'] = "GSTONCAPIMPORTS"; + TaxType[TaxType["GSTONIMPORTS"] = 'GSTONIMPORTS'] = "GSTONIMPORTS"; + TaxType[TaxType["NONE"] = 'NONE'] = "NONE"; + TaxType[TaxType["INPUT2"] = 'INPUT2'] = "INPUT2"; + TaxType[TaxType["ZERORATED"] = 'ZERORATED'] = "ZERORATED"; + TaxType[TaxType["OUTPUT2"] = 'OUTPUT2'] = "OUTPUT2"; + TaxType[TaxType["CAPEXINPUT2"] = 'CAPEXINPUT2'] = "CAPEXINPUT2"; + TaxType[TaxType["CAPEXOUTPUT"] = 'CAPEXOUTPUT'] = "CAPEXOUTPUT"; + TaxType[TaxType["CAPEXOUTPUT2"] = 'CAPEXOUTPUT2'] = "CAPEXOUTPUT2"; + TaxType[TaxType["CAPEXSRINPUT"] = 'CAPEXSRINPUT'] = "CAPEXSRINPUT"; + TaxType[TaxType["CAPEXSROUTPUT"] = 'CAPEXSROUTPUT'] = "CAPEXSROUTPUT"; + TaxType[TaxType["ECACQUISITIONS"] = 'ECACQUISITIONS'] = "ECACQUISITIONS"; + TaxType[TaxType["ECZRINPUT"] = 'ECZRINPUT'] = "ECZRINPUT"; + TaxType[TaxType["ECZROUTPUT"] = 'ECZROUTPUT'] = "ECZROUTPUT"; + TaxType[TaxType["ECZROUTPUTSERVICES"] = 'ECZROUTPUTSERVICES'] = "ECZROUTPUTSERVICES"; + TaxType[TaxType["EXEMPTINPUT"] = 'EXEMPTINPUT'] = "EXEMPTINPUT"; + TaxType[TaxType["REVERSECHARGES"] = 'REVERSECHARGES'] = "REVERSECHARGES"; + TaxType[TaxType["RRINPUT"] = 'RRINPUT'] = "RRINPUT"; + TaxType[TaxType["RROUTPUT"] = 'RROUTPUT'] = "RROUTPUT"; + TaxType[TaxType["SRINPUT"] = 'SRINPUT'] = "SRINPUT"; + TaxType[TaxType["SROUTPUT"] = 'SROUTPUT'] = "SROUTPUT"; + TaxType[TaxType["ZERORATEDINPUT"] = 'ZERORATEDINPUT'] = "ZERORATEDINPUT"; + TaxType[TaxType["ZERORATEDOUTPUT"] = 'ZERORATEDOUTPUT'] = "ZERORATEDOUTPUT"; + TaxType[TaxType["BLINPUT"] = 'BLINPUT'] = "BLINPUT"; + TaxType[TaxType["DSOUTPUT"] = 'DSOUTPUT'] = "DSOUTPUT"; + TaxType[TaxType["EPINPUT"] = 'EPINPUT'] = "EPINPUT"; + TaxType[TaxType["ES33OUTPUT"] = 'ES33OUTPUT'] = "ES33OUTPUT"; + TaxType[TaxType["ESN33OUTPUT"] = 'ESN33OUTPUT'] = "ESN33OUTPUT"; + TaxType[TaxType["IGDSINPUT2"] = 'IGDSINPUT2'] = "IGDSINPUT2"; + TaxType[TaxType["IMINPUT2"] = 'IMINPUT2'] = "IMINPUT2"; + TaxType[TaxType["MEINPUT"] = 'MEINPUT'] = "MEINPUT"; + TaxType[TaxType["NRINPUT"] = 'NRINPUT'] = "NRINPUT"; + TaxType[TaxType["OPINPUT"] = 'OPINPUT'] = "OPINPUT"; + TaxType[TaxType["OSOUTPUT"] = 'OSOUTPUT'] = "OSOUTPUT"; + TaxType[TaxType["TXESSINPUT"] = 'TXESSINPUT'] = "TXESSINPUT"; + TaxType[TaxType["TXN33INPUT"] = 'TXN33INPUT'] = "TXN33INPUT"; + TaxType[TaxType["TXPETINPUT"] = 'TXPETINPUT'] = "TXPETINPUT"; + TaxType[TaxType["TXREINPUT"] = 'TXREINPUT'] = "TXREINPUT"; + TaxType[TaxType["INPUT3"] = 'INPUT3'] = "INPUT3"; + TaxType[TaxType["INPUT4"] = 'INPUT4'] = "INPUT4"; + TaxType[TaxType["OUTPUT3"] = 'OUTPUT3'] = "OUTPUT3"; + TaxType[TaxType["OUTPUT4"] = 'OUTPUT4'] = "OUTPUT4"; + TaxType[TaxType["SROUTPUT2"] = 'SROUTPUT2'] = "SROUTPUT2"; +})(TaxType = exports.TaxType || (exports.TaxType = {})); +//# sourceMappingURL=taxType.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/taxType.js.map b/dist/gen/model/accounting/taxType.js.map new file mode 100644 index 000000000..e60b6404c --- /dev/null +++ b/dist/gen/model/accounting/taxType.js.map @@ -0,0 +1 @@ +{"version":3,"file":"taxType.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/taxType.ts"],"names":[],"mappings":";;AAgBA,IAAY,OAqDX;AArDD,WAAY,OAAO;IACf,4BAAe,QAAQ,YAAA,CAAA;IACvB,2BAAc,OAAO,WAAA,CAAA;IACrB,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,kCAAqB,cAAc,kBAAA,CAAA;IACnC,oCAAuB,gBAAgB,oBAAA,CAAA;IACvC,mCAAsB,eAAe,mBAAA,CAAA;IACrC,kCAAqB,cAAc,kBAAA,CAAA;IACnC,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,iCAAoB,aAAa,iBAAA,CAAA;IACjC,qCAAwB,iBAAiB,qBAAA,CAAA;IACzC,kCAAqB,cAAc,kBAAA,CAAA;IACnC,0BAAa,MAAM,UAAA,CAAA;IACnB,4BAAe,QAAQ,YAAA,CAAA;IACvB,+BAAkB,WAAW,eAAA,CAAA;IAC7B,6BAAgB,SAAS,aAAA,CAAA;IACzB,iCAAoB,aAAa,iBAAA,CAAA;IACjC,iCAAoB,aAAa,iBAAA,CAAA;IACjC,kCAAqB,cAAc,kBAAA,CAAA;IACnC,kCAAqB,cAAc,kBAAA,CAAA;IACnC,mCAAsB,eAAe,mBAAA,CAAA;IACrC,oCAAuB,gBAAgB,oBAAA,CAAA;IACvC,+BAAkB,WAAW,eAAA,CAAA;IAC7B,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,wCAA2B,oBAAoB,wBAAA,CAAA;IAC/C,iCAAoB,aAAa,iBAAA,CAAA;IACjC,oCAAuB,gBAAgB,oBAAA,CAAA;IACvC,6BAAgB,SAAS,aAAA,CAAA;IACzB,8BAAiB,UAAU,cAAA,CAAA;IAC3B,6BAAgB,SAAS,aAAA,CAAA;IACzB,8BAAiB,UAAU,cAAA,CAAA;IAC3B,oCAAuB,gBAAgB,oBAAA,CAAA;IACvC,qCAAwB,iBAAiB,qBAAA,CAAA;IACzC,6BAAgB,SAAS,aAAA,CAAA;IACzB,8BAAiB,UAAU,cAAA,CAAA;IAC3B,6BAAgB,SAAS,aAAA,CAAA;IACzB,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,iCAAoB,aAAa,iBAAA,CAAA;IACjC,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,8BAAiB,UAAU,cAAA,CAAA;IAC3B,6BAAgB,SAAS,aAAA,CAAA;IACzB,6BAAgB,SAAS,aAAA,CAAA;IACzB,6BAAgB,SAAS,aAAA,CAAA;IACzB,8BAAiB,UAAU,cAAA,CAAA;IAC3B,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,gCAAmB,YAAY,gBAAA,CAAA;IAC/B,+BAAkB,WAAW,eAAA,CAAA;IAC7B,4BAAe,QAAQ,YAAA,CAAA;IACvB,4BAAe,QAAQ,YAAA,CAAA;IACvB,6BAAgB,SAAS,aAAA,CAAA;IACzB,6BAAgB,SAAS,aAAA,CAAA;IACzB,+BAAkB,WAAW,eAAA,CAAA;AACjC,CAAC,EArDW,OAAO,GAAP,eAAO,KAAP,eAAO,QAqDlB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/tenNinteyNineContact.d.ts b/dist/gen/model/accounting/tenNinteyNineContact.d.ts new file mode 100644 index 000000000..2e25ebf6a --- /dev/null +++ b/dist/gen/model/accounting/tenNinteyNineContact.d.ts @@ -0,0 +1,35 @@ +export declare class TenNinteyNineContact { + 'box1'?: number; + 'box2'?: number; + 'box3'?: number; + 'box4'?: number; + 'box5'?: number; + 'box6'?: number; + 'box7'?: number; + 'box8'?: number; + 'box9'?: number; + 'box10'?: number; + 'box11'?: number; + 'box13'?: number; + 'box14'?: number; + 'name'?: string; + 'federalTaxIDType'?: string; + 'city'?: string; + 'zip'?: string; + 'state'?: string; + 'email'?: string; + 'streetAddress'?: string; + 'taxID'?: string; + 'contactId'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/tenNinteyNineContact.js b/dist/gen/model/accounting/tenNinteyNineContact.js new file mode 100644 index 000000000..49ed0b83a --- /dev/null +++ b/dist/gen/model/accounting/tenNinteyNineContact.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TenNinteyNineContact { + static getAttributeTypeMap() { + return TenNinteyNineContact.attributeTypeMap; + } +} +exports.TenNinteyNineContact = TenNinteyNineContact; +TenNinteyNineContact.discriminator = undefined; +TenNinteyNineContact.attributeTypeMap = [ + { + "name": "box1", + "baseName": "Box1", + "type": "number" + }, + { + "name": "box2", + "baseName": "Box2", + "type": "number" + }, + { + "name": "box3", + "baseName": "Box3", + "type": "number" + }, + { + "name": "box4", + "baseName": "Box4", + "type": "number" + }, + { + "name": "box5", + "baseName": "Box5", + "type": "number" + }, + { + "name": "box6", + "baseName": "Box6", + "type": "number" + }, + { + "name": "box7", + "baseName": "Box7", + "type": "number" + }, + { + "name": "box8", + "baseName": "Box8", + "type": "number" + }, + { + "name": "box9", + "baseName": "Box9", + "type": "number" + }, + { + "name": "box10", + "baseName": "Box10", + "type": "number" + }, + { + "name": "box11", + "baseName": "Box11", + "type": "number" + }, + { + "name": "box13", + "baseName": "Box13", + "type": "number" + }, + { + "name": "box14", + "baseName": "Box14", + "type": "number" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "federalTaxIDType", + "baseName": "FederalTaxIDType", + "type": "string" + }, + { + "name": "city", + "baseName": "City", + "type": "string" + }, + { + "name": "zip", + "baseName": "Zip", + "type": "string" + }, + { + "name": "state", + "baseName": "State", + "type": "string" + }, + { + "name": "email", + "baseName": "Email", + "type": "string" + }, + { + "name": "streetAddress", + "baseName": "StreetAddress", + "type": "string" + }, + { + "name": "taxID", + "baseName": "TaxID", + "type": "string" + }, + { + "name": "contactId", + "baseName": "ContactId", + "type": "string" + } +]; +//# sourceMappingURL=tenNinteyNineContact.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/tenNinteyNineContact.js.map b/dist/gen/model/accounting/tenNinteyNineContact.js.map new file mode 100644 index 000000000..e32edf838 --- /dev/null +++ b/dist/gen/model/accounting/tenNinteyNineContact.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tenNinteyNineContact.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/tenNinteyNineContact.ts"],"names":[],"mappings":";;AAaA,MAAa,oBAAoB;IA4M7B,MAAM,CAAC,mBAAmB;QACtB,OAAO,oBAAoB,CAAC,gBAAgB,CAAC;IACjD,CAAC;;AA9ML,oDA+MC;AArHU,kCAAa,GAAuB,SAAS,CAAC;AAE9C,qCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,eAAe;QAC3B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/timeZone.d.ts b/dist/gen/model/accounting/timeZone.d.ts new file mode 100644 index 000000000..849a18a6b --- /dev/null +++ b/dist/gen/model/accounting/timeZone.d.ts @@ -0,0 +1,109 @@ +export declare enum TimeZone { + MOROCCOSTANDARDTIME, + UTC, + GMTSTANDARDTIME, + GREENWICHSTANDARDTIME, + WEUROPESTANDARDTIME, + CENTRALEUROPESTANDARDTIME, + ROMANCESTANDARDTIME, + CENTRALEUROPEANSTANDARDTIME, + WCENTRALAFRICASTANDARDTIME, + NAMIBIASTANDARDTIME, + JORDANSTANDARDTIME, + GTBSTANDARDTIME, + MIDDLEEASTSTANDARDTIME, + EGYPTSTANDARDTIME, + SYRIASTANDARDTIME, + EEUROPESTANDARDTIME, + SOUTHAFRICASTANDARDTIME, + FLESTANDARDTIME, + TURKEYSTANDARDTIME, + ISRAELSTANDARDTIME, + KALININGRADSTANDARDTIME, + LIBYASTANDARDTIME, + ARABICSTANDARDTIME, + ARABSTANDARDTIME, + BELARUSSTANDARDTIME, + RUSSIANSTANDARDTIME, + EAFRICASTANDARDTIME, + IRANSTANDARDTIME, + ARABIANSTANDARDTIME, + AZERBAIJANSTANDARDTIME, + RUSSIATIMEZONE3, + MAURITIUSSTANDARDTIME, + GEORGIANSTANDARDTIME, + CAUCASUSSTANDARDTIME, + AFGHANISTANSTANDARDTIME, + WESTASIASTANDARDTIME, + EKATERINBURGSTANDARDTIME, + PAKISTANSTANDARDTIME, + INDIASTANDARDTIME, + SRILANKASTANDARDTIME, + NEPALSTANDARDTIME, + CENTRALASIASTANDARDTIME, + BANGLADESHSTANDARDTIME, + NCENTRALASIASTANDARDTIME, + MYANMARSTANDARDTIME, + SEASIASTANDARDTIME, + NORTHASIASTANDARDTIME, + CHINASTANDARDTIME, + NORTHASIAEASTSTANDARDTIME, + SINGAPORESTANDARDTIME, + WAUSTRALIASTANDARDTIME, + TAIPEISTANDARDTIME, + ULAANBAATARSTANDARDTIME, + TOKYOSTANDARDTIME, + KOREASTANDARDTIME, + YAKUTSKSTANDARDTIME, + CENAUSTRALIASTANDARDTIME, + AUSCENTRALSTANDARDTIME, + EAUSTRALIASTANDARDTIME, + AUSEASTERNSTANDARDTIME, + WESTPACIFICSTANDARDTIME, + TASMANIASTANDARDTIME, + MAGADANSTANDARDTIME, + VLADIVOSTOKSTANDARDTIME, + RUSSIATIMEZONE10, + CENTRALPACIFICSTANDARDTIME, + RUSSIATIMEZONE11, + NEWZEALANDSTANDARDTIME, + UTC12, + FIJISTANDARDTIME, + KAMCHATKASTANDARDTIME, + TONGASTANDARDTIME, + SAMOASTANDARDTIME, + LINEISLANDSSTANDARDTIME, + AZORESSTANDARDTIME, + CAPEVERDESTANDARDTIME, + UTC02, + MIDATLANTICSTANDARDTIME, + ESOUTHAMERICASTANDARDTIME, + ARGENTINASTANDARDTIME, + SAEASTERNSTANDARDTIME, + GREENLANDSTANDARDTIME, + MONTEVIDEOSTANDARDTIME, + BAHIASTANDARDTIME, + NEWFOUNDLANDSTANDARDTIME, + PARAGUAYSTANDARDTIME, + ATLANTICSTANDARDTIME, + CENTRALBRAZILIANSTANDARDTIME, + SAWESTERNSTANDARDTIME, + PACIFICSASTANDARDTIME, + VENEZUELASTANDARDTIME, + SAPACIFICSTANDARDTIME, + EASTERNSTANDARDTIME, + USEASTERNSTANDARDTIME, + CENTRALAMERICASTANDARDTIME, + CENTRALSTANDARDTIME, + CENTRALSTANDARDTIMEMEXICO, + CANADACENTRALSTANDARDTIME, + USMOUNTAINSTANDARDTIME, + MOUNTAINSTANDARDTIMEMEXICO, + MOUNTAINSTANDARDTIME, + PACIFICSTANDARDTIMEMEXICO, + PACIFICSTANDARDTIME, + ALASKANSTANDARDTIME, + HAWAIIANSTANDARDTIME, + UTC11, + DATELINESTANDARDTIME +} diff --git a/dist/gen/model/accounting/timeZone.js b/dist/gen/model/accounting/timeZone.js new file mode 100644 index 000000000..2144f66a2 --- /dev/null +++ b/dist/gen/model/accounting/timeZone.js @@ -0,0 +1,113 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var TimeZone; +(function (TimeZone) { + TimeZone[TimeZone["MOROCCOSTANDARDTIME"] = 'MOROCCOSTANDARDTIME'] = "MOROCCOSTANDARDTIME"; + TimeZone[TimeZone["UTC"] = 'UTC'] = "UTC"; + TimeZone[TimeZone["GMTSTANDARDTIME"] = 'GMTSTANDARDTIME'] = "GMTSTANDARDTIME"; + TimeZone[TimeZone["GREENWICHSTANDARDTIME"] = 'GREENWICHSTANDARDTIME'] = "GREENWICHSTANDARDTIME"; + TimeZone[TimeZone["WEUROPESTANDARDTIME"] = 'WEUROPESTANDARDTIME'] = "WEUROPESTANDARDTIME"; + TimeZone[TimeZone["CENTRALEUROPESTANDARDTIME"] = 'CENTRALEUROPESTANDARDTIME'] = "CENTRALEUROPESTANDARDTIME"; + TimeZone[TimeZone["ROMANCESTANDARDTIME"] = 'ROMANCESTANDARDTIME'] = "ROMANCESTANDARDTIME"; + TimeZone[TimeZone["CENTRALEUROPEANSTANDARDTIME"] = 'CENTRALEUROPEANSTANDARDTIME'] = "CENTRALEUROPEANSTANDARDTIME"; + TimeZone[TimeZone["WCENTRALAFRICASTANDARDTIME"] = 'WCENTRALAFRICASTANDARDTIME'] = "WCENTRALAFRICASTANDARDTIME"; + TimeZone[TimeZone["NAMIBIASTANDARDTIME"] = 'NAMIBIASTANDARDTIME'] = "NAMIBIASTANDARDTIME"; + TimeZone[TimeZone["JORDANSTANDARDTIME"] = 'JORDANSTANDARDTIME'] = "JORDANSTANDARDTIME"; + TimeZone[TimeZone["GTBSTANDARDTIME"] = 'GTBSTANDARDTIME'] = "GTBSTANDARDTIME"; + TimeZone[TimeZone["MIDDLEEASTSTANDARDTIME"] = 'MIDDLEEASTSTANDARDTIME'] = "MIDDLEEASTSTANDARDTIME"; + TimeZone[TimeZone["EGYPTSTANDARDTIME"] = 'EGYPTSTANDARDTIME'] = "EGYPTSTANDARDTIME"; + TimeZone[TimeZone["SYRIASTANDARDTIME"] = 'SYRIASTANDARDTIME'] = "SYRIASTANDARDTIME"; + TimeZone[TimeZone["EEUROPESTANDARDTIME"] = 'EEUROPESTANDARDTIME'] = "EEUROPESTANDARDTIME"; + TimeZone[TimeZone["SOUTHAFRICASTANDARDTIME"] = 'SOUTHAFRICASTANDARDTIME'] = "SOUTHAFRICASTANDARDTIME"; + TimeZone[TimeZone["FLESTANDARDTIME"] = 'FLESTANDARDTIME'] = "FLESTANDARDTIME"; + TimeZone[TimeZone["TURKEYSTANDARDTIME"] = 'TURKEYSTANDARDTIME'] = "TURKEYSTANDARDTIME"; + TimeZone[TimeZone["ISRAELSTANDARDTIME"] = 'ISRAELSTANDARDTIME'] = "ISRAELSTANDARDTIME"; + TimeZone[TimeZone["KALININGRADSTANDARDTIME"] = 'KALININGRADSTANDARDTIME'] = "KALININGRADSTANDARDTIME"; + TimeZone[TimeZone["LIBYASTANDARDTIME"] = 'LIBYASTANDARDTIME'] = "LIBYASTANDARDTIME"; + TimeZone[TimeZone["ARABICSTANDARDTIME"] = 'ARABICSTANDARDTIME'] = "ARABICSTANDARDTIME"; + TimeZone[TimeZone["ARABSTANDARDTIME"] = 'ARABSTANDARDTIME'] = "ARABSTANDARDTIME"; + TimeZone[TimeZone["BELARUSSTANDARDTIME"] = 'BELARUSSTANDARDTIME'] = "BELARUSSTANDARDTIME"; + TimeZone[TimeZone["RUSSIANSTANDARDTIME"] = 'RUSSIANSTANDARDTIME'] = "RUSSIANSTANDARDTIME"; + TimeZone[TimeZone["EAFRICASTANDARDTIME"] = 'EAFRICASTANDARDTIME'] = "EAFRICASTANDARDTIME"; + TimeZone[TimeZone["IRANSTANDARDTIME"] = 'IRANSTANDARDTIME'] = "IRANSTANDARDTIME"; + TimeZone[TimeZone["ARABIANSTANDARDTIME"] = 'ARABIANSTANDARDTIME'] = "ARABIANSTANDARDTIME"; + TimeZone[TimeZone["AZERBAIJANSTANDARDTIME"] = 'AZERBAIJANSTANDARDTIME'] = "AZERBAIJANSTANDARDTIME"; + TimeZone[TimeZone["RUSSIATIMEZONE3"] = 'RUSSIATIMEZONE3'] = "RUSSIATIMEZONE3"; + TimeZone[TimeZone["MAURITIUSSTANDARDTIME"] = 'MAURITIUSSTANDARDTIME'] = "MAURITIUSSTANDARDTIME"; + TimeZone[TimeZone["GEORGIANSTANDARDTIME"] = 'GEORGIANSTANDARDTIME'] = "GEORGIANSTANDARDTIME"; + TimeZone[TimeZone["CAUCASUSSTANDARDTIME"] = 'CAUCASUSSTANDARDTIME'] = "CAUCASUSSTANDARDTIME"; + TimeZone[TimeZone["AFGHANISTANSTANDARDTIME"] = 'AFGHANISTANSTANDARDTIME'] = "AFGHANISTANSTANDARDTIME"; + TimeZone[TimeZone["WESTASIASTANDARDTIME"] = 'WESTASIASTANDARDTIME'] = "WESTASIASTANDARDTIME"; + TimeZone[TimeZone["EKATERINBURGSTANDARDTIME"] = 'EKATERINBURGSTANDARDTIME'] = "EKATERINBURGSTANDARDTIME"; + TimeZone[TimeZone["PAKISTANSTANDARDTIME"] = 'PAKISTANSTANDARDTIME'] = "PAKISTANSTANDARDTIME"; + TimeZone[TimeZone["INDIASTANDARDTIME"] = 'INDIASTANDARDTIME'] = "INDIASTANDARDTIME"; + TimeZone[TimeZone["SRILANKASTANDARDTIME"] = 'SRILANKASTANDARDTIME'] = "SRILANKASTANDARDTIME"; + TimeZone[TimeZone["NEPALSTANDARDTIME"] = 'NEPALSTANDARDTIME'] = "NEPALSTANDARDTIME"; + TimeZone[TimeZone["CENTRALASIASTANDARDTIME"] = 'CENTRALASIASTANDARDTIME'] = "CENTRALASIASTANDARDTIME"; + TimeZone[TimeZone["BANGLADESHSTANDARDTIME"] = 'BANGLADESHSTANDARDTIME'] = "BANGLADESHSTANDARDTIME"; + TimeZone[TimeZone["NCENTRALASIASTANDARDTIME"] = 'NCENTRALASIASTANDARDTIME'] = "NCENTRALASIASTANDARDTIME"; + TimeZone[TimeZone["MYANMARSTANDARDTIME"] = 'MYANMARSTANDARDTIME'] = "MYANMARSTANDARDTIME"; + TimeZone[TimeZone["SEASIASTANDARDTIME"] = 'SEASIASTANDARDTIME'] = "SEASIASTANDARDTIME"; + TimeZone[TimeZone["NORTHASIASTANDARDTIME"] = 'NORTHASIASTANDARDTIME'] = "NORTHASIASTANDARDTIME"; + TimeZone[TimeZone["CHINASTANDARDTIME"] = 'CHINASTANDARDTIME'] = "CHINASTANDARDTIME"; + TimeZone[TimeZone["NORTHASIAEASTSTANDARDTIME"] = 'NORTHASIAEASTSTANDARDTIME'] = "NORTHASIAEASTSTANDARDTIME"; + TimeZone[TimeZone["SINGAPORESTANDARDTIME"] = 'SINGAPORESTANDARDTIME'] = "SINGAPORESTANDARDTIME"; + TimeZone[TimeZone["WAUSTRALIASTANDARDTIME"] = 'WAUSTRALIASTANDARDTIME'] = "WAUSTRALIASTANDARDTIME"; + TimeZone[TimeZone["TAIPEISTANDARDTIME"] = 'TAIPEISTANDARDTIME'] = "TAIPEISTANDARDTIME"; + TimeZone[TimeZone["ULAANBAATARSTANDARDTIME"] = 'ULAANBAATARSTANDARDTIME'] = "ULAANBAATARSTANDARDTIME"; + TimeZone[TimeZone["TOKYOSTANDARDTIME"] = 'TOKYOSTANDARDTIME'] = "TOKYOSTANDARDTIME"; + TimeZone[TimeZone["KOREASTANDARDTIME"] = 'KOREASTANDARDTIME'] = "KOREASTANDARDTIME"; + TimeZone[TimeZone["YAKUTSKSTANDARDTIME"] = 'YAKUTSKSTANDARDTIME'] = "YAKUTSKSTANDARDTIME"; + TimeZone[TimeZone["CENAUSTRALIASTANDARDTIME"] = 'CENAUSTRALIASTANDARDTIME'] = "CENAUSTRALIASTANDARDTIME"; + TimeZone[TimeZone["AUSCENTRALSTANDARDTIME"] = 'AUSCENTRALSTANDARDTIME'] = "AUSCENTRALSTANDARDTIME"; + TimeZone[TimeZone["EAUSTRALIASTANDARDTIME"] = 'EAUSTRALIASTANDARDTIME'] = "EAUSTRALIASTANDARDTIME"; + TimeZone[TimeZone["AUSEASTERNSTANDARDTIME"] = 'AUSEASTERNSTANDARDTIME'] = "AUSEASTERNSTANDARDTIME"; + TimeZone[TimeZone["WESTPACIFICSTANDARDTIME"] = 'WESTPACIFICSTANDARDTIME'] = "WESTPACIFICSTANDARDTIME"; + TimeZone[TimeZone["TASMANIASTANDARDTIME"] = 'TASMANIASTANDARDTIME'] = "TASMANIASTANDARDTIME"; + TimeZone[TimeZone["MAGADANSTANDARDTIME"] = 'MAGADANSTANDARDTIME'] = "MAGADANSTANDARDTIME"; + TimeZone[TimeZone["VLADIVOSTOKSTANDARDTIME"] = 'VLADIVOSTOKSTANDARDTIME'] = "VLADIVOSTOKSTANDARDTIME"; + TimeZone[TimeZone["RUSSIATIMEZONE10"] = 'RUSSIATIMEZONE10'] = "RUSSIATIMEZONE10"; + TimeZone[TimeZone["CENTRALPACIFICSTANDARDTIME"] = 'CENTRALPACIFICSTANDARDTIME'] = "CENTRALPACIFICSTANDARDTIME"; + TimeZone[TimeZone["RUSSIATIMEZONE11"] = 'RUSSIATIMEZONE11'] = "RUSSIATIMEZONE11"; + TimeZone[TimeZone["NEWZEALANDSTANDARDTIME"] = 'NEWZEALANDSTANDARDTIME'] = "NEWZEALANDSTANDARDTIME"; + TimeZone[TimeZone["UTC12"] = 'UTC+12'] = "UTC12"; + TimeZone[TimeZone["FIJISTANDARDTIME"] = 'FIJISTANDARDTIME'] = "FIJISTANDARDTIME"; + TimeZone[TimeZone["KAMCHATKASTANDARDTIME"] = 'KAMCHATKASTANDARDTIME'] = "KAMCHATKASTANDARDTIME"; + TimeZone[TimeZone["TONGASTANDARDTIME"] = 'TONGASTANDARDTIME'] = "TONGASTANDARDTIME"; + TimeZone[TimeZone["SAMOASTANDARDTIME"] = 'SAMOASTANDARDTIME'] = "SAMOASTANDARDTIME"; + TimeZone[TimeZone["LINEISLANDSSTANDARDTIME"] = 'LINEISLANDSSTANDARDTIME'] = "LINEISLANDSSTANDARDTIME"; + TimeZone[TimeZone["AZORESSTANDARDTIME"] = 'AZORESSTANDARDTIME'] = "AZORESSTANDARDTIME"; + TimeZone[TimeZone["CAPEVERDESTANDARDTIME"] = 'CAPEVERDESTANDARDTIME'] = "CAPEVERDESTANDARDTIME"; + TimeZone[TimeZone["UTC02"] = 'UTC02'] = "UTC02"; + TimeZone[TimeZone["MIDATLANTICSTANDARDTIME"] = 'MIDATLANTICSTANDARDTIME'] = "MIDATLANTICSTANDARDTIME"; + TimeZone[TimeZone["ESOUTHAMERICASTANDARDTIME"] = 'ESOUTHAMERICASTANDARDTIME'] = "ESOUTHAMERICASTANDARDTIME"; + TimeZone[TimeZone["ARGENTINASTANDARDTIME"] = 'ARGENTINASTANDARDTIME'] = "ARGENTINASTANDARDTIME"; + TimeZone[TimeZone["SAEASTERNSTANDARDTIME"] = 'SAEASTERNSTANDARDTIME'] = "SAEASTERNSTANDARDTIME"; + TimeZone[TimeZone["GREENLANDSTANDARDTIME"] = 'GREENLANDSTANDARDTIME'] = "GREENLANDSTANDARDTIME"; + TimeZone[TimeZone["MONTEVIDEOSTANDARDTIME"] = 'MONTEVIDEOSTANDARDTIME'] = "MONTEVIDEOSTANDARDTIME"; + TimeZone[TimeZone["BAHIASTANDARDTIME"] = 'BAHIASTANDARDTIME'] = "BAHIASTANDARDTIME"; + TimeZone[TimeZone["NEWFOUNDLANDSTANDARDTIME"] = 'NEWFOUNDLANDSTANDARDTIME'] = "NEWFOUNDLANDSTANDARDTIME"; + TimeZone[TimeZone["PARAGUAYSTANDARDTIME"] = 'PARAGUAYSTANDARDTIME'] = "PARAGUAYSTANDARDTIME"; + TimeZone[TimeZone["ATLANTICSTANDARDTIME"] = 'ATLANTICSTANDARDTIME'] = "ATLANTICSTANDARDTIME"; + TimeZone[TimeZone["CENTRALBRAZILIANSTANDARDTIME"] = 'CENTRALBRAZILIANSTANDARDTIME'] = "CENTRALBRAZILIANSTANDARDTIME"; + TimeZone[TimeZone["SAWESTERNSTANDARDTIME"] = 'SAWESTERNSTANDARDTIME'] = "SAWESTERNSTANDARDTIME"; + TimeZone[TimeZone["PACIFICSASTANDARDTIME"] = 'PACIFICSASTANDARDTIME'] = "PACIFICSASTANDARDTIME"; + TimeZone[TimeZone["VENEZUELASTANDARDTIME"] = 'VENEZUELASTANDARDTIME'] = "VENEZUELASTANDARDTIME"; + TimeZone[TimeZone["SAPACIFICSTANDARDTIME"] = 'SAPACIFICSTANDARDTIME'] = "SAPACIFICSTANDARDTIME"; + TimeZone[TimeZone["EASTERNSTANDARDTIME"] = 'EASTERNSTANDARDTIME'] = "EASTERNSTANDARDTIME"; + TimeZone[TimeZone["USEASTERNSTANDARDTIME"] = 'USEASTERNSTANDARDTIME'] = "USEASTERNSTANDARDTIME"; + TimeZone[TimeZone["CENTRALAMERICASTANDARDTIME"] = 'CENTRALAMERICASTANDARDTIME'] = "CENTRALAMERICASTANDARDTIME"; + TimeZone[TimeZone["CENTRALSTANDARDTIME"] = 'CENTRALSTANDARDTIME'] = "CENTRALSTANDARDTIME"; + TimeZone[TimeZone["CENTRALSTANDARDTIMEMEXICO"] = 'CENTRALSTANDARDTIME(MEXICO)'] = "CENTRALSTANDARDTIMEMEXICO"; + TimeZone[TimeZone["CANADACENTRALSTANDARDTIME"] = 'CANADACENTRALSTANDARDTIME'] = "CANADACENTRALSTANDARDTIME"; + TimeZone[TimeZone["USMOUNTAINSTANDARDTIME"] = 'USMOUNTAINSTANDARDTIME'] = "USMOUNTAINSTANDARDTIME"; + TimeZone[TimeZone["MOUNTAINSTANDARDTIMEMEXICO"] = 'MOUNTAINSTANDARDTIME(MEXICO)'] = "MOUNTAINSTANDARDTIMEMEXICO"; + TimeZone[TimeZone["MOUNTAINSTANDARDTIME"] = 'MOUNTAINSTANDARDTIME'] = "MOUNTAINSTANDARDTIME"; + TimeZone[TimeZone["PACIFICSTANDARDTIMEMEXICO"] = 'PACIFICSTANDARDTIME(MEXICO)'] = "PACIFICSTANDARDTIMEMEXICO"; + TimeZone[TimeZone["PACIFICSTANDARDTIME"] = 'PACIFICSTANDARDTIME'] = "PACIFICSTANDARDTIME"; + TimeZone[TimeZone["ALASKANSTANDARDTIME"] = 'ALASKANSTANDARDTIME'] = "ALASKANSTANDARDTIME"; + TimeZone[TimeZone["HAWAIIANSTANDARDTIME"] = 'HAWAIIANSTANDARDTIME'] = "HAWAIIANSTANDARDTIME"; + TimeZone[TimeZone["UTC11"] = 'UTC11'] = "UTC11"; + TimeZone[TimeZone["DATELINESTANDARDTIME"] = 'DATELINESTANDARDTIME'] = "DATELINESTANDARDTIME"; +})(TimeZone = exports.TimeZone || (exports.TimeZone = {})); +//# sourceMappingURL=timeZone.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/timeZone.js.map b/dist/gen/model/accounting/timeZone.js.map new file mode 100644 index 000000000..cf1f850be --- /dev/null +++ b/dist/gen/model/accounting/timeZone.js.map @@ -0,0 +1 @@ +{"version":3,"file":"timeZone.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/timeZone.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingCategories.d.ts b/dist/gen/model/accounting/trackingCategories.d.ts new file mode 100644 index 000000000..93f95f0f7 --- /dev/null +++ b/dist/gen/model/accounting/trackingCategories.d.ts @@ -0,0 +1,15 @@ +import { TrackingCategory } from './trackingCategory'; +export declare class TrackingCategories { + 'trackingCategories'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/trackingCategories.js b/dist/gen/model/accounting/trackingCategories.js new file mode 100644 index 000000000..f65725fa8 --- /dev/null +++ b/dist/gen/model/accounting/trackingCategories.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TrackingCategories { + static getAttributeTypeMap() { + return TrackingCategories.attributeTypeMap; + } +} +exports.TrackingCategories = TrackingCategories; +TrackingCategories.discriminator = undefined; +TrackingCategories.attributeTypeMap = [ + { + "name": "trackingCategories", + "baseName": "TrackingCategories", + "type": "Array" + } +]; +//# sourceMappingURL=trackingCategories.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingCategories.js.map b/dist/gen/model/accounting/trackingCategories.js.map new file mode 100644 index 000000000..2087bf366 --- /dev/null +++ b/dist/gen/model/accounting/trackingCategories.js.map @@ -0,0 +1 @@ +{"version":3,"file":"trackingCategories.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/trackingCategories.ts"],"names":[],"mappings":";;AAcA,MAAa,kBAAkB;IAY3B,MAAM,CAAC,mBAAmB;QACtB,OAAO,kBAAkB,CAAC,gBAAgB,CAAC;IAC/C,CAAC;;AAdL,gDAeC;AAZU,gCAAa,GAAuB,SAAS,CAAC;AAE9C,mCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,yBAAyB;KACpC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingCategory.d.ts b/dist/gen/model/accounting/trackingCategory.d.ts new file mode 100644 index 000000000..5635fae79 --- /dev/null +++ b/dist/gen/model/accounting/trackingCategory.d.ts @@ -0,0 +1,27 @@ +import { TrackingOption } from './trackingOption'; +export declare class TrackingCategory { + 'trackingCategoryID'?: string; + 'trackingOptionID'?: string; + 'name'?: string; + 'option'?: string; + 'status'?: TrackingCategory.StatusEnum; + 'options'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace TrackingCategory { + enum StatusEnum { + ACTIVE, + ARCHIVED, + DELETED + } +} diff --git a/dist/gen/model/accounting/trackingCategory.js b/dist/gen/model/accounting/trackingCategory.js new file mode 100644 index 000000000..b337e8fe6 --- /dev/null +++ b/dist/gen/model/accounting/trackingCategory.js @@ -0,0 +1,50 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TrackingCategory { + static getAttributeTypeMap() { + return TrackingCategory.attributeTypeMap; + } +} +exports.TrackingCategory = TrackingCategory; +TrackingCategory.discriminator = undefined; +TrackingCategory.attributeTypeMap = [ + { + "name": "trackingCategoryID", + "baseName": "TrackingCategoryID", + "type": "string" + }, + { + "name": "trackingOptionID", + "baseName": "TrackingOptionID", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "option", + "baseName": "Option", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "TrackingCategory.StatusEnum" + }, + { + "name": "options", + "baseName": "Options", + "type": "Array" + } +]; +(function (TrackingCategory) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = TrackingCategory.StatusEnum || (TrackingCategory.StatusEnum = {})); +})(TrackingCategory = exports.TrackingCategory || (exports.TrackingCategory = {})); +//# sourceMappingURL=trackingCategory.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingCategory.js.map b/dist/gen/model/accounting/trackingCategory.js.map new file mode 100644 index 000000000..9344d5e2b --- /dev/null +++ b/dist/gen/model/accounting/trackingCategory.js.map @@ -0,0 +1 @@ +{"version":3,"file":"trackingCategory.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/trackingCategory.ts"],"names":[],"mappings":";;AAcA,MAAa,gBAAgB;IA4DzB,MAAM,CAAC,mBAAmB;QACtB,OAAO,gBAAgB,CAAC,gBAAgB,CAAC;IAC7C,CAAC;;AA9DL,4CA+DC;AArCU,8BAAa,GAAuB,SAAS,CAAC;AAE9C,iCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,6BAA6B;KACxC;IACD;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,uBAAuB;KAClC;CAAK,CAAC;AAOf,WAAiB,gBAAgB;IAC7B,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,kCAAe,QAAQ,YAAA,CAAA;QACvB,oCAAiB,UAAU,cAAA,CAAA;QAC3B,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAJW,UAAU,GAAV,2BAAU,KAAV,2BAAU,QAIrB;AACL,CAAC,EANgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAMhC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingOption.d.ts b/dist/gen/model/accounting/trackingOption.d.ts new file mode 100644 index 000000000..ae2112772 --- /dev/null +++ b/dist/gen/model/accounting/trackingOption.d.ts @@ -0,0 +1,24 @@ +export declare class TrackingOption { + 'trackingOptionID'?: string; + 'name'?: string; + 'status'?: TrackingOption.StatusEnum; + 'trackingCategoryID'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace TrackingOption { + enum StatusEnum { + ACTIVE, + ARCHIVED, + DELETED + } +} diff --git a/dist/gen/model/accounting/trackingOption.js b/dist/gen/model/accounting/trackingOption.js new file mode 100644 index 000000000..ad3996bfd --- /dev/null +++ b/dist/gen/model/accounting/trackingOption.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TrackingOption { + static getAttributeTypeMap() { + return TrackingOption.attributeTypeMap; + } +} +exports.TrackingOption = TrackingOption; +TrackingOption.discriminator = undefined; +TrackingOption.attributeTypeMap = [ + { + "name": "trackingOptionID", + "baseName": "TrackingOptionID", + "type": "string" + }, + { + "name": "name", + "baseName": "Name", + "type": "string" + }, + { + "name": "status", + "baseName": "Status", + "type": "TrackingOption.StatusEnum" + }, + { + "name": "trackingCategoryID", + "baseName": "TrackingCategoryID", + "type": "string" + } +]; +(function (TrackingOption) { + let StatusEnum; + (function (StatusEnum) { + StatusEnum[StatusEnum["ACTIVE"] = 'ACTIVE'] = "ACTIVE"; + StatusEnum[StatusEnum["ARCHIVED"] = 'ARCHIVED'] = "ARCHIVED"; + StatusEnum[StatusEnum["DELETED"] = 'DELETED'] = "DELETED"; + })(StatusEnum = TrackingOption.StatusEnum || (TrackingOption.StatusEnum = {})); +})(TrackingOption = exports.TrackingOption || (exports.TrackingOption = {})); +//# sourceMappingURL=trackingOption.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingOption.js.map b/dist/gen/model/accounting/trackingOption.js.map new file mode 100644 index 000000000..6b8316477 --- /dev/null +++ b/dist/gen/model/accounting/trackingOption.js.map @@ -0,0 +1 @@ +{"version":3,"file":"trackingOption.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/trackingOption.ts"],"names":[],"mappings":";;AAaA,MAAa,cAAc;IA0CvB,MAAM,CAAC,mBAAmB;QACtB,OAAO,cAAc,CAAC,gBAAgB,CAAC;IAC3C,CAAC;;AA5CL,wCA6CC;AA3BU,4BAAa,GAAuB,SAAS,CAAC;AAE9C,+BAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,MAAM;QAClB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,2BAA2B;KACtC;IACD;QACI,MAAM,EAAE,oBAAoB;QAC5B,UAAU,EAAE,oBAAoB;QAChC,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC;AAOf,WAAiB,cAAc;IAC3B,IAAY,UAIX;IAJD,WAAY,UAAU;QAClB,kCAAe,QAAQ,YAAA,CAAA;QACvB,oCAAiB,UAAU,cAAA,CAAA;QAC3B,mCAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EAJW,UAAU,GAAV,yBAAU,KAAV,yBAAU,QAIrB;AACL,CAAC,EANgB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAM9B"} \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingOptions.d.ts b/dist/gen/model/accounting/trackingOptions.d.ts new file mode 100644 index 000000000..a7918b4e4 --- /dev/null +++ b/dist/gen/model/accounting/trackingOptions.d.ts @@ -0,0 +1,15 @@ +import { TrackingOption } from './trackingOption'; +export declare class TrackingOptions { + 'options'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/trackingOptions.js b/dist/gen/model/accounting/trackingOptions.js new file mode 100644 index 000000000..816b4f52d --- /dev/null +++ b/dist/gen/model/accounting/trackingOptions.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class TrackingOptions { + static getAttributeTypeMap() { + return TrackingOptions.attributeTypeMap; + } +} +exports.TrackingOptions = TrackingOptions; +TrackingOptions.discriminator = undefined; +TrackingOptions.attributeTypeMap = [ + { + "name": "options", + "baseName": "Options", + "type": "Array" + } +]; +//# sourceMappingURL=trackingOptions.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/trackingOptions.js.map b/dist/gen/model/accounting/trackingOptions.js.map new file mode 100644 index 000000000..ee80bdb51 --- /dev/null +++ b/dist/gen/model/accounting/trackingOptions.js.map @@ -0,0 +1 @@ +{"version":3,"file":"trackingOptions.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/trackingOptions.ts"],"names":[],"mappings":";;AAcA,MAAa,eAAe;IAYxB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AAdL,0CAeC;AAZU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,uBAAuB;KAClC;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/user.d.ts b/dist/gen/model/accounting/user.d.ts new file mode 100644 index 000000000..727b31405 --- /dev/null +++ b/dist/gen/model/accounting/user.d.ts @@ -0,0 +1,31 @@ +export declare class User { + 'userID'?: string; + 'emailAddress'?: string; + 'firstName'?: string; + 'lastName'?: string; + 'updatedDateUTC'?: Date; + 'isSubscriber'?: boolean; + 'organisationRole'?: User.OrganisationRoleEnum; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} +export declare namespace User { + enum OrganisationRoleEnum { + READONLY, + INVOICEONLY, + STANDARD, + FINANCIALADVISER, + MANAGEDCLIENT, + CASHBOOKCLIENT, + UNKNOWN + } +} diff --git a/dist/gen/model/accounting/user.js b/dist/gen/model/accounting/user.js new file mode 100644 index 000000000..d1f28d017 --- /dev/null +++ b/dist/gen/model/accounting/user.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class User { + static getAttributeTypeMap() { + return User.attributeTypeMap; + } +} +exports.User = User; +User.discriminator = undefined; +User.attributeTypeMap = [ + { + "name": "userID", + "baseName": "UserID", + "type": "string" + }, + { + "name": "emailAddress", + "baseName": "EmailAddress", + "type": "string" + }, + { + "name": "firstName", + "baseName": "FirstName", + "type": "string" + }, + { + "name": "lastName", + "baseName": "LastName", + "type": "string" + }, + { + "name": "updatedDateUTC", + "baseName": "UpdatedDateUTC", + "type": "Date" + }, + { + "name": "isSubscriber", + "baseName": "IsSubscriber", + "type": "boolean" + }, + { + "name": "organisationRole", + "baseName": "OrganisationRole", + "type": "User.OrganisationRoleEnum" + } +]; +(function (User) { + let OrganisationRoleEnum; + (function (OrganisationRoleEnum) { + OrganisationRoleEnum[OrganisationRoleEnum["READONLY"] = 'READONLY'] = "READONLY"; + OrganisationRoleEnum[OrganisationRoleEnum["INVOICEONLY"] = 'INVOICEONLY'] = "INVOICEONLY"; + OrganisationRoleEnum[OrganisationRoleEnum["STANDARD"] = 'STANDARD'] = "STANDARD"; + OrganisationRoleEnum[OrganisationRoleEnum["FINANCIALADVISER"] = 'FINANCIALADVISER'] = "FINANCIALADVISER"; + OrganisationRoleEnum[OrganisationRoleEnum["MANAGEDCLIENT"] = 'MANAGEDCLIENT'] = "MANAGEDCLIENT"; + OrganisationRoleEnum[OrganisationRoleEnum["CASHBOOKCLIENT"] = 'CASHBOOKCLIENT'] = "CASHBOOKCLIENT"; + OrganisationRoleEnum[OrganisationRoleEnum["UNKNOWN"] = 'UNKNOWN'] = "UNKNOWN"; + })(OrganisationRoleEnum = User.OrganisationRoleEnum || (User.OrganisationRoleEnum = {})); +})(User = exports.User || (exports.User = {})); +//# sourceMappingURL=user.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/user.js.map b/dist/gen/model/accounting/user.js.map new file mode 100644 index 000000000..e025c5868 --- /dev/null +++ b/dist/gen/model/accounting/user.js.map @@ -0,0 +1 @@ +{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/user.ts"],"names":[],"mappings":";;AAaA,MAAa,IAAI;IAqEb,MAAM,CAAC,mBAAmB;QACtB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;;AAvEL,oBAwEC;AA1CU,kBAAa,GAAuB,SAAS,CAAC;AAE9C,qBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,QAAQ;QAChB,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,WAAW;QACnB,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,UAAU;QAClB,UAAU,EAAE,UAAU;QACtB,MAAM,EAAE,QAAQ;KACnB;IACD;QACI,MAAM,EAAE,gBAAgB;QACxB,UAAU,EAAE,gBAAgB;QAC5B,MAAM,EAAE,MAAM;KACjB;IACD;QACI,MAAM,EAAE,cAAc;QACtB,UAAU,EAAE,cAAc;QAC1B,MAAM,EAAE,SAAS;KACpB;IACD;QACI,MAAM,EAAE,kBAAkB;QAC1B,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,2BAA2B;KACtC;CAAK,CAAC;AAOf,WAAiB,IAAI;IACjB,IAAY,oBAQX;IARD,WAAY,oBAAoB;QAC5B,wDAAiB,UAAU,cAAA,CAAA;QAC3B,2DAAoB,aAAa,iBAAA,CAAA;QACjC,wDAAiB,UAAU,cAAA,CAAA;QAC3B,gEAAyB,kBAAkB,sBAAA,CAAA;QAC3C,6DAAsB,eAAe,mBAAA,CAAA;QACrC,8DAAuB,gBAAgB,oBAAA,CAAA;QACvC,uDAAgB,SAAS,aAAA,CAAA;IAC7B,CAAC,EARW,oBAAoB,GAApB,yBAAoB,KAApB,yBAAoB,QAQ/B;AACL,CAAC,EAVgB,IAAI,GAAJ,YAAI,KAAJ,YAAI,QAUpB"} \ No newline at end of file diff --git a/dist/gen/model/accounting/users.d.ts b/dist/gen/model/accounting/users.d.ts new file mode 100644 index 000000000..6cc6d8c83 --- /dev/null +++ b/dist/gen/model/accounting/users.d.ts @@ -0,0 +1,15 @@ +import { User } from './user'; +export declare class Users { + 'users'?: Array; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/users.js b/dist/gen/model/accounting/users.js new file mode 100644 index 000000000..085654782 --- /dev/null +++ b/dist/gen/model/accounting/users.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class Users { + static getAttributeTypeMap() { + return Users.attributeTypeMap; + } +} +exports.Users = Users; +Users.discriminator = undefined; +Users.attributeTypeMap = [ + { + "name": "users", + "baseName": "Users", + "type": "Array" + } +]; +//# sourceMappingURL=users.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/users.js.map b/dist/gen/model/accounting/users.js.map new file mode 100644 index 000000000..cfbc34265 --- /dev/null +++ b/dist/gen/model/accounting/users.js.map @@ -0,0 +1 @@ +{"version":3,"file":"users.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/users.ts"],"names":[],"mappings":";;AAcA,MAAa,KAAK;IAYd,MAAM,CAAC,mBAAmB;QACtB,OAAO,KAAK,CAAC,gBAAgB,CAAC;IAClC,CAAC;;AAdL,sBAeC;AAZU,mBAAa,GAAuB,SAAS,CAAC;AAE9C,sBAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,aAAa;KACxB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/gen/model/accounting/validationError.d.ts b/dist/gen/model/accounting/validationError.d.ts new file mode 100644 index 000000000..4555a4c60 --- /dev/null +++ b/dist/gen/model/accounting/validationError.d.ts @@ -0,0 +1,14 @@ +export declare class ValidationError { + 'message'?: string; + static discriminator: string | undefined; + static attributeTypeMap: Array<{ + name: string; + baseName: string; + type: string; + }>; + static getAttributeTypeMap(): { + name: string; + baseName: string; + type: string; + }[]; +} diff --git a/dist/gen/model/accounting/validationError.js b/dist/gen/model/accounting/validationError.js new file mode 100644 index 000000000..23cea110c --- /dev/null +++ b/dist/gen/model/accounting/validationError.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +class ValidationError { + static getAttributeTypeMap() { + return ValidationError.attributeTypeMap; + } +} +exports.ValidationError = ValidationError; +ValidationError.discriminator = undefined; +ValidationError.attributeTypeMap = [ + { + "name": "message", + "baseName": "Message", + "type": "string" + } +]; +//# sourceMappingURL=validationError.js.map \ No newline at end of file diff --git a/dist/gen/model/accounting/validationError.js.map b/dist/gen/model/accounting/validationError.js.map new file mode 100644 index 000000000..01478bd25 --- /dev/null +++ b/dist/gen/model/accounting/validationError.js.map @@ -0,0 +1 @@ +{"version":3,"file":"validationError.js","sourceRoot":"","sources":["../../../../src/gen/model/accounting/validationError.ts"],"names":[],"mappings":";;AAaA,MAAa,eAAe;IAexB,MAAM,CAAC,mBAAmB;QACtB,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC5C,CAAC;;AAjBL,0CAkBC;AAZU,6BAAa,GAAuB,SAAS,CAAC;AAE9C,gCAAgB,GAA0D;IAC7E;QACI,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,MAAM,EAAE,QAAQ;KACnB;CAAK,CAAC"} \ No newline at end of file diff --git a/dist/index.d.ts b/dist/index.d.ts new file mode 100644 index 000000000..dfb2c97c1 --- /dev/null +++ b/dist/index.d.ts @@ -0,0 +1,3 @@ +export * from './gen/api/apis'; +export * from './gen/model/accounting/models'; +export * from './XeroClient'; diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 000000000..2b0128c63 --- /dev/null +++ b/dist/index.js @@ -0,0 +1,9 @@ +"use strict"; +function __export(m) { + for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; +} +Object.defineProperty(exports, "__esModule", { value: true }); +__export(require("./gen/api/apis")); +__export(require("./gen/model/accounting/models")); +__export(require("./XeroClient")); +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/dist/index.js.map b/dist/index.js.map new file mode 100644 index 000000000..ce18ba5a8 --- /dev/null +++ b/dist/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAEA,oCAA+B;AAC/B,mDAA8C;AAE9C,kCAA6B"} \ No newline at end of file diff --git a/dist/untyped.d.ts b/dist/untyped.d.ts new file mode 100644 index 000000000..1eb720141 --- /dev/null +++ b/dist/untyped.d.ts @@ -0,0 +1,406 @@ +/// +declare module 'openid-client' { + import * as http from 'http'; + import * as https from 'https'; + import * as http2 from 'http2'; + import * as tls from 'tls'; + namespace JWKS { + class KeyStore { + } + } + type JSONWebKeySet = any; + type RetryFunction = (retry: number, error: Error) => number; + interface HttpRequestOptions extends tls.SecureContextOptions { + url?: string; + headers?: { + [key: string]: unknown; + }; + query?: { + [key: string]: unknown; + }; + body?: { + [key: string]: unknown; + }; + form?: boolean; + json?: boolean; + timeout?: number | { + lookup?: number; + connect?: number; + secureConnect?: number; + socket?: number; + response?: number; + send?: number; + request?: number; + }; + retry?: number | { + retries?: number | RetryFunction; + methods?: Array<'GET' | 'POST' | 'PUT' | 'HEAD' | 'DELETE' | 'OPTIONS' | 'TRACE'>; + statusCodes?: Array<408 | 413 | 429 | 500 | 502 | 503 | 504>; + maxRetryAfter?: number; + errorCodes?: string[]; + }; + followRedirect?: boolean; + throwHttpErrors?: boolean; + agent?: http.Agent | https.Agent | boolean | { + http: http.Agent; + https: https.Agent; + }; + [key: string]: unknown; + } + type CustomHttpOptionsProvider = (options: HttpRequestOptions) => HttpRequestOptions; + type TokenTypeHint = 'access_token' | 'refresh_token' | string; + const custom: { + setHttpOptionsDefaults(params: HttpRequestOptions): void; + readonly http_options: unique symbol; + readonly clock_tolerance: unique symbol; + }; + type ResponseType = 'code' | 'id_token' | 'code id_token' | 'code token' | 'code id_token token' | 'none'; + type ClientAuthMethod = 'client_secret_basic' | 'client_secret_post' | 'client_secret_jwt' | 'private_key_jwt' | 'tls_client_auth' | 'self_signed_tls_client_auth' | 'none'; + interface ClientMetadata { + client_id: string; + id_token_signed_response_alg?: string; + token_endpoint_auth_method?: ClientAuthMethod; + client_secret?: string; + redirect_uris?: string[]; + response_types?: ResponseType[]; + post_logout_redirect_uris?: string[]; + default_max_age?: number; + require_auth_time?: boolean; + tls_client_certificate_bound_access_tokens?: boolean; + request_object_signing_alg?: string; + id_token_encrypted_response_alg?: string; + id_token_encrypted_response_enc?: string; + introspection_endpoint_auth_method?: ClientAuthMethod; + introspection_endpoint_auth_signing_alg?: string; + request_object_encryption_alg?: string; + request_object_encryption_enc?: string; + revocation_endpoint_auth_method?: ClientAuthMethod; + revocation_endpoint_auth_signing_alg?: string; + token_endpoint_auth_signing_alg?: string; + userinfo_encrypted_response_alg?: string; + userinfo_encrypted_response_enc?: string; + userinfo_signed_response_alg?: string; + [key: string]: unknown; + } + interface ClaimsParameterMember { + essential?: boolean; + value?: string; + values?: string[]; + [key: string]: unknown; + } + interface AuthorizationParameters { + acr_values?: string; + audience?: string; + claims?: string | { + id_token?: { + [key: string]: null | ClaimsParameterMember; + }; + userinfo?: { + [key: string]: null | ClaimsParameterMember; + }; + }; + claims_locales?: string; + client_id?: string; + code_challenge_method?: string; + code_challenge?: string; + display?: string; + id_token_hint?: string; + login_hint?: string; + max_age?: string; + nonce?: string; + prompt?: string; + redirect_uri?: string; + registration?: string; + request_uri?: string; + request?: string; + resource?: string | string[]; + response_mode?: string; + response_type?: string; + scope?: string; + ui_locales?: string; + [key: string]: unknown; + } + interface EndSessionParameters { + id_token_hint?: TokenSet | string; + post_logout_redirect_uri?: string; + state?: string; + [key: string]: unknown; + } + interface CallbackParamsType { + access_token?: string; + code?: string; + error?: string; + error_description?: string; + error_uri?: string; + expires_in?: string; + id_token?: string; + state?: string; + token_type?: string; + session_state?: string; + [key: string]: unknown; + } + interface OAuthCallbackChecks { + response_type?: string; + state?: string; + code_verifier?: string; + } + interface OpenIDCallbackChecks extends OAuthCallbackChecks { + max_age?: number; + nonce?: string; + } + interface CallbackExtras { + exchangeBody?: object; + clientAssertionPayload?: object; + } + interface RefreshExtras { + exchangeBody?: object; + clientAssertionPayload?: object; + } + interface GrantBody { + grant_type: string; + [key: string]: unknown; + } + interface GrantExtras { + clientAssertionPayload?: object; + } + interface IntrospectExtras { + introspectBody?: object; + clientAssertionPayload?: object; + } + interface RevokeExtras { + revokeBody?: object; + clientAssertionPayload?: object; + } + interface RequestObjectPayload extends AuthorizationParameters { + client_id?: string; + iss?: string; + aud?: string; + iat?: number; + exp?: number; + jti?: string; + [key: string]: unknown; + } + interface RegisterOther { + jwks?: JSONWebKeySet; + initialAccessToken?: string; + } + interface DeviceAuthorizationParameters { + client_id?: string; + scope?: string; + [key: string]: unknown; + } + interface DeviceAuthorizationExtras { + exchangeBody?: object; + clientAssertionPayload?: object; + } + interface UserinfoResponse { + sub: string; + name?: string; + given_name?: string; + family_name?: string; + middle_name?: string; + nickname?: string; + preferred_username?: string; + profile?: string; + picture?: string; + website?: string; + email?: string; + email_verified?: boolean; + gender?: string; + birthdate?: string; + zoneinfo?: string; + locale?: string; + phone_number?: string; + updated_at?: number; + address?: { + formatted?: string; + street_address?: string; + locality?: string; + region?: string; + postal_code?: string; + country?: string; + [key: string]: unknown; + }; + [key: string]: unknown; + } + interface IntrospectionResponse { + active: boolean; + client_id?: string; + exp?: number; + iat?: number; + sid?: string; + iss?: string; + jti?: string; + username?: string; + aud?: string | string[]; + scope: string; + token_type?: string; + cnf?: { + 'x5t#S256'?: string; + [key: string]: unknown; + }; + [key: string]: unknown; + } + class Client { + constructor(metadata: ClientMetadata, jwks?: JSONWebKeySet); + [custom.http_options]: CustomHttpOptionsProvider; + [custom.clock_tolerance]: number; + metadata: ClientMetadata; + authorizationUrl(parameters?: AuthorizationParameters): string; + endSessionUrl(parameters?: EndSessionParameters): string; + callbackParams(input: string | http.IncomingMessage | http2.Http2ServerRequest): CallbackParamsType; + callback(redirectUri: string | undefined, parameters: CallbackParamsType, checks?: OpenIDCallbackChecks, extras?: CallbackExtras): Promise; + oauthCallback(redirectUri: string | undefined, parameters: CallbackParamsType, checks?: OAuthCallbackChecks, extras?: CallbackExtras): Promise; + refresh(refreshToken: TokenSet | string, extras?: RefreshExtras): Promise; + userinfo(accessToken: TokenSet | string): Promise; + grant(body: GrantBody, extras?: GrantExtras): Promise; + introspect(token: string, tokenTypeHint?: TokenTypeHint, extras?: IntrospectExtras): Promise; + revoke(token: string, tokenTypeHint?: TokenTypeHint, extras?: RevokeExtras): Promise; + requestObject(payload: RequestObjectPayload): Promise; + deviceAuthorization(parameters?: DeviceAuthorizationParameters, extras?: DeviceAuthorizationExtras): Promise>; + static register(metadata: object, other?: RegisterOther): Promise; + static fromUri(registrationClientUri: string, registrationAccessToken: string, jwks?: JSONWebKeySet): Promise; + static [custom.http_options]: CustomHttpOptionsProvider; + [key: string]: unknown; + } + class DeviceFlowHandle { + poll(): Promise; + expired(): boolean; + expires_at: number; + client: TClient; + user_code: string; + device_code: string; + verification_uri: string; + verification_uri_complete: string; + expires_in: number; + } + interface IssuerMetadata { + issuer: string; + authorization_endpoint?: string; + token_endpoint?: string; + jwks_uri?: string; + userinfo_endpoint?: string; + revocation_endpoint?: string; + end_session_endpoint?: string; + registration_endpoint?: string; + token_endpoint_auth_methods_supported?: string[]; + token_endpoint_auth_signing_alg_values_supported?: string[]; + introspection_endpoint_auth_methods_supported?: string[]; + introspection_endpoint_auth_signing_alg_values_supported?: string[]; + revocation_endpoint_auth_methods_supported?: string[]; + revocation_endpoint_auth_signing_alg_values_supported?: string[]; + request_object_signing_alg_values_supported?: string[]; + mtls_endpoint_aliases?: MtlsEndpointAliases; + [key: string]: unknown; + } + interface MtlsEndpointAliases { + token_endpoint?: string; + userinfo_endpoint?: string; + revocation_endpoint?: string; + introspection_endpoint?: string; + device_authorization_endpoint?: string; + } + interface TypeOfGenericClient { + new (metadata: ClientMetadata, jwks?: JSONWebKeySet): TClient; + [custom.http_options]: CustomHttpOptionsProvider; + [custom.clock_tolerance]: number; + } + class Issuer { + constructor(metadata: IssuerMetadata); + Client: TypeOfGenericClient; + metadata: IssuerMetadata; + [custom.http_options]: CustomHttpOptionsProvider; + keystore(forceReload?: boolean): Promise; + static discover(issuer: string): Promise>; + static webfinger(input: string): Promise>; + static [custom.http_options]: CustomHttpOptionsProvider; + [key: string]: unknown; + } + interface TokenSetParameters { + access_token?: string; + token_type?: string; + id_token?: string; + refresh_token?: string; + scope?: string; + expires_at?: number; + session_state?: string; + [key: string]: unknown; + } + interface IdTokenClaims extends UserinfoResponse { + acr?: string; + amr?: string[]; + at_hash?: string; + aud: string | string[]; + auth_time?: number; + azp?: string; + c_hash?: string; + exp: number; + iat: number; + iss: string; + nonce?: string; + s_hash?: string; + sub: string; + [key: string]: unknown; + } + class TokenSet implements TokenSetParameters { + access_token?: string; + token_type?: string; + id_token?: string; + refresh_token?: string; + expires_in?: number; + expires_at?: number; + session_state?: string; + scope?: string; + constructor(input?: TokenSetParameters); + expired(): boolean; + claims(): IdTokenClaims; + [key: string]: unknown; + } + type StrategyVerifyCallbackUserInfo = (tokenset: TokenSet, userinfo: UserinfoResponse, done: (err: any, user?: TUser) => void) => void; + type StrategyVerifyCallback = (tokenset: TokenSet, done: (err: any, user?: TUser) => void) => void; + type StrategyVerifyCallbackReqUserInfo = (req: http.IncomingMessage, tokenset: TokenSet, userinfo: UserinfoResponse, done: (err: any, user?: TUser) => void) => void; + type StrategyVerifyCallbackReq = (req: http.IncomingMessage, tokenset: TokenSet, done: (err: any, user?: TUser) => void) => void; + interface StrategyOptions { + client: TClient; + params?: AuthorizationParameters; + passReqToCallback?: boolean; + usePKCE?: boolean | string; + sessionKey?: string; + } + class Strategy { + constructor(options: StrategyOptions, verify: StrategyVerifyCallback | StrategyVerifyCallbackUserInfo | StrategyVerifyCallbackReq | StrategyVerifyCallbackReqUserInfo); + authenticate(req: any, options?: any): void; + success(user: any, info?: any): void; + fail(challenge: any, status: number): void; + fail(status: number): void; + redirect(url: string, status?: number): void; + pass(): void; + error(err: Error): void; + } + namespace generators { + function random(bytes?: number): string; + function state(bytes?: number): string; + function nonce(bytes?: number): string; + function codeVerifier(bytes?: number): string; + function codeChallenge(verifier: string): string; + } + namespace errors { + class OPError extends Error { + error_description?: string; + error?: string; + error_uri?: string; + state?: string; + scope?: string; + session_state?: string; + response?: any; + } + class RPError extends Error { + jwt?: string; + checks?: object; + params?: object; + body?: object; + response?: any; + } + } +} +declare module 'prompt'; diff --git a/dist/untyped.js b/dist/untyped.js new file mode 100644 index 000000000..1a3f8dd84 --- /dev/null +++ b/dist/untyped.js @@ -0,0 +1,2 @@ +"use strict"; +//# sourceMappingURL=untyped.js.map \ No newline at end of file diff --git a/dist/untyped.js.map b/dist/untyped.js.map new file mode 100644 index 000000000..915fded3a --- /dev/null +++ b/dist/untyped.js.map @@ -0,0 +1 @@ +{"version":3,"file":"untyped.js","sourceRoot":"","sources":["../src/untyped.ts"],"names":[],"mappings":""} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000..4b3d5884e --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5316 @@ +{ + "name": "xero-node", + "version": "4.0.3", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.5.tgz", + "integrity": "sha512-M42+ScN4+1S9iB6f+TL7QBpoQETxbclx+KNoKJABghnKYE+fMzSGqst0BZJc8CpI625bwPwYgUyRvxZ+0mZzpw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.4", + "@babel/helpers": "^7.7.4", + "@babel/parser": "^7.7.5", + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.13", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.4.tgz", + "integrity": "sha512-m5qo2WgdOJeyYngKImbkyQrnUN1mPceaG5BV+G0E3gWsa4l/jCSryWJdM2x8OuGAOyh+3d5pVYfZWCiNFtynxg==", + "dev": true, + "requires": { + "@babel/types": "^7.7.4", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.4.tgz", + "integrity": "sha512-AnkGIdiBhEuiwdoMnKm7jfPfqItZhgRaZfMg1XX3bS25INOnLPjPG1Ppnajh8eqgt5kPJnfqrRHqFqmjKDZLzQ==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.7.4", + "@babel/template": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.4.tgz", + "integrity": "sha512-QTGKEdCkjgzgfJ3bAyRwF4yyT3pg+vDgan8DSivq1eS0gwi+KGKE5x8kRcbeFTb/673mkO5SN1IZfmCfA5o+EA==", + "dev": true, + "requires": { + "@babel/types": "^7.7.4" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, + "@babel/helper-split-export-declaration": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.4.tgz", + "integrity": "sha512-guAg1SXFcVr04Guk9eq0S4/rWS++sbmyqosJzVs8+1fH5NI+ZcmkaSkc7dmtAFbHFva6yRJnjW3yAcGxjueDug==", + "dev": true, + "requires": { + "@babel/types": "^7.7.4" + } + }, + "@babel/helpers": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.4.tgz", + "integrity": "sha512-ak5NGZGJ6LV85Q1Zc9gn2n+ayXOizryhjSUBTdu5ih1tlVCJeuQENzc4ItyCVhINVXvIT/ZQ4mheGIsfBkpskg==", + "dev": true, + "requires": { + "@babel/template": "^7.7.4", + "@babel/traverse": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "@babel/highlight": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", + "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.7.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.5.tgz", + "integrity": "sha512-KNlOe9+/nk4i29g0VXgl8PEXIRms5xKLJeuZ6UptN0fHv+jDiriG+y94X6qAgWTR0h3KaoM1wK5G5h7MHFRSig==", + "dev": true + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.7.4.tgz", + "integrity": "sha512-mObR+r+KZq0XhRVS2BrBKBpr5jqrqzlPvS9C9vuOf5ilSwzloAl7RPWLrgKdWS6IreaVrjHxTjtyqFiOisaCwg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/template": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.4.tgz", + "integrity": "sha512-qUzihgVPguAzXCK7WXw8pqs6cEwi54s3E+HrejlkuWO6ivMKx9hZl3Y2fSXp9i5HgyWmj7RKP+ulaYnKM4yYxw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4" + } + }, + "@babel/traverse": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.7.4.tgz", + "integrity": "sha512-P1L58hQyupn8+ezVA2z5KBm4/Zr4lCC8dwKCMYzsa5jFMDMQAzaBNy9W5VjB+KAmBjb40U7a/H6ao+Xo+9saIw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.7.4", + "@babel/helper-function-name": "^7.7.4", + "@babel/helper-split-export-declaration": "^7.7.4", + "@babel/parser": "^7.7.4", + "@babel/types": "^7.7.4", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.4.tgz", + "integrity": "sha512-cz5Ji23KCi4T+YIE/BolWosrJuSmoZeN1EFnRtBwF+KKLi8GG/Z2c2hOJJeCXPk4mwk4QFvTmwIodJowXgttRA==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "@cnakazawa/watch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz", + "integrity": "sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==", + "dev": true, + "requires": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + } + }, + "@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "dev": true, + "requires": { + "@jest/source-map": "^24.9.0", + "chalk": "^2.0.1", + "slash": "^2.0.0" + } + }, + "@jest/core": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.9.0.tgz", + "integrity": "sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/reporters": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-changed-files": "^24.9.0", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-resolve-dependencies": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "jest-watcher": "^24.9.0", + "micromatch": "^3.1.10", + "p-each-series": "^1.0.0", + "realpath-native": "^1.1.0", + "rimraf": "^2.5.4", + "slash": "^2.0.0", + "strip-ansi": "^5.0.0" + } + }, + "@jest/environment": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.9.0.tgz", + "integrity": "sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ==", + "dev": true, + "requires": { + "@jest/fake-timers": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/reporters": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz", + "integrity": "sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.2", + "istanbul-lib-coverage": "^2.0.2", + "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.1", + "istanbul-reports": "^2.2.6", + "jest-haste-map": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "node-notifier": "^5.4.2", + "slash": "^2.0.0", + "source-map": "^0.6.0", + "string-length": "^2.0.0" + } + }, + "@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.1.15", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/istanbul-lib-coverage": "^2.0.0" + } + }, + "@jest/test-sequencer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz", + "integrity": "sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==", + "dev": true, + "requires": { + "@jest/test-result": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0" + } + }, + "@jest/transform": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz", + "integrity": "sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^24.9.0", + "babel-plugin-istanbul": "^5.1.0", + "chalk": "^2.0.1", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.1.15", + "jest-haste-map": "^24.9.0", + "jest-regex-util": "^24.9.0", + "jest-util": "^24.9.0", + "micromatch": "^3.1.10", + "pirates": "^4.0.1", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "2.4.1" + } + }, + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^13.0.0" + } + }, + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "@types/babel__core": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz", + "integrity": "sha512-8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.0.tgz", + "integrity": "sha512-c1mZUu4up5cp9KROs/QAw0gTeHrw/x7m52LcnvMxxOZ03DmLwPV0MlGmlgzV3cnSdjhJOZsj7E7FHeioai+egw==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", + "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.8.tgz", + "integrity": "sha512-yGeB2dHEdvxjP0y4UbRtQaSkXJ9649fYCmIdRoul5kfAoGCwxuCbMhag0k3RPfnuh9kPGm8x89btcfDEXdVWGw==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/caseless": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.2.tgz", + "integrity": "sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w==", + "dev": true + }, + "@types/got": { + "version": "9.6.9", + "resolved": "https://registry.npmjs.org/@types/got/-/got-9.6.9.tgz", + "integrity": "sha512-w+ZE+Ovp6fM+1sHwJB7RN3f3pTJHZkyABuULqbtknqezQyWadFEp5BzOXaZzRqAw2md6/d3ybxQJt+BNgpvzOg==", + "requires": { + "@types/node": "*", + "@types/tough-cookie": "*", + "form-data": "^2.5.0" + }, + "dependencies": { + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + } + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz", + "integrity": "sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", + "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*", + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "24.0.23", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-24.0.23.tgz", + "integrity": "sha512-L7MBvwfNpe7yVPTXLn32df/EK+AMBFAFvZrRuArGs7npEWnlziUXK+5GMIUTI4NIuwok3XibsjXCs5HxviYXjg==", + "dev": true, + "requires": { + "jest-diff": "^24.3.0" + } + }, + "@types/node": { + "version": "12.12.14", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.14.tgz", + "integrity": "sha512-u/SJDyXwuihpwjXy7hOOghagLEV1KdAST6syfnOk6QZAMzZuWZqXy5aYYZbh8Jdpd4escVFP0MvftHNDb9pruA==" + }, + "@types/request": { + "version": "2.48.3", + "resolved": "https://registry.npmjs.org/@types/request/-/request-2.48.3.tgz", + "integrity": "sha512-3Wo2jNYwqgXcIz/rrq18AdOZUQB8cQ34CXZo+LUwPJNpvRAL86+Kc2wwI8mqpz9Cr1V+enIox5v+WZhy/p3h8w==", + "dev": true, + "requires": { + "@types/caseless": "*", + "@types/node": "*", + "@types/tough-cookie": "*", + "form-data": "^2.5.0" + }, + "dependencies": { + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + } + } + }, + "@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", + "dev": true + }, + "@types/tough-cookie": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.6.tgz", + "integrity": "sha512-wHNBMnkoEBiRAd3s8KTKwIuO9biFtTf0LehITzBhSco+HQI0xkXZbLOD55SW3Aqw3oUkHstkm5SPv58yaAdFPQ==" + }, + "@types/yargs": { + "version": "13.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.3.tgz", + "integrity": "sha512-K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==", + "dev": true + }, + "abab": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", + "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", + "dev": true + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-globals": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", + "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "dev": true, + "requires": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", + "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", + "dev": true + } + } + }, + "acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true + }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.2.0.tgz", + "integrity": "sha512-Q7hnYGGNYbcmGrCPulXfkEw7oW7qjWeM4ZTALmgpuIcZLxyqqKYWxCZg2UBm8bklrnB4m2mGyJPWfoktdORD8A==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.0.tgz", + "integrity": "sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==" + }, + "babel-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.9.0.tgz", + "integrity": "sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==", + "dev": true, + "requires": { + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/babel__core": "^7.1.0", + "babel-plugin-istanbul": "^5.1.0", + "babel-preset-jest": "^24.9.0", + "chalk": "^2.4.2", + "slash": "^2.0.0" + } + }, + "babel-plugin-istanbul": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz", + "integrity": "sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "find-up": "^3.0.0", + "istanbul-lib-instrument": "^3.3.0", + "test-exclude": "^5.2.3" + } + }, + "babel-plugin-jest-hoist": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz", + "integrity": "sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==", + "dev": true, + "requires": { + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz", + "integrity": "sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==", + "dev": true, + "requires": { + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "babel-plugin-jest-hoist": "^24.9.0" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==" + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "requires": { + "fast-json-stable-stringify": "2.x" + } + }, + "bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "dependencies": { + "get-stream": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", + "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" + } + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dev": true, + "requires": { + "rsvp": "^4.8.4" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "optional": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "dev": true, + "requires": { + "cssom": "0.3.x" + } + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.2.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "deep-equal": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-0.2.2.tgz", + "integrity": "sha1-hLdFiW80xoTpjyzg5Cq69Du6AX0=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "defer-to-connect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.1.tgz", + "integrity": "sha512-J7thop4u3mRTkYRQ+Vpfwy2G5Ehoy82I14+14W4YMDLKdWloI9gSzRbV30s/NckQGVJtPkWNcW4oMAUigTdqiQ==" + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, + "diff-sequences": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.9.0.tgz", + "integrity": "sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==", + "dev": true + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.16.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.16.3.tgz", + "integrity": "sha512-WtY7Fx5LiOnSYgF5eg/1T+GONaGmpvpPdCpSnYij+U2gDTL0UPfWrhDw7b2IYb+9NQJsYpCA0wOQvZfsd6YwRw==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "string.prototype.trimleft": "^2.1.0", + "string.prototype.trimright": "^2.1.0" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + } + }, + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "exec-sh": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expect": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz", + "integrity": "sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "ansi-styles": "^3.2.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.9.0" + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fb-watchman": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", + "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "dev": true, + "requires": { + "bser": "2.1.1" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + } + }, + "graceful-fs": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", + "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "dev": true + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "handlebars": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.3.tgz", + "integrity": "sha512-3yPecJoJHK/4c6aZhSvxOyG4vJKDshV36VHp0iVCDVh7o9w2vwi3NSnL2MMPj3YdduqaBcu7cGbggJQM0br9xA==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hosted-git-info": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", + "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", + "dev": true + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.1" + } + }, + "http-cache-semantics": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.0.3.tgz", + "integrity": "sha512-TcIMG3qeVLgDr1TEd2XvHaTnMPwYQUQMIBLy+5pLSDKYFc7UIqj39w8EGzZkaxoLv/l2K8HaI0t5AVA+YYgUew==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "i": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/i/-/i-0.3.6.tgz", + "integrity": "sha1-2WyScyB28HJxG2sQ/X1PZa2O4j0=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "dev": true, + "requires": { + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", + "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", + "dev": true, + "requires": { + "handlebars": "^4.1.2" + } + }, + "jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-24.9.0.tgz", + "integrity": "sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==", + "dev": true, + "requires": { + "import-local": "^2.0.0", + "jest-cli": "^24.9.0" + }, + "dependencies": { + "jest-cli": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.9.0.tgz", + "integrity": "sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==", + "dev": true, + "requires": { + "@jest/core": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "import-local": "^2.0.0", + "is-ci": "^2.0.0", + "jest-config": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "prompts": "^2.0.1", + "realpath-native": "^1.1.0", + "yargs": "^13.3.0" + } + } + } + }, + "jest-changed-files": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz", + "integrity": "sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "execa": "^1.0.0", + "throat": "^4.0.0" + } + }, + "jest-config": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.9.0.tgz", + "integrity": "sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^24.9.0", + "@jest/types": "^24.9.0", + "babel-jest": "^24.9.0", + "chalk": "^2.0.1", + "glob": "^7.1.1", + "jest-environment-jsdom": "^24.9.0", + "jest-environment-node": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "micromatch": "^3.1.10", + "pretty-format": "^24.9.0", + "realpath-native": "^1.1.0" + } + }, + "jest-diff": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.9.0.tgz", + "integrity": "sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "diff-sequences": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-docblock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.9.0.tgz", + "integrity": "sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA==", + "dev": true, + "requires": { + "detect-newline": "^2.1.0" + } + }, + "jest-each": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.9.0.tgz", + "integrity": "sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-environment-jsdom": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz", + "integrity": "sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0", + "jsdom": "^11.5.1" + } + }, + "jest-environment-node": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.9.0.tgz", + "integrity": "sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0" + } + }, + "jest-get-type": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==", + "dev": true + }, + "jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "anymatch": "^2.0.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.2.7", + "graceful-fs": "^4.1.15", + "invariant": "^2.2.4", + "jest-serializer": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.9.0", + "micromatch": "^3.1.10", + "sane": "^4.0.3", + "walker": "^1.0.7" + } + }, + "jest-jasmine2": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz", + "integrity": "sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==", + "dev": true, + "requires": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "co": "^4.6.0", + "expect": "^24.9.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0", + "throat": "^4.0.0" + } + }, + "jest-leak-detector": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz", + "integrity": "sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==", + "dev": true, + "requires": { + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-matcher-utils": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz", + "integrity": "sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^2.0.1", + "micromatch": "^3.1.10", + "slash": "^2.0.0", + "stack-utils": "^1.0.1" + } + }, + "jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0" + } + }, + "jest-pnp-resolver": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", + "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", + "dev": true + }, + "jest-regex-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz", + "integrity": "sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==", + "dev": true + }, + "jest-resolve": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.9.0.tgz", + "integrity": "sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "browser-resolve": "^1.11.3", + "chalk": "^2.0.1", + "jest-pnp-resolver": "^1.2.1", + "realpath-native": "^1.1.0" + } + }, + "jest-resolve-dependencies": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz", + "integrity": "sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-snapshot": "^24.9.0" + } + }, + "jest-runner": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.9.0.tgz", + "integrity": "sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.4.2", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-docblock": "^24.3.0", + "jest-haste-map": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-leak-detector": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "source-map-support": "^0.5.6", + "throat": "^4.0.0" + } + }, + "jest-runtime": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.9.0.tgz", + "integrity": "sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/source-map": "^24.3.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "strip-bom": "^3.0.0", + "yargs": "^13.3.0" + } + }, + "jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==", + "dev": true + }, + "jest-snapshot": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz", + "integrity": "sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "expect": "^24.9.0", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^24.9.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/source-map": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "callsites": "^3.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.15", + "is-ci": "^2.0.0", + "mkdirp": "^0.5.1", + "slash": "^2.0.0", + "source-map": "^0.6.0" + } + }, + "jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "camelcase": "^5.3.1", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "leven": "^3.1.0", + "pretty-format": "^24.9.0" + } + }, + "jest-watcher": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.9.0.tgz", + "integrity": "sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==", + "dev": true, + "requires": { + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "jest-util": "^24.9.0", + "string-length": "^2.0.0" + } + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dev": true, + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "jose": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/jose/-/jose-1.16.2.tgz", + "integrity": "sha512-fybhbghQ9Zhi7qd0nCXXLULCLcwFcAEOO66Mw/jgIQF+EH+r1mnb98ed2in3wj5JQbQVcU0z4xIBVdHIN+3/uQ==", + "requires": { + "asn1.js": "^5.2.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "json5": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", + "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" + }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==" + }, + "makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dev": true, + "requires": { + "tmpl": "1.0.x" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime-db": { + "version": "1.42.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.42.0.tgz", + "integrity": "sha512-UbfJCR4UAVRNgMpfImz05smAXK7+c+ZntjaA26ANtkXLlOe947Aag5zdIcKQULAiF9Cq4WxBi9jUs5zkA84bYQ==" + }, + "mime-types": { + "version": "2.1.25", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.25.tgz", + "integrity": "sha512-5KhStqB5xpTAeGqKBAMgwaYMnQik7teQN4IAzC7npDv6kzeU6prfkR67bc87J1kWMPGkoaZSq1npmexMgkmEVg==", + "requires": { + "mime-db": "1.42.0" + } + }, + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "ncp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-1.0.1.tgz", + "integrity": "sha1-0VNn5cuHQyuhF9K/gP30Wuz7QkY=", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node-notifier": { + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz", + "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==", + "dev": true, + "requires": { + "growly": "^1.3.0", + "is-wsl": "^1.1.0", + "semver": "^5.5.0", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "normalize-url": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==" + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "nwsapi": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-hash": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.1.tgz", + "integrity": "sha512-HgcGMooY4JC2PBt9sdUdJ6PMzpin+YtY3r/7wg0uTifP+HJWW8rammseSEHuyt0UeShI183UGssCJqm1bJR7QA==" + }, + "object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "oidc-token-hash": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/oidc-token-hash/-/oidc-token-hash-5.0.0.tgz", + "integrity": "sha512-8Yr4CZSv+Tn8ZkN3iN2i2w2G92mUKClp4z7EGUfdsERiYSbj7P4i/NHm72ft+aUdsiFx9UdIPSTwbyzQ6C4URg==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "open": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", + "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "openid-client": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/openid-client/-/openid-client-3.9.0.tgz", + "integrity": "sha512-MBvXMrZ6U8XGncTW37il4UaBUq5fkOF3ySnJPb0wZw7fZHk0gywWvlp3Tzd9t3TKeejh+80QWeLl9FDhIJSk9Q==", + "requires": { + "@types/got": "^9.6.9", + "base64url": "^3.0.1", + "got": "^9.6.0", + "jose": "^1.16.2", + "lodash": "^4.17.15", + "lru-cache": "^5.1.1", + "make-error": "^1.3.5", + "object-hash": "^2.0.1", + "oidc-token-hash": "^5.0.0", + "p-any": "^2.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "minimist": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", + "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "p-any": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-any/-/p-any-2.1.0.tgz", + "integrity": "sha512-JAERcaMBLYKMq+voYw36+x5Dgh47+/o7yuv2oQYuSSUml4YeqJEFznBrY2UeEkoSHqBua6hz518n/PsowTYLLg==", + "requires": { + "p-cancelable": "^2.0.0", + "p-some": "^4.0.0", + "type-fest": "^0.3.0" + }, + "dependencies": { + "p-cancelable": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz", + "integrity": "sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==" + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" + } + } + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "p-each-series": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", + "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", + "dev": true, + "requires": { + "p-reduce": "^1.0.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-reduce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", + "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", + "dev": true + }, + "p-some": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-some/-/p-some-4.1.0.tgz", + "integrity": "sha512-MF/HIbq6GeBqTrTIl5OJubzkGU+qfFhAFi0gnTAK6rgEIJIknEiABHOTtQu4e6JiXjIwuMPMUFQzyHh5QjCl1g==", + "requires": { + "aggregate-error": "^3.0.0", + "p-cancelable": "^2.0.0" + }, + "dependencies": { + "p-cancelable": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.0.0.tgz", + "integrity": "sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==" + } + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pkginfo": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz", + "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=", + "dev": true + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + }, + "pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "ansi-regex": "^4.0.0", + "ansi-styles": "^3.2.0", + "react-is": "^16.8.4" + } + }, + "prompt": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prompt/-/prompt-1.0.0.tgz", + "integrity": "sha1-jlcSPDlquYiJf7Mn/Trtw+c15P4=", + "dev": true, + "requires": { + "colors": "^1.1.2", + "pkginfo": "0.x.x", + "read": "1.0.x", + "revalidator": "0.1.x", + "utile": "0.3.x", + "winston": "2.1.x" + } + }, + "prompts": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.0.tgz", + "integrity": "sha512-NfbbPPg/74fT7wk2XYQ7hAIp9zJyZp5Fu19iRbORqqy1BhtrkZ0fPafBU+7bmn8ie69DpT0R6QpJIN2oisYjJg==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.3" + } + }, + "psl": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.6.0.tgz", + "integrity": "sha512-SYKKmVel98NCOYXpkwUqZqh0ahZeeKfmisiLIcEZdsb+WbLv02g/dI5BUmZnIyOe7RzZtLax81nnb2HbvC2tzA==" + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "react-is": { + "version": "16.12.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.12.0.tgz", + "integrity": "sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==", + "dev": true + }, + "read": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", + "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", + "dev": true, + "requires": { + "mute-stream": "~0.0.4" + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + }, + "realpath-native": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", + "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", + "dev": true, + "requires": { + "util.promisify": "^1.0.0" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + } + } + }, + "request-promise-core": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", + "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "request-promise-native": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz", + "integrity": "sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==", + "dev": true, + "requires": { + "request-promise-core": "1.1.3", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "resolve": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.13.1.tgz", + "integrity": "sha512-CxqObCX8K8YtAhOBRg+lrcdn+LK+WYOS8tSjqSFbjtrI5PnS63QPhZl4+yKfrU9tdsbMu9Anr/amegT87M9Z6w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "requires": { + "lowercase-keys": "^1.0.0" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "revalidator": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/revalidator/-/revalidator-0.1.8.tgz", + "integrity": "sha1-/s5hv6DBtSoga9axgZgYS91SOjs=", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dev": true, + "requires": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "sisteransi": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.4.tgz", + "integrity": "sha512-/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig==", + "dev": true + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", + "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "string-length": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", + "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", + "dev": true, + "requires": { + "astral-regex": "^1.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "string.prototype.trimleft": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", + "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string.prototype.trimright": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", + "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "dev": true, + "requires": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + } + }, + "throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", + "dev": true + }, + "tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "ts-jest": { + "version": "24.2.0", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-24.2.0.tgz", + "integrity": "sha512-Yc+HLyldlIC9iIK8xEN7tV960Or56N49MDP7hubCZUeI7EbIOTsas6rXCMB4kQjLACJ7eDOF4xWEO5qumpKsag==", + "dev": true, + "requires": { + "bs-logger": "0.x", + "buffer-from": "1.x", + "fast-json-stable-stringify": "2.x", + "json5": "2.x", + "lodash.memoize": "4.x", + "make-error": "1.x", + "mkdirp": "0.x", + "resolve": "1.x", + "semver": "^5.5", + "yargs-parser": "10.x" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "typescript": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.3.tgz", + "integrity": "sha512-Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw==", + "dev": true + }, + "uglify-js": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.1.tgz", + "integrity": "sha512-pnOF7jY82wdIhATVn87uUY/FHU+MDUdPLkmGFvGoclQmeu229eTkbG5gjGGBi3R7UuYYSEeYXY/TTY5j2aym2g==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.3", + "source-map": "~0.6.1" + } + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "requires": { + "prepend-http": "^2.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utile": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/utile/-/utile-0.3.0.tgz", + "integrity": "sha1-E1LDQOuCDk2N26A5pPv6oy7U7zo=", + "dev": true, + "requires": { + "async": "~0.9.0", + "deep-equal": "~0.2.1", + "i": "0.3.x", + "mkdirp": "0.x.x", + "ncp": "1.0.x", + "rimraf": "2.x.x" + } + }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2" + } + }, + "walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dev": true, + "requires": { + "makeerror": "1.0.x" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "winston": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.1.1.tgz", + "integrity": "sha1-PJNJ0ZYgf9G9/51LxD73JRDjoS4=", + "dev": true, + "requires": { + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" + }, + "dependencies": { + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=", + "dev": true + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", + "dev": true + }, + "pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=", + "dev": true + } + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "write-file-atomic": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", + "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } +} diff --git a/package.json b/package.json index 2bde8b1b6..937feda18 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xero-node", - "version": "4.0.3", + "version": "4.0.4", "description": "Xero NodeJS OAuth 2.0 client for xero-node", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -15,10 +15,10 @@ "test": "jest" }, "devDependencies": { - "@types/jest": "^25.0.0", + "@types/jest": "^24.0.23", "@types/node": "^12.12.5", "@types/request": "^2.48.3", - "jest": "^25.0.0", + "jest": "^24.9.0", "open": "^6.4.0", "prompt": "^1.0.0", "ts-jest": "^24.1.0",