qubesync 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/CHANGELOG.md +38 -2
  2. package/README.md +188 -5
  3. package/client.js +660 -0
  4. package/index.d.ts +211 -1
  5. package/index.js +5 -1
  6. package/index.mjs +2 -0
  7. package/operations/account.d.ts +263 -0
  8. package/operations/account.js +50 -0
  9. package/operations/account_tax_line_info.d.ts +31 -0
  10. package/operations/account_tax_line_info.js +26 -0
  11. package/operations/aging_report.d.ts +100 -0
  12. package/operations/aging_report.js +26 -0
  13. package/operations/alert.d.ts +118 -0
  14. package/operations/alert.js +50 -0
  15. package/operations/ar_refund_credit_card.d.ts +201 -0
  16. package/operations/ar_refund_credit_card.js +38 -0
  17. package/operations/bar_code.d.ts +40 -0
  18. package/operations/bar_code.js +26 -0
  19. package/operations/bill.d.ts +612 -0
  20. package/operations/bill.js +50 -0
  21. package/operations/bill_payment_check.d.ts +276 -0
  22. package/operations/bill_payment_check.js +50 -0
  23. package/operations/bill_payment_credit_card.d.ts +178 -0
  24. package/operations/bill_payment_credit_card.js +38 -0
  25. package/operations/bill_to_pay.d.ts +54 -0
  26. package/operations/bill_to_pay.js +26 -0
  27. package/operations/billing_rate.d.ts +159 -0
  28. package/operations/billing_rate.js +38 -0
  29. package/operations/budget_summary_report.d.ts +71 -0
  30. package/operations/budget_summary_report.js +26 -0
  31. package/operations/build_assembly.d.ts +264 -0
  32. package/operations/build_assembly.js +50 -0
  33. package/operations/charge.d.ts +330 -0
  34. package/operations/charge.js +50 -0
  35. package/operations/check.d.ts +394 -0
  36. package/operations/check.js +50 -0
  37. package/operations/class.d.ts +170 -0
  38. package/operations/class.js +50 -0
  39. package/operations/cleared_status.d.ts +43 -0
  40. package/operations/cleared_status.js +26 -0
  41. package/operations/client.d.ts +254 -0
  42. package/operations/company.d.ts +36 -0
  43. package/operations/company.js +26 -0
  44. package/operations/company_activity.d.ts +32 -0
  45. package/operations/company_activity.js +26 -0
  46. package/operations/credit_card_charge.d.ts +280 -0
  47. package/operations/credit_card_charge.js +50 -0
  48. package/operations/credit_card_credit.d.ts +280 -0
  49. package/operations/credit_card_credit.js +50 -0
  50. package/operations/credit_memo.d.ts +642 -0
  51. package/operations/credit_memo.js +50 -0
  52. package/operations/currency.d.ts +195 -0
  53. package/operations/currency.js +50 -0
  54. package/operations/custom_detail_report.d.ts +108 -0
  55. package/operations/custom_detail_report.js +26 -0
  56. package/operations/custom_summary_report.d.ts +119 -0
  57. package/operations/custom_summary_report.js +26 -0
  58. package/operations/customer.d.ts +639 -0
  59. package/operations/customer.js +50 -0
  60. package/operations/customer_msg.d.ts +121 -0
  61. package/operations/customer_msg.js +38 -0
  62. package/operations/customer_type.d.ts +127 -0
  63. package/operations/customer_type.js +38 -0
  64. package/operations/data_event_recovery_info.d.ts +61 -0
  65. package/operations/data_event_recovery_info.js +38 -0
  66. package/operations/data_ext.d.ts +197 -0
  67. package/operations/data_ext.js +50 -0
  68. package/operations/data_ext_def.d.ts +173 -0
  69. package/operations/data_ext_def.js +62 -0
  70. package/operations/date_driven_terms.d.ts +141 -0
  71. package/operations/date_driven_terms.js +38 -0
  72. package/operations/deposit.d.ts +402 -0
  73. package/operations/deposit.js +50 -0
  74. package/operations/employee.d.ts +683 -0
  75. package/operations/employee.js +50 -0
  76. package/operations/employee_default.d.ts +133 -0
  77. package/operations/employee_default.js +38 -0
  78. package/operations/entity.d.ts +96 -0
  79. package/operations/entity.js +26 -0
  80. package/operations/estimate.d.ts +590 -0
  81. package/operations/estimate.js +50 -0
  82. package/operations/form1099_category_account_mapping.d.ts +89 -0
  83. package/operations/form1099_category_account_mapping.js +38 -0
  84. package/operations/general_detail_report.d.ts +108 -0
  85. package/operations/general_detail_report.js +26 -0
  86. package/operations/general_summary_report.d.ts +115 -0
  87. package/operations/general_summary_report.js +26 -0
  88. package/operations/host.d.ts +43 -0
  89. package/operations/host.js +26 -0
  90. package/operations/index.js +397 -0
  91. package/operations/inventory_adjustment.d.ts +389 -0
  92. package/operations/inventory_adjustment.js +50 -0
  93. package/operations/inventory_site.d.ts +247 -0
  94. package/operations/inventory_site.js +50 -0
  95. package/operations/invoice.d.ts +682 -0
  96. package/operations/invoice.js +50 -0
  97. package/operations/item.d.ts +100 -0
  98. package/operations/item.js +26 -0
  99. package/operations/item_assemblies_can_build.d.ts +41 -0
  100. package/operations/item_assemblies_can_build.js +26 -0
  101. package/operations/item_discount.d.ts +256 -0
  102. package/operations/item_discount.js +50 -0
  103. package/operations/item_fixed_asset.d.ts +382 -0
  104. package/operations/item_fixed_asset.js +50 -0
  105. package/operations/item_group.d.ts +236 -0
  106. package/operations/item_group.js +50 -0
  107. package/operations/item_inventory.d.ts +350 -0
  108. package/operations/item_inventory.js +50 -0
  109. package/operations/item_inventory_assembly.d.ts +368 -0
  110. package/operations/item_inventory_assembly.js +50 -0
  111. package/operations/item_non_inventory.d.ts +264 -0
  112. package/operations/item_non_inventory.js +50 -0
  113. package/operations/item_other_charge.d.ts +244 -0
  114. package/operations/item_other_charge.js +50 -0
  115. package/operations/item_payment.d.ts +220 -0
  116. package/operations/item_payment.js +50 -0
  117. package/operations/item_receipt.d.ts +362 -0
  118. package/operations/item_receipt.js +50 -0
  119. package/operations/item_sales_tax.d.ts +228 -0
  120. package/operations/item_sales_tax.js +50 -0
  121. package/operations/item_sales_tax_group.d.ts +192 -0
  122. package/operations/item_sales_tax_group.js +50 -0
  123. package/operations/item_service.d.ts +256 -0
  124. package/operations/item_service.js +50 -0
  125. package/operations/item_sites.d.ts +81 -0
  126. package/operations/item_sites.js +26 -0
  127. package/operations/item_subtotal.d.ts +188 -0
  128. package/operations/item_subtotal.js +50 -0
  129. package/operations/job_report.d.ts +99 -0
  130. package/operations/job_report.js +26 -0
  131. package/operations/job_type.d.ts +127 -0
  132. package/operations/job_type.js +38 -0
  133. package/operations/journal_entry.d.ts +339 -0
  134. package/operations/journal_entry.js +50 -0
  135. package/operations/lead.d.ts +291 -0
  136. package/operations/lead.js +50 -0
  137. package/operations/list.d.ts +39 -0
  138. package/operations/list.js +26 -0
  139. package/operations/list_deleted.d.ts +44 -0
  140. package/operations/list_deleted.js +26 -0
  141. package/operations/list_display.d.ts +65 -0
  142. package/operations/list_display.js +38 -0
  143. package/operations/list_merge.d.ts +58 -0
  144. package/operations/list_merge.js +26 -0
  145. package/operations/other_name.d.ts +280 -0
  146. package/operations/other_name.js +50 -0
  147. package/operations/paycheck.d.ts +82 -0
  148. package/operations/paycheck.js +26 -0
  149. package/operations/payment_method.d.ts +131 -0
  150. package/operations/payment_method.js +38 -0
  151. package/operations/payroll_detail_report.d.ts +97 -0
  152. package/operations/payroll_detail_report.js +26 -0
  153. package/operations/payroll_item.d.ts +83 -0
  154. package/operations/payroll_item.js +26 -0
  155. package/operations/payroll_item_addition.d.ts +95 -0
  156. package/operations/payroll_item_addition.js +38 -0
  157. package/operations/payroll_item_company_contribution.d.ts +105 -0
  158. package/operations/payroll_item_company_contribution.js +38 -0
  159. package/operations/payroll_item_deduction.d.ts +101 -0
  160. package/operations/payroll_item_deduction.js +38 -0
  161. package/operations/payroll_item_direct_deposit.d.ts +65 -0
  162. package/operations/payroll_item_direct_deposit.js +38 -0
  163. package/operations/payroll_item_non_wage.d.ts +92 -0
  164. package/operations/payroll_item_non_wage.js +26 -0
  165. package/operations/payroll_item_tax.d.ts +108 -0
  166. package/operations/payroll_item_tax.js +38 -0
  167. package/operations/payroll_item_wage.d.ts +169 -0
  168. package/operations/payroll_item_wage.js +50 -0
  169. package/operations/payroll_item_workers_compensation.d.ts +77 -0
  170. package/operations/payroll_item_workers_compensation.js +38 -0
  171. package/operations/payroll_last_period.d.ts +31 -0
  172. package/operations/payroll_last_period.js +26 -0
  173. package/operations/payroll_liability_adjustment.d.ts +137 -0
  174. package/operations/payroll_liability_adjustment.js +38 -0
  175. package/operations/payroll_liability_check.d.ts +82 -0
  176. package/operations/payroll_liability_check.js +26 -0
  177. package/operations/payroll_prior_payment.d.ts +126 -0
  178. package/operations/payroll_prior_payment.js +38 -0
  179. package/operations/payroll_summary_report.d.ts +107 -0
  180. package/operations/payroll_summary_report.js +26 -0
  181. package/operations/payroll_year_to_date_adjustment.d.ts +156 -0
  182. package/operations/payroll_year_to_date_adjustment.js +38 -0
  183. package/operations/preferences.d.ts +64 -0
  184. package/operations/preferences.js +38 -0
  185. package/operations/price_level.d.ts +234 -0
  186. package/operations/price_level.js +50 -0
  187. package/operations/purchase_order.d.ts +620 -0
  188. package/operations/purchase_order.js +50 -0
  189. package/operations/qb_command_exec.d.ts +49 -0
  190. package/operations/qb_command_exec.js +26 -0
  191. package/operations/receive_payment.d.ts +450 -0
  192. package/operations/receive_payment.js +50 -0
  193. package/operations/receive_payment_to_deposit.d.ts +36 -0
  194. package/operations/receive_payment_to_deposit.js +26 -0
  195. package/operations/sales_order.d.ts +612 -0
  196. package/operations/sales_order.js +50 -0
  197. package/operations/sales_receipt.d.ts +650 -0
  198. package/operations/sales_receipt.js +50 -0
  199. package/operations/sales_rep.d.ts +170 -0
  200. package/operations/sales_rep.js +50 -0
  201. package/operations/sales_tax_code.d.ts +194 -0
  202. package/operations/sales_tax_code.js +50 -0
  203. package/operations/sales_tax_payable.d.ts +42 -0
  204. package/operations/sales_tax_payable.js +26 -0
  205. package/operations/sales_tax_payment_check.d.ts +254 -0
  206. package/operations/sales_tax_payment_check.js +50 -0
  207. package/operations/sales_tax_return.d.ts +35 -0
  208. package/operations/sales_tax_return.js +26 -0
  209. package/operations/sales_tax_return_line.d.ts +36 -0
  210. package/operations/sales_tax_return_line.js +26 -0
  211. package/operations/ship_method.d.ts +121 -0
  212. package/operations/ship_method.js +38 -0
  213. package/operations/special_account.d.ts +40 -0
  214. package/operations/special_account.js +26 -0
  215. package/operations/special_item.d.ts +44 -0
  216. package/operations/special_item.js +26 -0
  217. package/operations/standard_terms.d.ts +133 -0
  218. package/operations/standard_terms.js +38 -0
  219. package/operations/template.d.ts +36 -0
  220. package/operations/template.js +26 -0
  221. package/operations/terms.d.ts +90 -0
  222. package/operations/terms.js +26 -0
  223. package/operations/time_report.d.ts +84 -0
  224. package/operations/time_report.js +26 -0
  225. package/operations/time_tracking.d.ts +214 -0
  226. package/operations/time_tracking.js +50 -0
  227. package/operations/to_do.d.ts +254 -0
  228. package/operations/to_do.js +50 -0
  229. package/operations/transaction.d.ts +244 -0
  230. package/operations/transaction.js +26 -0
  231. package/operations/transfer.d.ts +178 -0
  232. package/operations/transfer.js +50 -0
  233. package/operations/transfer_inventory.d.ts +290 -0
  234. package/operations/transfer_inventory.js +50 -0
  235. package/operations/txn.d.ts +39 -0
  236. package/operations/txn.js +26 -0
  237. package/operations/txn_deleted.d.ts +44 -0
  238. package/operations/txn_deleted.js +26 -0
  239. package/operations/txn_display.d.ts +69 -0
  240. package/operations/txn_display.js +38 -0
  241. package/operations/txn_void.d.ts +39 -0
  242. package/operations/txn_void.js +26 -0
  243. package/operations/types.d.ts +1259 -0
  244. package/operations/unit_of_measure_set.d.ts +168 -0
  245. package/operations/unit_of_measure_set.js +38 -0
  246. package/operations/vehicle.d.ts +168 -0
  247. package/operations/vehicle.js +50 -0
  248. package/operations/vehicle_mileage.d.ts +147 -0
  249. package/operations/vehicle_mileage.js +38 -0
  250. package/operations/vendor.d.ts +541 -0
  251. package/operations/vendor.js +50 -0
  252. package/operations/vendor_credit.d.ts +365 -0
  253. package/operations/vendor_credit.js +50 -0
  254. package/operations/vendor_type.d.ts +127 -0
  255. package/operations/vendor_type.js +38 -0
  256. package/operations/workers_comp_code.d.ts +199 -0
  257. package/operations/workers_comp_code.js +50 -0
  258. package/package.json +14 -4
