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,256 @@
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, BarCodeItemDiscount, CurrencyRef, NameFilter, NameRangeFilter, SalesAndPurchase, SalesAndPurchaseMod, SalesOrPurchase, SalesOrPurchaseMod } from "./types";
5
+
6
+ /** QuickBooks item service operations: `qube.itemService.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class ItemService {
8
+ constructor(client: Client);
9
+ /**
10
+ * Create item service: `POST /connections/{connection_id}/item-services`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `bar_code`, `class_ref`, `external_guid`, `include_ret_element`, `is_active`, `is_tax_included`, `name` (required), `parent_ref`, `request_id`, `sales_and_purchase`, `sales_or_purchase`, `sales_tax_code_ref`, `unit_of_measure_set_ref`.
16
+ *
17
+ * Give exactly one of: `sales_or_purchase`, or `sales_and_purchase`.
18
+ *
19
+ * Resolves to the queued request.
20
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/create-item-service
21
+ */
22
+ create(connectionId: string, params: ItemServiceCreateParams, options: OperationOptions): Promise<QueuedRequest>;
23
+ /**
24
+ * List item services: `GET /connections/{connection_id}/item-services`, queued for QuickBooks.
25
+ *
26
+ * QuickBooks answers in pages: each page comes to `webhookUrl` as its own webhook.
27
+ * Params go in the query string.
28
+ *
29
+ * Fields: `active_status`, `class_filter`, `from_modified_date`, `full_name`, `include_ret_element`, `iterator`, `list_id`, `max_returned`, `meta_data`, `name_filter`, `name_range_filter`, `owner_id`, `request_id`, `to_modified_date`.
30
+ *
31
+ * Resolves to the queued request.
32
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/list-item-services
33
+ */
34
+ query(connectionId: string, params: ItemServiceQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
35
+ /**
36
+ * Update item service: `PUT /connections/{connection_id}/item-services`, queued for QuickBooks.
37
+ *
38
+ * The answer comes to `webhookUrl` as one webhook.
39
+ * Params go in the JSON body.
40
+ *
41
+ * Fields: `bar_code`, `class_ref`, `edit_sequence` (required), `force_uom_change`, `include_ret_element`, `is_active`, `is_tax_included`, `list_id` (required), `name`, `parent_ref`, `request_id`, `sales_and_purchase_mod`, `sales_or_purchase_mod`, `sales_tax_code_ref`, `unit_of_measure_set_ref`.
42
+ *
43
+ * Resolves to the queued request.
44
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/update-item-service
45
+ */
46
+ update(connectionId: string, params: ItemServiceUpdateParams, options: OperationOptions): Promise<QueuedRequest>;
47
+ }
48
+
49
+ /**
50
+ * The params of `item_service.create`: Create item service.
51
+ *
52
+ * Give exactly one of: `sales_or_purchase`, or `sales_and_purchase`.
53
+ */
54
+ export interface ItemServiceCreateParams {
55
+ /**
56
+ * Barcode reference information.
57
+ */
58
+ bar_code?: BarCodeItemDiscount;
59
+ /**
60
+ * 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.
61
+ */
62
+ class_ref?: CurrencyRef;
63
+ /**
64
+ * Allows for the attachment of a user defined GUID value.
65
+ */
66
+ external_guid?: string;
67
+ include_ret_element?: Array<"BarCodeValue" | "ClassRef" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "FullName" | "IsActive" | "IsTaxIncluded" | "ListID" | "Name" | "OwnerID" | "ParentRef" | "SalesAndPurchase" | "SalesOrPurchase" | "SalesTaxCodeRef" | "Sublevel" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber" | "UnitOfMeasureSetRef">;
68
+ /**
69
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
70
+ */
71
+ is_active?: boolean;
72
+ /**
73
+ * For future use with international versions of QuickBooks.
74
+ */
75
+ is_tax_included?: boolean;
76
+ /**
77
+ * Name is the case-insensitive short name of a list object (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the same Name in different branches because `full_name` remains distinct.
78
+ */
79
+ name: string;
80
+ /**
81
+ * 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.
82
+ */
83
+ parent_ref?: CurrencyRef;
84
+ /**
85
+ * 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`.
86
+ */
87
+ request_id?: string;
88
+ /**
89
+ * A `sales_and_purchase` aggregate is used for items that are meant to be both purchased and sold, such as an “other charge” item that is reimbursable.
90
+ */
91
+ sales_and_purchase?: SalesAndPurchase;
92
+ /**
93
+ * A `sales_or_purchase` aggregate is used for items that are meant to be either purchased or sold, but not both. For example, a `sales_or_purchase` aggregate would be used for a non-inventory item that is purchased but not sold, or for a service item that is sold but not purchased.
94
+ */
95
+ sales_or_purchase?: SalesOrPurchase;
96
+ /**
97
+ * `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.
98
+ */
99
+ sales_tax_code_ref?: CurrencyRef;
100
+ /**
101
+ * The unit of measure set consists of a base unit and 0-n related units.
102
+ */
103
+ unit_of_measure_set_ref?: CurrencyRef;
104
+ }
105
+
106
+ /**
107
+ * The params of `item_service.query`: List item services.
108
+ */
109
+ export interface ItemServiceQueryParams {
110
+ /**
111
+ * 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.
112
+ *
113
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
114
+ */
115
+ active_status?: "ActiveOnly" | "All" | "InactiveOnly";
116
+ /**
117
+ * Filters according to the object’s class.
118
+ *
119
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
120
+ */
121
+ class_filter?: AccountFilter;
122
+ /**
123
+ * 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.
124
+ *
125
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
126
+ *
127
+ * Format: date-time.
128
+ */
129
+ from_modified_date?: string;
130
+ /**
131
+ * `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.
132
+ *
133
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
134
+ */
135
+ full_name?: string[];
136
+ include_ret_element?: Array<"BarCodeValue" | "ClassRef" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "FullName" | "IsActive" | "IsTaxIncluded" | "ListID" | "Name" | "ParentRef" | "SalesAndPurchase" | "SalesOrPurchase" | "SalesTaxCodeRef" | "Sublevel" | "TimeCreated" | "TimeModified" | "UnitOfMeasureSetRef">;
137
+ /**
138
+ * 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; 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 `full_name` or `list_id` every match comes back in one answer, so leave `iterator` out.
139
+ */
140
+ iterator?: boolean;
141
+ /**
142
+ * `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`.
143
+ *
144
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
145
+ */
146
+ list_id?: string[];
147
+ /**
148
+ * 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.
149
+ *
150
+ * 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.
151
+ *
152
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
153
+ *
154
+ * Minimum 1.
155
+ */
156
+ max_returned?: number;
157
+ /**
158
+ * 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.
159
+ */
160
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
161
+ /**
162
+ * Filters according to the object’s Name.
163
+ *
164
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
165
+ */
166
+ name_filter?: NameFilter;
167
+ /**
168
+ * Filters according to the object’s Name.
169
+ *
170
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
171
+ */
172
+ name_range_filter?: NameRangeFilter;
173
+ /**
174
+ * `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.
175
+ */
176
+ owner_id?: string[];
177
+ /**
178
+ * 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`.
179
+ */
180
+ request_id?: string;
181
+ /**
182
+ * 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).
183
+ *
184
+ * Choose at most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`, `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.
185
+ *
186
+ * Format: date-time.
187
+ */
188
+ to_modified_date?: string;
189
+ }
190
+
191
+ /**
192
+ * The params of `item_service.update`: Update item service.
193
+ */
194
+ export interface ItemServiceUpdateParams {
195
+ /**
196
+ * Barcode reference information.
197
+ */
198
+ bar_code?: BarCodeItemDiscount;
199
+ /**
200
+ * 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.
201
+ */
202
+ class_ref?: CurrencyRef;
203
+ /**
204
+ * `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.
205
+ */
206
+ edit_sequence: string;
207
+ /**
208
+ * By Default `force_uom_change` is false. However, in item Mod requests, you need to set the `force_uom_change` field to True if you are changing the UOM set and the base unit of the new set doesn’t match the base unit of the UOM set currently assigned to the item. This does the same thing as the user accepting the warning prompt in the UI.
209
+ */
210
+ force_uom_change?: boolean;
211
+ include_ret_element?: Array<"BarCodeValue" | "ClassRef" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "FullName" | "IsActive" | "IsTaxIncluded" | "ListID" | "Name" | "OwnerID" | "ParentRef" | "SalesAndPurchase" | "SalesOrPurchase" | "SalesTaxCodeRef" | "Sublevel" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber" | "UnitOfMeasureSetRef">;
212
+ /**
213
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
214
+ */
215
+ is_active?: boolean;
216
+ /**
217
+ * For future use with international versions of QuickBooks.
218
+ */
219
+ is_tax_included?: boolean;
220
+ /**
221
+ * `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`.
222
+ */
223
+ list_id: string;
224
+ /**
225
+ * Name is the case-insensitive short name of a list object (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the same Name in different branches because `full_name` remains distinct.
226
+ */
227
+ name?: string;
228
+ /**
229
+ * 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.
230
+ */
231
+ parent_ref?: CurrencyRef;
232
+ /**
233
+ * 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`.
234
+ */
235
+ request_id?: string;
236
+ /**
237
+ * A `sales_and_purchase` aggregate is used for items that are meant to be both purchased and sold, such as an “other charge” item that is reimbursable.
238
+ *
239
+ * Choose at most one of: `sales_or_purchase_mod`, or `sales_and_purchase_mod`.
240
+ */
241
+ sales_and_purchase_mod?: SalesAndPurchaseMod;
242
+ /**
243
+ * A `sales_or_purchase` aggregate is used for items that are meant to be either purchased or sold, but not both. For example, a `sales_or_purchase` aggregate would be used for a non-inventory item that is purchased but not sold, or for a service item that is sold but not purchased.
244
+ *
245
+ * Choose at most one of: `sales_or_purchase_mod`, or `sales_and_purchase_mod`.
246
+ */
247
+ sales_or_purchase_mod?: SalesOrPurchaseMod;
248
+ /**
249
+ * `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.
250
+ */
251
+ sales_tax_code_ref?: CurrencyRef;
252
+ /**
253
+ * The unit of measure set consists of a base unit and 0-n related units.
254
+ */
255
+ unit_of_measure_set_ref?: CurrencyRef;
256
+ }
@@ -0,0 +1,50 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks item service operations. Types: item_service.d.ts. */
5
+ class ItemService {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Create item service.
15
+ * @param {string} connectionId
16
+ * @param {import("./item_service").ItemServiceCreateParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/create-item-service
20
+ */
21
+ create(connectionId, params, options) {
22
+ return this.#client.queue("item_service.create", connectionId, params, options);
23
+ }
24
+
25
+ /**
26
+ * List item services (answers in pages, one webhook each).
27
+ * @param {string} connectionId
28
+ * @param {import("./item_service").ItemServiceQueryParams} params
29
+ * @param {import("./types").OperationOptions} options
30
+ * @returns {Promise<import("./types").QueuedRequest>}
31
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/list-item-services
32
+ */
33
+ query(connectionId, params, options) {
34
+ return this.#client.queue("item_service.query", connectionId, params, options);
35
+ }
36
+
37
+ /**
38
+ * Update item service.
39
+ * @param {string} connectionId
40
+ * @param {import("./item_service").ItemServiceUpdateParams} params
41
+ * @param {import("./types").OperationOptions} options
42
+ * @returns {Promise<import("./types").QueuedRequest>}
43
+ * @see https://docs.qubesync.com/api-reference/v2/item-services/update-item-service
44
+ */
45
+ update(connectionId, params, options) {
46
+ return this.#client.queue("item_service.update", connectionId, params, options);
47
+ }
48
+ }
49
+
50
+ module.exports = { ItemService };
@@ -0,0 +1,81 @@
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, CurrencyFilter } from "./types";
5
+
6
+ /** QuickBooks item sites operations: `qube.itemSites.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class ItemSites {
8
+ constructor(client: Client);
9
+ /**
10
+ * List item sites: `GET /connections/{connection_id}/item-sites`, queued for QuickBooks.
11
+ *
12
+ * QuickBooks answers in pages: each page comes to `webhookUrl` as its own webhook.
13
+ * Params go in the query string.
14
+ *
15
+ * Fields: `active_status`, `include_ret_element`, `item_site_filter`, `item_type_filter`, `iterator`, `list_id`, `max_returned`, `meta_data`, `request_id`.
16
+ *
17
+ * Resolves to the queued request.
18
+ * @see https://docs.qubesync.com/api-reference/v2/item-sites/list-item-sites
19
+ */
20
+ query(connectionId: string, params: ItemSitesQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
21
+ }
22
+
23
+ /**
24
+ * The params of `item_sites.query`: List item sites.
25
+ */
26
+ export interface ItemSitesQueryParams {
27
+ /**
28
+ * 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.
29
+ */
30
+ active_status?: "ActiveOnly" | "All" | "InactiveOnly";
31
+ include_ret_element?: Array<"AssemblyBuildPoint" | "EditSequence" | "InventorySiteLocationRef" | "InventorySiteRef" | "ItemInventoryAssemblyRef" | "ItemInventoryRef" | "ListID" | "QuantityOnHand" | "QuantityOnPendingTransfers" | "QuantityOnPurchaseOrders" | "QuantityOnSalesOrders" | "QuantityRequiredByPendingBuildTxns" | "QuantityToBeBuiltByPendingBuildTxns" | "ReorderLevel" | "TimeCreated" | "TimeModified">;
32
+ /**
33
+ * Allows you to report on Item Sites.
34
+ *
35
+ * Choose at most one of: `list_id`, or the set (`item_site_filter`, `item_type_filter`). Members of a set combine with each other, not with the other choices.
36
+ */
37
+ item_site_filter?: ItemSiteFilter;
38
+ /**
39
+ * Allows you to report on a specific item type.
40
+ *
41
+ * Choose at most one of: `list_id`, or the set (`item_site_filter`, `item_type_filter`). Members of a set combine with each other, not with the other choices.
42
+ */
43
+ item_type_filter?: "AllExceptFixedAsset" | "Assembly" | "Discount" | "FixedAsset" | "Inventory" | "InventoryAndAssembly" | "NonInventory" | "OtherCharge" | "Payment" | "Sales" | "SalesTax" | "Service";
44
+ /**
45
+ * 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; 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).
46
+ */
47
+ iterator?: boolean;
48
+ /**
49
+ * `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`.
50
+ *
51
+ * Choose at most one of: `list_id`, or the set (`item_site_filter`, `item_type_filter`). Members of a set combine with each other, not with the other choices.
52
+ */
53
+ list_id?: string[];
54
+ /**
55
+ * 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.
56
+ *
57
+ * 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.
58
+ *
59
+ * Minimum 1.
60
+ */
61
+ max_returned?: number;
62
+ /**
63
+ * 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.
64
+ */
65
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
66
+ /**
67
+ * 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`.
68
+ */
69
+ request_id?: string;
70
+ }
71
+
72
+ export interface ItemSiteFilter {
73
+ /**
74
+ * Filters according to the item name or ID. You can use an ItemQuery request to get information about all the items that are set up in the QuickBooks file. “Items” are line items used for fast entry on sales and purchase forms. They include services and goods that a business buys and sells, as well as special items that perform calculations–for example, subtotal, discount, and sales-tax items.
75
+ */
76
+ item_filter?: AccountFilter;
77
+ /**
78
+ * Allows you to report on Sites.
79
+ */
80
+ site_filter?: CurrencyFilter;
81
+ }
@@ -0,0 +1,26 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks item sites operations. Types: item_sites.d.ts. */
5
+ class ItemSites {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * List item sites (answers in pages, one webhook each).
15
+ * @param {string} connectionId
16
+ * @param {import("./item_sites").ItemSitesQueryParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/item-sites/list-item-sites
20
+ */
21
+ query(connectionId, params, options) {
22
+ return this.#client.queue("item_sites.query", connectionId, params, options);
23
+ }
24
+ }
25
+
26
+ module.exports = { ItemSites };
@@ -0,0 +1,188 @@
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, BarCodeItemDiscount, NameFilter, NameRangeFilter } from "./types";
5
+
6
+ /** QuickBooks item subtotal operations: `qube.itemSubtotal.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class ItemSubtotal {
8
+ constructor(client: Client);
9
+ /**
10
+ * Create item subtotal: `POST /connections/{connection_id}/item-subtotals`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `bar_code`, `external_guid`, `include_ret_element`, `is_active`, `item_desc`, `name` (required), `request_id`.
16
+ *
17
+ * Resolves to the queued request.
18
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/create-item-subtotal
19
+ */
20
+ create(connectionId: string, params: ItemSubtotalCreateParams, options: OperationOptions): Promise<QueuedRequest>;
21
+ /**
22
+ * List item subtotals: `GET /connections/{connection_id}/item-subtotals`, 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: `active_status`, `from_modified_date`, `full_name`, `include_ret_element`, `iterator`, `list_id`, `max_returned`, `meta_data`, `name_filter`, `name_range_filter`, `owner_id`, `request_id`, `to_modified_date`.
28
+ *
29
+ * Resolves to the queued request.
30
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/list-item-subtotals
31
+ */
32
+ query(connectionId: string, params: ItemSubtotalQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
33
+ /**
34
+ * Update item subtotal: `PUT /connections/{connection_id}/item-subtotals`, queued for QuickBooks.
35
+ *
36
+ * The answer comes to `webhookUrl` as one webhook.
37
+ * Params go in the JSON body.
38
+ *
39
+ * Fields: `bar_code`, `edit_sequence` (required), `include_ret_element`, `is_active`, `item_desc`, `list_id` (required), `name`, `request_id`.
40
+ *
41
+ * Resolves to the queued request.
42
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/update-item-subtotal
43
+ */
44
+ update(connectionId: string, params: ItemSubtotalUpdateParams, options: OperationOptions): Promise<QueuedRequest>;
45
+ }
46
+
47
+ /**
48
+ * The params of `item_subtotal.create`: Create item subtotal.
49
+ */
50
+ export interface ItemSubtotalCreateParams {
51
+ /**
52
+ * Barcode reference information.
53
+ */
54
+ bar_code?: BarCodeItemDiscount;
55
+ /**
56
+ * Allows for the attachment of a user defined GUID value.
57
+ */
58
+ external_guid?: string;
59
+ include_ret_element?: Array<"BarCodeValue" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "IsActive" | "ItemDesc" | "ListID" | "Name" | "OwnerID" | "SpecialItemType" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber">;
60
+ /**
61
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
62
+ */
63
+ is_active?: boolean;
64
+ /**
65
+ * The description that will appear on a sales form when the item is used.
66
+ */
67
+ item_desc?: string;
68
+ /**
69
+ * Name is the case-insensitive short name of a list object (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the same Name in different branches because FullName remains distinct.
70
+ */
71
+ name: string;
72
+ /**
73
+ * 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`.
74
+ */
75
+ request_id?: string;
76
+ }
77
+
78
+ /**
79
+ * The params of `item_subtotal.query`: List item subtotals.
80
+ */
81
+ export interface ItemSubtotalQueryParams {
82
+ /**
83
+ * 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.
84
+ *
85
+ * 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.
86
+ */
87
+ active_status?: "ActiveOnly" | "All" | "InactiveOnly";
88
+ /**
89
+ * 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.
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
+ * Format: date-time.
94
+ */
95
+ from_modified_date?: string;
96
+ /**
97
+ * 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.
98
+ */
99
+ full_name?: string[];
100
+ include_ret_element?: Array<"BarCodeValue" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "IsActive" | "ItemDesc" | "ListID" | "Name" | "SpecialItemType" | "TimeCreated" | "TimeModified">;
101
+ /**
102
+ * 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; 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 `full_name` or `list_id` every match comes back in one answer, so leave `iterator` out.
103
+ */
104
+ iterator?: boolean;
105
+ /**
106
+ * `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`.
107
+ *
108
+ * 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.
109
+ */
110
+ list_id?: string[];
111
+ /**
112
+ * 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.
113
+ *
114
+ * 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.
115
+ *
116
+ * 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.
117
+ *
118
+ * Minimum 1.
119
+ */
120
+ max_returned?: number;
121
+ /**
122
+ * 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.
123
+ */
124
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
125
+ /**
126
+ * Filters according to the object’s Name.
127
+ *
128
+ * 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.
129
+ */
130
+ name_filter?: NameFilter;
131
+ /**
132
+ * Filters according to the object’s Name.
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
+ name_range_filter?: NameRangeFilter;
137
+ /**
138
+ * `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.
139
+ */
140
+ owner_id?: string[];
141
+ /**
142
+ * 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`.
143
+ */
144
+ request_id?: string;
145
+ /**
146
+ * 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).
147
+ *
148
+ * 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.
149
+ *
150
+ * Format: date-time.
151
+ */
152
+ to_modified_date?: string;
153
+ }
154
+
155
+ /**
156
+ * The params of `item_subtotal.update`: Update item subtotal.
157
+ */
158
+ export interface ItemSubtotalUpdateParams {
159
+ /**
160
+ * Barcode reference information.
161
+ */
162
+ bar_code?: BarCodeItemDiscount;
163
+ /**
164
+ * `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.
165
+ */
166
+ edit_sequence: string;
167
+ include_ret_element?: Array<"BarCodeValue" | "DataExtRet" | "EditSequence" | "ExternalGUID" | "IsActive" | "ItemDesc" | "ListID" | "Name" | "OwnerID" | "SpecialItemType" | "TimeCreated" | "TimeModified" | "TxnID" | "TxnNumber">;
168
+ /**
169
+ * If `is_active` is true, this object is currently enabled for use by QuickBooks. The default value is true.
170
+ */
171
+ is_active?: boolean;
172
+ /**
173
+ * The description that will appear on a sales form when the item is used.
174
+ */
175
+ item_desc?: string;
176
+ /**
177
+ * `list_id` and FullName 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 FullName and `list_id` are supplied in a request, QuickBooks uses `list_id` and ignores FullName.
178
+ */
179
+ list_id: string;
180
+ /**
181
+ * Name is the case-insensitive short name of a list object (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the same Name in different branches because FullName remains distinct.
182
+ */
183
+ name?: string;
184
+ /**
185
+ * 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`.
186
+ */
187
+ request_id?: string;
188
+ }
@@ -0,0 +1,50 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks item subtotal operations. Types: item_subtotal.d.ts. */
5
+ class ItemSubtotal {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Create item subtotal.
15
+ * @param {string} connectionId
16
+ * @param {import("./item_subtotal").ItemSubtotalCreateParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/create-item-subtotal
20
+ */
21
+ create(connectionId, params, options) {
22
+ return this.#client.queue("item_subtotal.create", connectionId, params, options);
23
+ }
24
+
25
+ /**
26
+ * List item subtotals (answers in pages, one webhook each).
27
+ * @param {string} connectionId
28
+ * @param {import("./item_subtotal").ItemSubtotalQueryParams} params
29
+ * @param {import("./types").OperationOptions} options
30
+ * @returns {Promise<import("./types").QueuedRequest>}
31
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/list-item-subtotals
32
+ */
33
+ query(connectionId, params, options) {
34
+ return this.#client.queue("item_subtotal.query", connectionId, params, options);
35
+ }
36
+
37
+ /**
38
+ * Update item subtotal.
39
+ * @param {string} connectionId
40
+ * @param {import("./item_subtotal").ItemSubtotalUpdateParams} params
41
+ * @param {import("./types").OperationOptions} options
42
+ * @returns {Promise<import("./types").QueuedRequest>}
43
+ * @see https://docs.qubesync.com/api-reference/v2/item-subtotals/update-item-subtotal
44
+ */
45
+ update(connectionId, params, options) {
46
+ return this.#client.queue("item_subtotal.update", connectionId, params, options);
47
+ }
48
+ }
49
+
50
+ module.exports = { ItemSubtotal };