@@ -0,0 +1,394 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+
3
+ import type { Client } from "../index";
4
+ import type { OperationOptions, QueuedRequest, AccountFilter, Address, CurrencyFilter, CurrencyRef, DataExtBill, ItemGroupLineAdd, ItemGroupLineMod, ItemLineAdd, ItemLineMod, ModifiedDateRangeFilter, RefNumberFilter, RefNumberRangeFilter, TxnDateRangeFilter } from "./types";
5
+
6
+ /** QuickBooks check operations: `qube.check.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class Check {
8
+ constructor(client: Client);
9
+ /**
10
+ * Create check: `POST /connections/{connection_id}/checks`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `account_ref` (required), `address`, `apply_check_to_txn_add`, `def_macro`, `exchange_rate`, `expense_line_add`, `external_guid`, `include_ret_element`, `is_tax_included`, `is_to_be_printed`, `item_group_line_add`, `item_line_add`, `memo`, `payee_entity_ref`, `ref_number`, `request_id`, `sales_tax_code_ref`, `txn_date`.
16
+ *
17
+ * Resolves to the queued request.
18
+ * @see https://docs.qubesync.com/api-reference/v2/checks/create-check
19
+ */
20
+ create(connectionId: string, params: CheckCreateParams, options: OperationOptions): Promise<QueuedRequest>;
21
+ /**
22
+ * List checks: `GET /connections/{connection_id}/checks`, queued for QuickBooks.
23
+ *
24
+ * QuickBooks answers in pages: each page comes to `webhookUrl` as its own webhook.
25
+ * Params go in the query string.
26
+ *
27
+ * Fields: `account_filter`, `currency_filter`, `entity_filter`, `include_line_items`, `include_linked_txns`, `include_ret_element`, `iterator`, `max_returned`, `meta_data`, `modified_date_range_filter`, `owner_id`, `ref_number`, `ref_number_case_sensitive`, `ref_number_filter`, `ref_number_range_filter`, `request_id`, `txn_date_range_filter`, `txn_id`.
28
+ *
29
+ * Resolves to the queued request.
30
+ * @see https://docs.qubesync.com/api-reference/v2/checks/list-checks
31
+ */
32
+ query(connectionId: string, params: CheckQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
33
+ /**
34
+ * Update check: `PUT /connections/{connection_id}/checks`, queued for QuickBooks.
35
+ *
36
+ * The answer comes to `webhookUrl` as one webhook.
37
+ * Params go in the JSON body.
38
+ *
39
+ * Fields: `account_ref`, `address`, `apply_check_to_txn_mod`, `clear_expense_lines`, `clear_item_lines`, `edit_sequence` (required), `exchange_rate`, `expense_line_mod`, `include_ret_element`, `is_tax_included`, `is_to_be_printed`, `item_group_line_mod`, `item_line_mod`, `memo`, `payee_entity_ref`, `ref_number`, `request_id`, `sales_tax_code_ref`, `txn_date`, `txn_id` (required).
40
+ *
41
+ * Resolves to the queued request.
42
+ * @see https://docs.qubesync.com/api-reference/v2/checks/update-check
43
+ */
44
+ update(connectionId: string, params: CheckUpdateParams, options: OperationOptions): Promise<QueuedRequest>;
45
+ }
46
+
47
+ /**
48
+ * The params of `check.create`: Create check.
49
+ */
50
+ export interface CheckCreateParams {
51
+ /**
52
+ * `account_ref` points to an account in the company file. If both `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on context: for checks it is the funding account; for `expense_line_add` it may be required by accounting preferences; for credit-card transactions it identifies the bank or card account involved.
53
+ */
54
+ account_ref: CurrencyRef;
55
+ /**
56
+ * If an address request fails, some combination of address fields might be too long. In a Check, BillPaymentCheck, or SalesTaxPaymentCheck message, Address is the address that will print on the check.
57
+ */
58
+ address?: Address;
59
+ apply_check_to_txn_add?: ApplyCheckToTxnAdd[];
60
+ /**
61
+ * `def_macro` lets you assign a reusable name to a returned `txn_id` or `txn_line_id` so later requests can reference it with `useMacro`. This feature requires SDK 2.0+.
62
+ */
63
+ def_macro?: string;
64
+ /**
65
+ * `exchange_rate` is the rate from this currency to the company’s home currency at AsOfDate. You can supply a rate when adding transactions, but QuickBooks does not provide rates through the SDK. If your home currency is USD and internet access is available, rates can be downloaded in the QuickBooks UI via Lists > Currency > Activities > Download Latest Exchange Rates.
66
+ */
67
+ exchange_rate?: number;
68
+ expense_line_add?: ExpenseLineAddCheck[];
69
+ /**
70
+ * Allows for the attachment of a user defined GUID value.
71
+ */
72
+ external_guid?: string;
73
+ include_ret_element?: Array<"AccountRef" | "Address" | "AddressBlock" | "Amount" | "AmountInHomeCurrency" | "CurrencyRef" | "DataExtRet" | "EditSequence" | "ExchangeRate" | "ExpenseLineRet" | "ExternalGUID" | "IsPending" | "IsTaxIncluded" | "IsToBePrinted" | "ItemGroupLineRet" | "ItemLineRet" | "LinkedTxn" | "ListID" | "Memo" | "OwnerID" | "PayeeEntityRef" | "RefNumber" | "SalesTaxCodeRef" | "TimeCreated" | "TimeModified" | "TxnDate" | "TxnID" | "TxnNumber">;
74
+ /**
75
+ * For future use with international versions of QuickBooks.
76
+ */
77
+ is_tax_included?: boolean;
78
+ /**
79
+ * If `is_to_be_printed` is true, QuickBooks queues the form for later printing. It does not print immediately; printing is still a user action in QuickBooks.
80
+ */
81
+ is_to_be_printed?: boolean;
82
+ /**
83
+ * Refers to items that are grouped together in QuickBooks for fast entry.
84
+ *
85
+ * `item_line_add` and `item_group_line_add` combine: any number of each. QuickBooks receives them in that order: every `item_line_add`, then every `item_group_line_add`.
86
+ */
87
+ item_group_line_add?: ItemGroupLineAdd[];
88
+ /**
89
+ * An ItemLine is used to track any portion of a transaction that represents the purchase of an “item.” If `item_line_add` doesn’t specify an Amount, Cost, or Quantity, then QuickBooks will calculate Amount based on a Quantity of 1 and the suggested Cost.
90
+ *
91
+ * `item_line_add` and `item_group_line_add` combine: any number of each. QuickBooks receives them in that order: every `item_line_add`, then every `item_group_line_add`.
92
+ */
93
+ item_line_add?: ItemLineAdd[];
94
+ /**
95
+ * The memo that is printed on the check itself.
96
+ */
97
+ memo?: string;
98
+ /**
99
+ * `payee_entity_ref` identifies the payee (customer, vendor, employee, or Other Name). If both `full_name` and `list_id` are provided, `full_name` is ignored.
100
+ */
101
+ payee_entity_ref?: CurrencyRef;
102
+ /**
103
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
104
+ */
105
+ ref_number?: string;
106
+ /**
107
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
108
+ */
109
+ request_id?: string;
110
+ /**
111
+ * `sales_tax_code_ref` points to the sales-tax code used for an item or customer context. QuickBooks includes default TAX and NON codes, and a code can be deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the default non-taxable code. If both `full_name` and `list_id` are provided in `sales_tax_code_ref`, `full_name` is ignored.
112
+ */
113
+ sales_tax_code_ref?: CurrencyRef;
114
+ /**
115
+ * The date written on the check. In some cases, if you leave `txn_date` out of an -Add message, QuickBooks will prefill `txn_date` with the date of the last-saved transaction of the same type.
116
+ *
117
+ * Format: date.
118
+ */
119
+ txn_date?: string;
120
+ }
121
+
122
+ /**
123
+ * The params of `check.query`: List checks.
124
+ */
125
+ export interface CheckQueryParams {
126
+ /**
127
+ * Filters according to the account name or `list_id`. If the “Use account numbers” preference is enabled in the QuickBooks company file, you can specify an account number (instead of an account name) for `full_name` and get the account you’re looking for. But if numbers have been used as account names, confusion could arise.
128
+ *
129
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
130
+ */
131
+ account_filter?: AccountFilter;
132
+ /**
133
+ * Filters by the specified currency.
134
+ *
135
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
136
+ */
137
+ currency_filter?: CurrencyFilter;
138
+ /**
139
+ * An entity refers to a person on the QuickBooks Customer list, Vendor list, Employee list, or Other Names list. You can use an EntityQuery request to get information about all the entities that are set up in the QuickBooks file. In an ARRefundCreditCard query, this must be a customer/customer job.
140
+ *
141
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
142
+ */
143
+ entity_filter?: AccountFilter;
144
+ /**
145
+ * This filter allows you to omit line items from a query response to get a smaller result. The default value is false, so line items are omitted by default. Set `include_line_items` to true to include line items in the response if you don’t mind getting a larger result.
146
+ */
147
+ include_line_items?: boolean;
148
+ /**
149
+ * If you set `include_linked_txns` to true, then the returned object will include a list of all the transactions linked to the queried object. (This list is similar to the History view of a transaction in the user interface, but not identical, as the SDK list contains only linked transactions, not items.) Each linked transaction will be represented by a `linked_txn` aggregate.
150
+ */
151
+ include_linked_txns?: boolean;
152
+ include_ret_element?: Array<"AccountRef" | "Address" | "AddressBlock" | "Amount" | "AmountInHomeCurrency" | "CurrencyRef" | "DataExtRet" | "EditSequence" | "ExchangeRate" | "ExpenseLineRet" | "ExternalGUID" | "IsPending" | "IsTaxIncluded" | "IsToBePrinted" | "ItemGroupLineRet" | "ItemLineRet" | "LinkedTxn" | "Memo" | "PayeeEntityRef" | "RefNumber" | "SalesTaxCodeRef" | "TimeCreated" | "TimeModified" | "TxnDate" | "TxnID" | "TxnNumber">;
153
+ /**
154
+ * Page through every match: QuBe Sync asks QuickBooks for each page in turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by default, with pages of 100 records (25 with `include_line_items` or `include_linked_txns`); send `iterator=true` with `max_returned` for another size. Off when you send `iterator=false` (every match in one answer) or `max_returned` alone (at most that many, in one answer). It pages a filtered query only: with `ref_number`, `ref_number_case_sensitive` or `txn_id` every match comes back in one answer, so leave `iterator` out.
155
+ */
156
+ iterator?: boolean;
157
+ /**
158
+ * Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `meta_data` query attribute.) If you include a `max_returned` value, it must be at least 1.
159
+ *
160
+ * The page size, with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap instead: at most this many records come back, in one answer, and QuickBooks doesn't say whether more matched.
161
+ *
162
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
163
+ *
164
+ * Minimum 1.
165
+ */
166
+ max_returned?: number;
167
+ /**
168
+ * Use the `meta_data` attribute to control whether query responses include counts. Options are NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus objects). Counts are approximate and may vary slightly if records are created or deleted during processing.
169
+ */
170
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
171
+ /**
172
+ * Filters according to the dates when transactions were last modified. The `modified_date_range_filter` aggregate isn’t required to contain any elements, but if it is empty, we recommend that you leave it out altogether. Note that the time portion of the `from_modified_date` and `to_modified_date` fields wasn’t supported in qbXML version 1.0 or 1.1.
173
+ *
174
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
175
+ */
176
+ modified_date_range_filter?: ModifiedDateRangeFilter;
177
+ /**
178
+ * `owner_id` identifies who owns the data extension. Use 0 for QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned by an app. Keep private GUIDs confidential unless you intentionally share extensions across apps. If you do share them, both apps must use the same `owner_id` and `data_ext_name`, because that pair uniquely identifies the extension.
179
+ */
180
+ owner_id?: string[];
181
+ /**
182
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
183
+ *
184
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
185
+ */
186
+ ref_number?: string[];
187
+ /**
188
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
189
+ */
190
+ ref_number_case_sensitive?: string[];
191
+ /**
192
+ * Filters by `ref_number` range. Numeric-only bounds are compared numerically; otherwise comparison is lexicographic.
193
+ *
194
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
195
+ */
196
+ ref_number_filter?: RefNumberFilter;
197
+ /**
198
+ * Filters by `ref_number` range. Numeric-only bounds are compared numerically; otherwise comparison is lexicographic.
199
+ *
200
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
201
+ */
202
+ ref_number_range_filter?: RefNumberRangeFilter;
203
+ /**
204
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
205
+ */
206
+ request_id?: string;
207
+ /**
208
+ * Filters according to the original transaction dates.
209
+ *
210
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
211
+ */
212
+ txn_date_range_filter?: TxnDateRangeFilter;
213
+ /**
214
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
215
+ *
216
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
217
+ */
218
+ txn_id?: string[];
219
+ }
220
+
221
+ /**
222
+ * The params of `check.update`: Update check.
223
+ */
224
+ export interface CheckUpdateParams {
225
+ /**
226
+ * `account_ref` points to an account in the company file. If both `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on context: for checks it is the funding account; for ExpenseLineAdd it may be required by accounting preferences; for credit-card transactions it identifies the bank or card account involved.
227
+ */
228
+ account_ref?: CurrencyRef;
229
+ /**
230
+ * If an address request fails, some combination of address fields might be too long. In a Check, BillPaymentCheck, or SalesTaxPaymentCheck message, Address is the address that will print on the check.
231
+ */
232
+ address?: Address;
233
+ apply_check_to_txn_mod?: ApplyCheckToTxnAdd[];
234
+ /**
235
+ * Set `clear_expense_lines` to true to clear all the expense lines. To modify individual lines, use `expense_line_mod`.
236
+ */
237
+ clear_expense_lines?: boolean;
238
+ /**
239
+ * Set `clear_item_lines` to true to clear all the item lines. To modify individual lines, use `item_line_mod`.
240
+ */
241
+ clear_item_lines?: boolean;
242
+ /**
243
+ * `edit_sequence` is a server-generated revision token. It changes each time the object is updated. To modify an existing object, you must send the current `edit_sequence`. If your value is stale, the update is rejected to prevent overwriting newer changes.
244
+ */
245
+ edit_sequence: string;
246
+ /**
247
+ * `exchange_rate` is the rate from this currency to the company’s home currency at AsOfDate. You can supply a rate when adding transactions, but QuickBooks does not provide rates through the SDK. If your home currency is USD and internet access is available, rates can be downloaded in the QuickBooks UI via Lists > Currency > Activities > Download Latest Exchange Rates.
248
+ */
249
+ exchange_rate?: number;
250
+ expense_line_mod?: ExpenseLineModCheck[];
251
+ include_ret_element?: Array<"AccountRef" | "Address" | "AddressBlock" | "Amount" | "AmountInHomeCurrency" | "CurrencyRef" | "DataExtRet" | "EditSequence" | "ExchangeRate" | "ExpenseLineRet" | "ExternalGUID" | "IsPending" | "IsTaxIncluded" | "IsToBePrinted" | "ItemGroupLineRet" | "ItemLineRet" | "LinkedTxn" | "ListID" | "Memo" | "OwnerID" | "PayeeEntityRef" | "RefNumber" | "SalesTaxCodeRef" | "TimeCreated" | "TimeModified" | "TxnDate" | "TxnID" | "TxnNumber">;
252
+ /**
253
+ * For future use with international versions of QuickBooks.
254
+ */
255
+ is_tax_included?: boolean;
256
+ /**
257
+ * If `is_to_be_printed` is true, QuickBooks queues the form for later printing. It does not print immediately; printing is still a user action in QuickBooks.
258
+ */
259
+ is_to_be_printed?: boolean;
260
+ /**
261
+ * Refers to items that are grouped together in QuickBooks for fast entry.
262
+ *
263
+ * `item_line_mod` and `item_group_line_mod` combine: any number of each. QuickBooks receives them in that order: every `item_line_mod`, then every `item_group_line_mod`.
264
+ */
265
+ item_group_line_mod?: ItemGroupLineMod[];
266
+ /**
267
+ * An ItemLine is used to track any portion of a transaction that represents the purchase of an “item.” If ItemLineAdd doesn’t specify an Amount, Cost, or Quantity, then QuickBooks will calculate Amount based on a Quantity of 1 and the suggested Cost.
268
+ *
269
+ * `item_line_mod` and `item_group_line_mod` combine: any number of each. QuickBooks receives them in that order: every `item_line_mod`, then every `item_group_line_mod`.
270
+ */
271
+ item_line_mod?: ItemLineMod[];
272
+ /**
273
+ * The memo that is printed on the check itself.
274
+ */
275
+ memo?: string;
276
+ /**
277
+ * `payee_entity_ref` identifies the payee (customer, vendor, employee, or Other Name). If both `full_name` and `list_id` are provided, `full_name` is ignored.
278
+ */
279
+ payee_entity_ref?: CurrencyRef;
280
+ /**
281
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
282
+ */
283
+ ref_number?: string;
284
+ /**
285
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
286
+ */
287
+ request_id?: string;
288
+ /**
289
+ * `sales_tax_code_ref` points to the sales-tax code used for an item or customer context. QuickBooks includes default TAX and NON codes, and a code can be deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the default non-taxable code. If both `full_name` and `list_id` are provided in `sales_tax_code_ref`, `full_name` is ignored.
290
+ */
291
+ sales_tax_code_ref?: CurrencyRef;
292
+ /**
293
+ * The date written on the check. In some cases, if you leave `txn_date` out of an -Add message, QuickBooks will prefill `txn_date` with the date of the last-saved transaction of the same type.
294
+ *
295
+ * Format: date.
296
+ */
297
+ txn_date?: string;
298
+ /**
299
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
300
+ */
301
+ txn_id: string;
302
+ }
303
+
304
+ export interface ApplyCheckToTxnAdd {
305
+ /**
306
+ * A monetary amount.
307
+ */
308
+ amount?: number;
309
+ /**
310
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
311
+ */
312
+ txn_id: string;
313
+ }
314
+
315
+ export interface ExpenseLineAddCheck {
316
+ /**
317
+ * `account_ref` points to an account in the company file. If both `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on context: for checks it is the funding account; for `expense_line_add` it may be required by accounting preferences; for credit-card transactions it identifies the bank or card account involved.
318
+ */
319
+ account_ref?: CurrencyRef;
320
+ /**
321
+ * A monetary amount.
322
+ */
323
+ amount?: number;
324
+ /**
325
+ * The billing status of this item line or expense line.
326
+ */
327
+ billable_status?: "Billable" | "HasBeenBilled" | "NotBillable";
328
+ /**
329
+ * Use classes to categorize transactions (for example, by department, location, or work type). Class tracking is off by default in QuickBooks. A `class_ref` points to one class; if both `full_name` and `list_id` are provided, `full_name` is ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you override or clear it on individual lines.
330
+ */
331
+ class_ref?: CurrencyRef;
332
+ /**
333
+ * `customer_ref` identifies a customer or customer job. If both `full_name` and `list_id` are provided, `full_name` is ignored. In SalesReceipt and ReceivePayment, it identifies who receives credit. In TimeTracking, it identifies who the time can be billed to and is required in TimeTrackingAdd when IsBillable is true.
334
+ */
335
+ customer_ref?: CurrencyRef;
336
+ data_ext?: DataExtBill[];
337
+ /**
338
+ * `def_macro` lets you assign a reusable name to a returned `txn_id` or `txn_line_id` so later requests can reference it with `useMacro`. This feature requires SDK 2.0+.
339
+ */
340
+ def_macro?: string;
341
+ /**
342
+ * The memo that is printed on the check itself.
343
+ */
344
+ memo?: string;
345
+ /**
346
+ * A sales representative must be on the Employee, Vendor, or Other Names list within QuickBooks. Sales representative’s names and initials appear on the Rep drop-down list on QuickBooks sales forms. A `sales_rep_ref` refers to a person on the SalesRep list. In a request, if a `sales_rep_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
347
+ */
348
+ sales_rep_ref?: CurrencyRef;
349
+ /**
350
+ * `sales_tax_code_ref` points to the sales-tax code used for an item or customer context. QuickBooks includes default TAX and NON codes, and a code can be deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the default non-taxable code. If both `full_name` and `list_id` are provided in `sales_tax_code_ref`, `full_name` is ignored.
351
+ */
352
+ sales_tax_code_ref?: CurrencyRef;
353
+ tax_amount?: number;
354
+ }
355
+
356
+ export interface ExpenseLineModCheck {
357
+ /**
358
+ * `account_ref` points to an account in the company file. If both `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on context: for checks it is the funding account; for ExpenseLineAdd it may be required by accounting preferences; for credit-card transactions it identifies the bank or card account involved.
359
+ */
360
+ account_ref?: CurrencyRef;
361
+ /**
362
+ * A monetary amount.
363
+ */
364
+ amount?: number;
365
+ /**
366
+ * The billing status of this item line or expense line.
367
+ */
368
+ billable_status?: "Billable" | "HasBeenBilled" | "NotBillable";
369
+ /**
370
+ * Use classes to categorize transactions (for example, by department, location, or work type). Class tracking is off by default in QuickBooks. A `class_ref` points to one class; if both `full_name` and `list_id` are provided, `full_name` is ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you override or clear it on individual lines.
371
+ */
372
+ class_ref?: CurrencyRef;
373
+ /**
374
+ * `customer_ref` identifies a customer or customer job. If both `full_name` and `list_id` are provided, `full_name` is ignored. In SalesReceipt and ReceivePayment, it identifies who receives credit. In TimeTracking, it identifies who the time can be billed to and is required in TimeTrackingAdd when IsBillable is true.
375
+ */
376
+ customer_ref?: CurrencyRef;
377
+ /**
378
+ * The memo that is printed on the check itself.
379
+ */
380
+ memo?: string;
381
+ /**
382
+ * A sales representative must be on the Employee, Vendor, or Other Names list within QuickBooks. Sales representative’s names and initials appear on the Rep drop-down list on QuickBooks sales forms. A `sales_rep_ref` refers to a person on the SalesRep list. In a request, if a `sales_rep_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
383
+ */
384
+ sales_rep_ref?: CurrencyRef;
385
+ /**
386
+ * `sales_tax_code_ref` points to the sales-tax code used for an item or customer context. QuickBooks includes default TAX and NON codes, and a code can be deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the default non-taxable code. If both `full_name` and `list_id` are provided in `sales_tax_code_ref`, `full_name` is ignored.
387
+ */
388
+ sales_tax_code_ref?: CurrencyRef;
389
+ tax_amount?: number;
390
+ /**
391
+ * Identification number of the transaction line. (`txn_line_id` is supported as of v2.0 of the SDK. With qbXML v1.0 and v1.1, `txn_line_id` is always returned as zero.) If you need to add a new transaction line in a transaction Mod request, you can do so by setting the `txn_line_id` to -1.
392
+ */
393
+ txn_line_id: string;
394
+ }
@@ -0,0 +1,50 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks check operations. Types: check.d.ts. */
5
+ class Check {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Create check.
15
+ * @param {string} connectionId
16
+ * @param {import("./check").CheckCreateParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/checks/create-check
20
+ */
21
+ create(connectionId, params, options) {
22
+ return this.#client.queue("check.create", connectionId, params, options);
23
+ }
24
+
25
+ /**
26
+ * List checks (answers in pages, one webhook each).
27
+ * @param {string} connectionId
28
+ * @param {import("./check").CheckQueryParams} params
29
+ * @param {import("./types").OperationOptions} options
30
+ * @returns {Promise<import("./types").QueuedRequest>}
31
+ * @see https://docs.qubesync.com/api-reference/v2/checks/list-checks
32
+ */
33
+ query(connectionId, params, options) {
34
+ return this.#client.queue("check.query", connectionId, params, options);
35
+ }
36
+
37
+ /**
38
+ * Update check.
39
+ * @param {string} connectionId
40
+ * @param {import("./check").CheckUpdateParams} params
41
+ * @param {import("./types").OperationOptions} options
42
+ * @returns {Promise<import("./types").QueuedRequest>}
43
+ * @see https://docs.qubesync.com/api-reference/v2/checks/update-check
44
+ */
45
+ update(connectionId, params, options) {
46
+ return this.#client.queue("check.update", connectionId, params, options);
47
+ }
48
+ }
49
+
50
+ module.exports = { Check };
@@ -0,0 +1,170 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+
3
+ import type { Client } from "../index";
4
+ import type { OperationOptions, QueuedRequest, CurrencyRef, NameFilter, NameRangeFilter } from "./types";
5
+
6
+ /** QuickBooks class operations: `qube.class.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class Class {
8
+ constructor(client: Client);
9
+ /**
10
+ * Create class: `POST /connections/{connection_id}/classes`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `include_ret_element`, `is_active`, `name` (required), `parent_ref`, `request_id`.
16
+ *
17
+ * Resolves to the queued request.
18
+ * @see https://docs.qubesync.com/api-reference/v2/classes/create-class
19
+ */
20
+ create(connectionId: string, params: ClassCreateParams, options: OperationOptions): Promise<QueuedRequest>;
21
+ /**
22
+ * List classes: `GET /connections/{connection_id}/classes`, queued for QuickBooks.
23
+ *
24
+ * The answer comes to `webhookUrl` as one webhook.
25
+ * Params go in the query string.
26
+ *
27
+ * Fields: `active_status`, `from_modified_date`, `full_name`, `include_ret_element`, `list_id`, `max_returned`, `meta_data`, `name_filter`, `name_range_filter`, `request_id`, `to_modified_date`.
28
+ *
29
+ * Resolves to the queued request.
30
+ * @see https://docs.qubesync.com/api-reference/v2/classes/list-classes
31
+ */
32
+ query(connectionId: string, params: ClassQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
33
+ /**
34
+ * Update class: `PUT /connections/{connection_id}/classes`, queued for QuickBooks.
35
+ *
36
+ * The answer comes to `webhookUrl` as one webhook.
37
+ * Params go in the JSON body.
38
+ *
39
+ * Fields: `edit_sequence` (required), `include_ret_element`, `is_active`, `list_id` (required), `name`, `parent_ref`, `request_id`.
40
+ *
41
+ * Resolves to the queued request.
42
+ * @see https://docs.qubesync.com/api-reference/v2/classes/update-class
43
+ */
44
+ update(connectionId: string, params: ClassUpdateParams, options: OperationOptions): Promise<QueuedRequest>;
45
+ }
46
+
47
+ /**
48
+ * The params of `class.create`: Create class.
49
+ */
50
+ export interface ClassCreateParams {
51
+ include_ret_element?: Array<"EditSequence" | "ExternalGUID" | "FullName" | "IsActive" | "ListID" | "Name" | "OwnerID" | "ParentRef" | "Sublevel" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber">;
52
+ /**
53
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
54
+ */
55
+ is_active?: boolean;
56
+ /**
57
+ * The case-insensitive name of the class, not including the names of its ancestors.
58
+ */
59
+ name: string;
60
+ /**
61
+ * A reference to the list object that is one level above this one. For example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request, if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
62
+ */
63
+ parent_ref?: CurrencyRef;
64
+ /**
65
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
66
+ */
67
+ request_id?: string;
68
+ }
69
+
70
+ /**
71
+ * The params of `class.query`: List classes.
72
+ */
73
+ export interface ClassQueryParams {
74
+ /**
75
+ * Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is asActiveOnly, which selects only list objects that are active.
76
+ *
77
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
78
+ */
79
+ active_status?: "ActiveOnly" | "All" | "InactiveOnly";
80
+ /**
81
+ * Filters results to objects modified on or after this timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a date is provided, time defaults to 00:00:00.
82
+ *
83
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
84
+ *
85
+ * Format: date-time.
86
+ */
87
+ from_modified_date?: string;
88
+ /**
89
+ * `full_name` (along with `list_id`) is a way to identify a list object. The `full_name` is the name prefixed by the names of each ancestor, for example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
90
+ *
91
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
92
+ */
93
+ full_name?: string[];
94
+ include_ret_element?: Array<"EditSequence" | "FullName" | "IsActive" | "ListID" | "Name" | "ParentRef" | "Sublevel" | "TimeCreated" | "TimeModified">;
95
+ /**
96
+ * `list_id` and `full_name` both identify a list object. QuickBooks assigns `list_id` when the object is created. `list_id` values are unique within a list type, not globally across all lists. If both `full_name` and `list_id` are supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
97
+ *
98
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
99
+ */
100
+ list_id?: string[];
101
+ /**
102
+ * Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `meta_data` query attribute.) If you include a `max_returned` value, it must be at least 1.
103
+ *
104
+ * QuickBooks doesn't page this query: at most this many records come back, in one answer, with no sign of whether more matched. Leave it out for every match, in one answer; one over 4 MB as the Web Connector sends it, about 3 MB of qbXML isn't kept (`error_type` `response_too_large`), so narrow a large one with its filters.
105
+ *
106
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
107
+ *
108
+ * Minimum 1.
109
+ */
110
+ max_returned?: number;
111
+ /**
112
+ * Use the `meta_data` attribute to control whether query responses include counts. Options are NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus objects). Counts are approximate and may vary slightly if records are created or deleted during processing.
113
+ */
114
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
115
+ /**
116
+ * Filters according to the object’s Name.
117
+ *
118
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
119
+ */
120
+ name_filter?: NameFilter;
121
+ /**
122
+ * Filters according to the object’s Name.
123
+ *
124
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
125
+ */
126
+ name_range_filter?: NameRangeFilter;
127
+ /**
128
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
129
+ */
130
+ request_id?: string;
131
+ /**
132
+ * Filters results to objects modified on or before this timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a date is provided, time defaults to end-of-day (23:59:59).
133
+ *
134
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not with the other choices.
135
+ *
136
+ * Format: date-time.
137
+ */
138
+ to_modified_date?: string;
139
+ }
140
+
141
+ /**
142
+ * The params of `class.update`: Update class.
143
+ */
144
+ export interface ClassUpdateParams {
145
+ /**
146
+ * `edit_sequence` is a server-generated revision token. It changes each time the object is updated. To modify an existing object, you must send the current `edit_sequence`. If your value is stale, the update is rejected to prevent overwriting newer changes.
147
+ */
148
+ edit_sequence: string;
149
+ include_ret_element?: Array<"EditSequence" | "ExternalGUID" | "FullName" | "IsActive" | "ListID" | "Name" | "OwnerID" | "ParentRef" | "Sublevel" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber">;
150
+ /**
151
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
152
+ */
153
+ is_active?: boolean;
154
+ /**
155
+ * `list_id` and `full_name` both identify a list object. QuickBooks assigns `list_id` when the object is created. `list_id` values are unique within a list type, not globally across all lists. If both `full_name` and `list_id` are supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
156
+ */
157
+ list_id: string;
158
+ /**
159
+ * The case-insensitive name of the class, not including the names of its ancestors.
160
+ */
161
+ name?: string;
162
+ /**
163
+ * A reference to the list object that is one level above this one. For example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request, if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
164
+ */
165
+ parent_ref?: CurrencyRef;
166
+ /**
167
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
168
+ */
169
+ request_id?: string;
170
+ }