@37signals/basecamp 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 (356) hide show
  1. package/README.md +600 -0
  2. package/dist/auth-strategy.d.ts +36 -0
  3. package/dist/auth-strategy.d.ts.map +1 -0
  4. package/dist/auth-strategy.js +33 -0
  5. package/dist/auth-strategy.js.map +1 -0
  6. package/dist/client.d.ts +224 -0
  7. package/dist/client.d.ts.map +1 -0
  8. package/dist/client.js +715 -0
  9. package/dist/client.js.map +1 -0
  10. package/dist/errors.d.ts +137 -0
  11. package/dist/errors.d.ts.map +1 -0
  12. package/dist/errors.js +269 -0
  13. package/dist/errors.js.map +1 -0
  14. package/dist/generated/metadata.json +2281 -0
  15. package/dist/generated/openapi-stripped.json +21268 -0
  16. package/dist/generated/path-mapping.d.ts +8 -0
  17. package/dist/generated/path-mapping.d.ts.map +1 -0
  18. package/dist/generated/path-mapping.js +192 -0
  19. package/dist/generated/path-mapping.js.map +1 -0
  20. package/dist/generated/path-mapping.ts +199 -0
  21. package/dist/generated/schema.d.ts +14883 -0
  22. package/dist/generated/services/attachments.d.ts +27 -0
  23. package/dist/generated/services/attachments.d.ts.map +1 -0
  24. package/dist/generated/services/attachments.js +49 -0
  25. package/dist/generated/services/attachments.js.map +1 -0
  26. package/dist/generated/services/attachments.ts +59 -0
  27. package/dist/generated/services/boosts.d.ts +114 -0
  28. package/dist/generated/services/boosts.d.ts.map +1 -0
  29. package/dist/generated/services/boosts.js +179 -0
  30. package/dist/generated/services/boosts.js.map +1 -0
  31. package/dist/generated/services/boosts.ts +250 -0
  32. package/dist/generated/services/campfires.d.ts +202 -0
  33. package/dist/generated/services/campfires.d.ts.map +1 -0
  34. package/dist/generated/services/campfires.js +309 -0
  35. package/dist/generated/services/campfires.js.map +1 -0
  36. package/dist/generated/services/campfires.ts +433 -0
  37. package/dist/generated/services/card-columns.d.ts +163 -0
  38. package/dist/generated/services/card-columns.d.ts.map +1 -0
  39. package/dist/generated/services/card-columns.js +264 -0
  40. package/dist/generated/services/card-columns.js.map +1 -0
  41. package/dist/generated/services/card-columns.ts +360 -0
  42. package/dist/generated/services/card-steps.d.ts +105 -0
  43. package/dist/generated/services/card-steps.d.ts.map +1 -0
  44. package/dist/generated/services/card-steps.js +148 -0
  45. package/dist/generated/services/card-steps.js.map +1 -0
  46. package/dist/generated/services/card-steps.ts +221 -0
  47. package/dist/generated/services/card-tables.d.ts +27 -0
  48. package/dist/generated/services/card-tables.d.ts.map +1 -0
  49. package/dist/generated/services/card-tables.js +40 -0
  50. package/dist/generated/services/card-tables.js.map +1 -0
  51. package/dist/generated/services/card-tables.ts +55 -0
  52. package/dist/generated/services/cards.d.ts +118 -0
  53. package/dist/generated/services/cards.d.ts.map +1 -0
  54. package/dist/generated/services/cards.js +166 -0
  55. package/dist/generated/services/cards.js.map +1 -0
  56. package/dist/generated/services/cards.ts +247 -0
  57. package/dist/generated/services/checkins.d.ts +278 -0
  58. package/dist/generated/services/checkins.d.ts.map +1 -0
  59. package/dist/generated/services/checkins.js +420 -0
  60. package/dist/generated/services/checkins.js.map +1 -0
  61. package/dist/generated/services/checkins.ts +600 -0
  62. package/dist/generated/services/client-approvals.d.ts +45 -0
  63. package/dist/generated/services/client-approvals.d.ts.map +1 -0
  64. package/dist/generated/services/client-approvals.js +58 -0
  65. package/dist/generated/services/client-approvals.js.map +1 -0
  66. package/dist/generated/services/client-approvals.ts +89 -0
  67. package/dist/generated/services/client-correspondences.d.ts +45 -0
  68. package/dist/generated/services/client-correspondences.d.ts.map +1 -0
  69. package/dist/generated/services/client-correspondences.js +58 -0
  70. package/dist/generated/services/client-correspondences.js.map +1 -0
  71. package/dist/generated/services/client-correspondences.ts +89 -0
  72. package/dist/generated/services/client-replies.d.ts +47 -0
  73. package/dist/generated/services/client-replies.d.ts.map +1 -0
  74. package/dist/generated/services/client-replies.js +65 -0
  75. package/dist/generated/services/client-replies.js.map +1 -0
  76. package/dist/generated/services/client-replies.ts +95 -0
  77. package/dist/generated/services/client-visibility.d.ts +35 -0
  78. package/dist/generated/services/client-visibility.d.ts.map +1 -0
  79. package/dist/generated/services/client-visibility.js +44 -0
  80. package/dist/generated/services/client-visibility.js.map +1 -0
  81. package/dist/generated/services/client-visibility.ts +68 -0
  82. package/dist/generated/services/comments.d.ts +86 -0
  83. package/dist/generated/services/comments.d.ts.map +1 -0
  84. package/dist/generated/services/comments.js +129 -0
  85. package/dist/generated/services/comments.js.map +1 -0
  86. package/dist/generated/services/comments.ts +185 -0
  87. package/dist/generated/services/documents.d.ts +92 -0
  88. package/dist/generated/services/documents.d.ts.map +1 -0
  89. package/dist/generated/services/documents.js +129 -0
  90. package/dist/generated/services/documents.js.map +1 -0
  91. package/dist/generated/services/documents.ts +191 -0
  92. package/dist/generated/services/events.d.ts +34 -0
  93. package/dist/generated/services/events.d.ts.map +1 -0
  94. package/dist/generated/services/events.js +39 -0
  95. package/dist/generated/services/events.js.map +1 -0
  96. package/dist/generated/services/events.ts +64 -0
  97. package/dist/generated/services/forwards.d.ts +112 -0
  98. package/dist/generated/services/forwards.d.ts.map +1 -0
  99. package/dist/generated/services/forwards.js +172 -0
  100. package/dist/generated/services/forwards.js.map +1 -0
  101. package/dist/generated/services/forwards.ts +241 -0
  102. package/dist/generated/services/index.d.ts +39 -0
  103. package/dist/generated/services/index.d.ts.map +1 -0
  104. package/dist/generated/services/index.js +39 -0
  105. package/dist/generated/services/index.js.map +1 -0
  106. package/dist/generated/services/index.ts +38 -0
  107. package/dist/generated/services/lineup.d.ts +67 -0
  108. package/dist/generated/services/lineup.d.ts.map +1 -0
  109. package/dist/generated/services/lineup.js +99 -0
  110. package/dist/generated/services/lineup.js.map +1 -0
  111. package/dist/generated/services/lineup.ts +143 -0
  112. package/dist/generated/services/message-boards.d.ts +27 -0
  113. package/dist/generated/services/message-boards.d.ts.map +1 -0
  114. package/dist/generated/services/message-boards.js +40 -0
  115. package/dist/generated/services/message-boards.js.map +1 -0
  116. package/dist/generated/services/message-boards.ts +55 -0
  117. package/dist/generated/services/message-types.d.ts +100 -0
  118. package/dist/generated/services/message-types.d.ts.map +1 -0
  119. package/dist/generated/services/message-types.js +144 -0
  120. package/dist/generated/services/message-types.js.map +1 -0
  121. package/dist/generated/services/message-types.ts +210 -0
  122. package/dist/generated/services/messages.d.ts +122 -0
  123. package/dist/generated/services/messages.d.ts.map +1 -0
  124. package/dist/generated/services/messages.js +180 -0
  125. package/dist/generated/services/messages.js.map +1 -0
  126. package/dist/generated/services/messages.ts +258 -0
  127. package/dist/generated/services/people.d.ts +122 -0
  128. package/dist/generated/services/people.d.ts.map +1 -0
  129. package/dist/generated/services/people.js +167 -0
  130. package/dist/generated/services/people.js.map +1 -0
  131. package/dist/generated/services/people.ts +252 -0
  132. package/dist/generated/services/projects.d.ts +109 -0
  133. package/dist/generated/services/projects.d.ts.map +1 -0
  134. package/dist/generated/services/projects.js +153 -0
  135. package/dist/generated/services/projects.js.map +1 -0
  136. package/dist/generated/services/projects.ts +224 -0
  137. package/dist/generated/services/recordings.d.ts +93 -0
  138. package/dist/generated/services/recordings.d.ts.map +1 -0
  139. package/dist/generated/services/recordings.js +138 -0
  140. package/dist/generated/services/recordings.js.map +1 -0
  141. package/dist/generated/services/recordings.ts +191 -0
  142. package/dist/generated/services/reports.d.ts +90 -0
  143. package/dist/generated/services/reports.d.ts.map +1 -0
  144. package/dist/generated/services/reports.js +124 -0
  145. package/dist/generated/services/reports.js.map +1 -0
  146. package/dist/generated/services/reports.ts +187 -0
  147. package/dist/generated/services/schedules.d.ts +162 -0
  148. package/dist/generated/services/schedules.d.ts.map +1 -0
  149. package/dist/generated/services/schedules.js +228 -0
  150. package/dist/generated/services/schedules.js.map +1 -0
  151. package/dist/generated/services/schedules.ts +335 -0
  152. package/dist/generated/services/search.d.ts +45 -0
  153. package/dist/generated/services/search.d.ts.map +1 -0
  154. package/dist/generated/services/search.js +56 -0
  155. package/dist/generated/services/search.js.map +1 -0
  156. package/dist/generated/services/search.ts +89 -0
  157. package/dist/generated/services/subscriptions.d.ts +73 -0
  158. package/dist/generated/services/subscriptions.d.ts.map +1 -0
  159. package/dist/generated/services/subscriptions.js +119 -0
  160. package/dist/generated/services/subscriptions.js.map +1 -0
  161. package/dist/generated/services/subscriptions.ts +160 -0
  162. package/dist/generated/services/templates.d.ts +140 -0
  163. package/dist/generated/services/templates.d.ts.map +1 -0
  164. package/dist/generated/services/templates.js +207 -0
  165. package/dist/generated/services/templates.js.map +1 -0
  166. package/dist/generated/services/templates.ts +294 -0
  167. package/dist/generated/services/timeline.d.ts +31 -0
  168. package/dist/generated/services/timeline.d.ts.map +1 -0
  169. package/dist/generated/services/timeline.js +39 -0
  170. package/dist/generated/services/timeline.js.map +1 -0
  171. package/dist/generated/services/timeline.ts +62 -0
  172. package/dist/generated/services/timesheets.d.ts +145 -0
  173. package/dist/generated/services/timesheets.d.ts.map +1 -0
  174. package/dist/generated/services/timesheets.js +186 -0
  175. package/dist/generated/services/timesheets.js.map +1 -0
  176. package/dist/generated/services/timesheets.ts +289 -0
  177. package/dist/generated/services/todolist-groups.d.ts +74 -0
  178. package/dist/generated/services/todolist-groups.d.ts.map +1 -0
  179. package/dist/generated/services/todolist-groups.js +100 -0
  180. package/dist/generated/services/todolist-groups.js.map +1 -0
  181. package/dist/generated/services/todolist-groups.ts +151 -0
  182. package/dist/generated/services/todolists.d.ts +95 -0
  183. package/dist/generated/services/todolists.d.ts.map +1 -0
  184. package/dist/generated/services/todolists.js +130 -0
  185. package/dist/generated/services/todolists.js.map +1 -0
  186. package/dist/generated/services/todolists.ts +192 -0
  187. package/dist/generated/services/todos.d.ts +175 -0
  188. package/dist/generated/services/todos.d.ts.map +1 -0
  189. package/dist/generated/services/todos.js +255 -0
  190. package/dist/generated/services/todos.js.map +1 -0
  191. package/dist/generated/services/todos.ts +369 -0
  192. package/dist/generated/services/todosets.d.ts +27 -0
  193. package/dist/generated/services/todosets.d.ts.map +1 -0
  194. package/dist/generated/services/todosets.js +40 -0
  195. package/dist/generated/services/todosets.js.map +1 -0
  196. package/dist/generated/services/todosets.ts +55 -0
  197. package/dist/generated/services/tools.d.ts +122 -0
  198. package/dist/generated/services/tools.d.ts.map +1 -0
  199. package/dist/generated/services/tools.js +197 -0
  200. package/dist/generated/services/tools.js.map +1 -0
  201. package/dist/generated/services/tools.ts +267 -0
  202. package/dist/generated/services/uploads.d.ts +109 -0
  203. package/dist/generated/services/uploads.d.ts.map +1 -0
  204. package/dist/generated/services/uploads.js +153 -0
  205. package/dist/generated/services/uploads.js.map +1 -0
  206. package/dist/generated/services/uploads.ts +227 -0
  207. package/dist/generated/services/vaults.d.ts +86 -0
  208. package/dist/generated/services/vaults.d.ts.map +1 -0
  209. package/dist/generated/services/vaults.js +126 -0
  210. package/dist/generated/services/vaults.js.map +1 -0
  211. package/dist/generated/services/vaults.ts +182 -0
  212. package/dist/generated/services/webhooks.d.ts +106 -0
  213. package/dist/generated/services/webhooks.d.ts.map +1 -0
  214. package/dist/generated/services/webhooks.js +157 -0
  215. package/dist/generated/services/webhooks.js.map +1 -0
  216. package/dist/generated/services/webhooks.ts +226 -0
  217. package/dist/hooks/otel.d.ts +136 -0
  218. package/dist/hooks/otel.d.ts.map +1 -0
  219. package/dist/hooks/otel.js +240 -0
  220. package/dist/hooks/otel.js.map +1 -0
  221. package/dist/hooks.d.ts +171 -0
  222. package/dist/hooks.d.ts.map +1 -0
  223. package/dist/hooks.js +196 -0
  224. package/dist/hooks.js.map +1 -0
  225. package/dist/index.d.ts +90 -0
  226. package/dist/index.d.ts.map +1 -0
  227. package/dist/index.js +122 -0
  228. package/dist/index.js.map +1 -0
  229. package/dist/oauth/authorize.d.ts +48 -0
  230. package/dist/oauth/authorize.d.ts.map +1 -0
  231. package/dist/oauth/authorize.js +56 -0
  232. package/dist/oauth/authorize.js.map +1 -0
  233. package/dist/oauth/callback-server.d.ts +56 -0
  234. package/dist/oauth/callback-server.d.ts.map +1 -0
  235. package/dist/oauth/callback-server.js +150 -0
  236. package/dist/oauth/callback-server.js.map +1 -0
  237. package/dist/oauth/discovery.d.ts +54 -0
  238. package/dist/oauth/discovery.d.ts.map +1 -0
  239. package/dist/oauth/discovery.js +116 -0
  240. package/dist/oauth/discovery.js.map +1 -0
  241. package/dist/oauth/exchange.d.ts +96 -0
  242. package/dist/oauth/exchange.d.ts.map +1 -0
  243. package/dist/oauth/exchange.js +324 -0
  244. package/dist/oauth/exchange.js.map +1 -0
  245. package/dist/oauth/identity.d.ts +30 -0
  246. package/dist/oauth/identity.d.ts.map +1 -0
  247. package/dist/oauth/identity.js +82 -0
  248. package/dist/oauth/identity.js.map +1 -0
  249. package/dist/oauth/index.d.ts +50 -0
  250. package/dist/oauth/index.d.ts.map +1 -0
  251. package/dist/oauth/index.js +58 -0
  252. package/dist/oauth/index.js.map +1 -0
  253. package/dist/oauth/interactive-login.d.ts +62 -0
  254. package/dist/oauth/interactive-login.d.ts.map +1 -0
  255. package/dist/oauth/interactive-login.js +106 -0
  256. package/dist/oauth/interactive-login.js.map +1 -0
  257. package/dist/oauth/pkce.d.ts +68 -0
  258. package/dist/oauth/pkce.d.ts.map +1 -0
  259. package/dist/oauth/pkce.js +80 -0
  260. package/dist/oauth/pkce.js.map +1 -0
  261. package/dist/oauth/token-manager.d.ts +92 -0
  262. package/dist/oauth/token-manager.d.ts.map +1 -0
  263. package/dist/oauth/token-manager.js +126 -0
  264. package/dist/oauth/token-manager.js.map +1 -0
  265. package/dist/oauth/token-store.d.ts +45 -0
  266. package/dist/oauth/token-store.d.ts.map +1 -0
  267. package/dist/oauth/token-store.js +105 -0
  268. package/dist/oauth/token-store.js.map +1 -0
  269. package/dist/oauth/types.d.ts +98 -0
  270. package/dist/oauth/types.d.ts.map +1 -0
  271. package/dist/oauth/types.js +8 -0
  272. package/dist/oauth/types.js.map +1 -0
  273. package/dist/pagination-utils.d.ts +27 -0
  274. package/dist/pagination-utils.d.ts.map +1 -0
  275. package/dist/pagination-utils.js +54 -0
  276. package/dist/pagination-utils.js.map +1 -0
  277. package/dist/pagination.d.ts +56 -0
  278. package/dist/pagination.d.ts.map +1 -0
  279. package/dist/pagination.js +57 -0
  280. package/dist/pagination.js.map +1 -0
  281. package/dist/security.d.ts +68 -0
  282. package/dist/security.d.ts.map +1 -0
  283. package/dist/security.js +107 -0
  284. package/dist/security.js.map +1 -0
  285. package/dist/services/authorization.d.ts +124 -0
  286. package/dist/services/authorization.d.ts.map +1 -0
  287. package/dist/services/authorization.js +117 -0
  288. package/dist/services/authorization.js.map +1 -0
  289. package/dist/services/base.d.ts +102 -0
  290. package/dist/services/base.d.ts.map +1 -0
  291. package/dist/services/base.js +230 -0
  292. package/dist/services/base.js.map +1 -0
  293. package/dist/webhooks/adapters/node-http.d.ts +14 -0
  294. package/dist/webhooks/adapters/node-http.d.ts.map +1 -0
  295. package/dist/webhooks/adapters/node-http.js +60 -0
  296. package/dist/webhooks/adapters/node-http.js.map +1 -0
  297. package/dist/webhooks/events.d.ts +52 -0
  298. package/dist/webhooks/events.d.ts.map +1 -0
  299. package/dist/webhooks/events.js +52 -0
  300. package/dist/webhooks/events.js.map +1 -0
  301. package/dist/webhooks/handler.d.ts +62 -0
  302. package/dist/webhooks/handler.d.ts.map +1 -0
  303. package/dist/webhooks/handler.js +226 -0
  304. package/dist/webhooks/handler.js.map +1 -0
  305. package/dist/webhooks/index.d.ts +5 -0
  306. package/dist/webhooks/index.d.ts.map +1 -0
  307. package/dist/webhooks/index.js +5 -0
  308. package/dist/webhooks/index.js.map +1 -0
  309. package/dist/webhooks/verify.d.ts +11 -0
  310. package/dist/webhooks/verify.d.ts.map +1 -0
  311. package/dist/webhooks/verify.js +25 -0
  312. package/dist/webhooks/verify.js.map +1 -0
  313. package/package.json +70 -0
  314. package/src/generated/metadata.json +2281 -0
  315. package/src/generated/openapi-stripped.json +21268 -0
  316. package/src/generated/path-mapping.ts +199 -0
  317. package/src/generated/schema.d.ts +14883 -0
  318. package/src/generated/services/attachments.ts +59 -0
  319. package/src/generated/services/boosts.ts +250 -0
  320. package/src/generated/services/campfires.ts +433 -0
  321. package/src/generated/services/card-columns.ts +360 -0
  322. package/src/generated/services/card-steps.ts +221 -0
  323. package/src/generated/services/card-tables.ts +55 -0
  324. package/src/generated/services/cards.ts +247 -0
  325. package/src/generated/services/checkins.ts +600 -0
  326. package/src/generated/services/client-approvals.ts +89 -0
  327. package/src/generated/services/client-correspondences.ts +89 -0
  328. package/src/generated/services/client-replies.ts +95 -0
  329. package/src/generated/services/client-visibility.ts +68 -0
  330. package/src/generated/services/comments.ts +185 -0
  331. package/src/generated/services/documents.ts +191 -0
  332. package/src/generated/services/events.ts +64 -0
  333. package/src/generated/services/forwards.ts +241 -0
  334. package/src/generated/services/index.ts +38 -0
  335. package/src/generated/services/lineup.ts +143 -0
  336. package/src/generated/services/message-boards.ts +55 -0
  337. package/src/generated/services/message-types.ts +210 -0
  338. package/src/generated/services/messages.ts +258 -0
  339. package/src/generated/services/people.ts +252 -0
  340. package/src/generated/services/projects.ts +224 -0
  341. package/src/generated/services/recordings.ts +191 -0
  342. package/src/generated/services/reports.ts +187 -0
  343. package/src/generated/services/schedules.ts +335 -0
  344. package/src/generated/services/search.ts +89 -0
  345. package/src/generated/services/subscriptions.ts +160 -0
  346. package/src/generated/services/templates.ts +294 -0
  347. package/src/generated/services/timeline.ts +62 -0
  348. package/src/generated/services/timesheets.ts +289 -0
  349. package/src/generated/services/todolist-groups.ts +151 -0
  350. package/src/generated/services/todolists.ts +192 -0
  351. package/src/generated/services/todos.ts +369 -0
  352. package/src/generated/services/todosets.ts +55 -0
  353. package/src/generated/services/tools.ts +267 -0
  354. package/src/generated/services/uploads.ts +227 -0
  355. package/src/generated/services/vaults.ts +182 -0
  356. package/src/generated/services/webhooks.ts +226 -0
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Attachments service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import type { components } from "../schema.js";
8
+ /**
9
+ * Service for Attachments operations.
10
+ */
11
+ export declare class AttachmentsService extends BaseService {
12
+ /**
13
+ * Create an attachment (upload a file for embedding)
14
+ * @param data - Binary file data to upload
15
+ * @param contentType - MIME type of the file (e.g., "image/png", "application/pdf")
16
+ * @param name - name
17
+ * @returns The attachment
18
+ * @throws {BasecampError} If required fields are missing or invalid
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const result = await client.attachments.create(fileData, "image/png", "name");
23
+ * ```
24
+ */
25
+ create(data: ArrayBuffer | Uint8Array | string, contentType: string, name: string): Promise<components["schemas"]["CreateAttachmentResponseContent"]>;
26
+ }
27
+ //# sourceMappingURL=attachments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../../src/generated/services/attachments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAW/C;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;IAEjD;;;;;;;;;;;;OAYG;IACG,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,CAAC;CAsB5J"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Attachments service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ // =============================================================================
8
+ // Types
9
+ // =============================================================================
10
+ // =============================================================================
11
+ // Service
12
+ // =============================================================================
13
+ /**
14
+ * Service for Attachments operations.
15
+ */
16
+ export class AttachmentsService extends BaseService {
17
+ /**
18
+ * Create an attachment (upload a file for embedding)
19
+ * @param data - Binary file data to upload
20
+ * @param contentType - MIME type of the file (e.g., "image/png", "application/pdf")
21
+ * @param name - name
22
+ * @returns The attachment
23
+ * @throws {BasecampError} If required fields are missing or invalid
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * const result = await client.attachments.create(fileData, "image/png", "name");
28
+ * ```
29
+ */
30
+ async create(data, contentType, name) {
31
+ const response = await this.request({
32
+ service: "Attachments",
33
+ operation: "CreateAttachment",
34
+ resourceType: "attachment",
35
+ isMutation: true,
36
+ }, () => this.client.POST("/attachments.json", {
37
+ params: {
38
+ query: { name: name },
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ header: { "Content-Type": contentType },
41
+ },
42
+ body: data,
43
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
+ bodySerializer: (body) => body,
45
+ }));
46
+ return response;
47
+ }
48
+ }
49
+ //# sourceMappingURL=attachments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../../src/generated/services/attachments.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,gFAAgF;AAChF,QAAQ;AACR,gFAAgF;AAGhF,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,WAAW;IAEjD;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,MAAM,CAAC,IAAuC,EAAE,WAAmB,EAAE,IAAY;QACrF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC;YACE,OAAO,EAAE,aAAa;YACtB,SAAS,EAAE,kBAAkB;YAC7B,YAAY,EAAE,YAAY;YAC1B,UAAU,EAAE,IAAI;SACjB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACpC,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;gBACrB,8DAA8D;gBAC9D,MAAM,EAAE,EAAE,cAAc,EAAE,WAAW,EAAS;aAC/C;YACD,IAAI,EAAE,IAAyB;YAC/B,8DAA8D;YAC9D,cAAc,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,IAAW;SAC/C,CAAC,CACL,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Attachments service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+
7
+ import { BaseService } from "../../services/base.js";
8
+ import type { components } from "../schema.js";
9
+
10
+ // =============================================================================
11
+ // Types
12
+ // =============================================================================
13
+
14
+
15
+ // =============================================================================
16
+ // Service
17
+ // =============================================================================
18
+
19
+ /**
20
+ * Service for Attachments operations.
21
+ */
22
+ export class AttachmentsService extends BaseService {
23
+
24
+ /**
25
+ * Create an attachment (upload a file for embedding)
26
+ * @param data - Binary file data to upload
27
+ * @param contentType - MIME type of the file (e.g., "image/png", "application/pdf")
28
+ * @param name - name
29
+ * @returns The attachment
30
+ * @throws {BasecampError} If required fields are missing or invalid
31
+ *
32
+ * @example
33
+ * ```ts
34
+ * const result = await client.attachments.create(fileData, "image/png", "name");
35
+ * ```
36
+ */
37
+ async create(data: ArrayBuffer | Uint8Array | string, contentType: string, name: string): Promise<components["schemas"]["CreateAttachmentResponseContent"]> {
38
+ const response = await this.request(
39
+ {
40
+ service: "Attachments",
41
+ operation: "CreateAttachment",
42
+ resourceType: "attachment",
43
+ isMutation: true,
44
+ },
45
+ () =>
46
+ this.client.POST("/attachments.json", {
47
+ params: {
48
+ query: { name: name },
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ header: { "Content-Type": contentType } as any,
51
+ },
52
+ body: data as unknown as string,
53
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
54
+ bodySerializer: (body: unknown) => body as any,
55
+ })
56
+ );
57
+ return response;
58
+ }
59
+ }
@@ -0,0 +1,114 @@
1
+ /**
2
+ * Boosts service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import type { components } from "../schema.js";
8
+ import type { PaginationOptions } from "../../pagination.js";
9
+ /**
10
+ * Options for listForRecording.
11
+ */
12
+ export interface ListForRecordingBoostOptions extends PaginationOptions {
13
+ }
14
+ /**
15
+ * Request parameters for createForRecording.
16
+ */
17
+ export interface CreateForRecordingBoostRequest {
18
+ /** Text content */
19
+ content: string;
20
+ }
21
+ /**
22
+ * Options for listForEvent.
23
+ */
24
+ export interface ListForEventBoostOptions extends PaginationOptions {
25
+ }
26
+ /**
27
+ * Request parameters for createForEvent.
28
+ */
29
+ export interface CreateForEventBoostRequest {
30
+ /** Text content */
31
+ content: string;
32
+ }
33
+ /**
34
+ * Service for Boosts operations.
35
+ */
36
+ export declare class BoostsService extends BaseService {
37
+ /**
38
+ * Get a single boost
39
+ * @param boostId - The boost ID
40
+ * @returns The boost
41
+ * @throws {BasecampError} If the resource is not found
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * const result = await client.boosts.get(123);
46
+ * ```
47
+ */
48
+ get(boostId: number): Promise<components["schemas"]["GetBoostResponseContent"]>;
49
+ /**
50
+ * Delete a boost
51
+ * @param boostId - The boost ID
52
+ * @returns void
53
+ * @throws {BasecampError} If the request fails
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * await client.boosts.delete(123);
58
+ * ```
59
+ */
60
+ delete(boostId: number): Promise<void>;
61
+ /**
62
+ * List boosts on a recording
63
+ * @param recordingId - The recording ID
64
+ * @param options - Optional query parameters
65
+ * @returns All results across all pages, with .meta.totalCount
66
+ *
67
+ * @example
68
+ * ```ts
69
+ * const result = await client.boosts.listForRecording(123);
70
+ * ```
71
+ */
72
+ listForRecording(recordingId: number, options?: ListForRecordingBoostOptions): Promise<components["schemas"]["ListRecordingBoostsResponseContent"]>;
73
+ /**
74
+ * Create a boost on a recording
75
+ * @param recordingId - The recording ID
76
+ * @param req - Recording_boost creation parameters
77
+ * @returns The recording_boost
78
+ * @throws {BasecampError} If required fields are missing or invalid
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * const result = await client.boosts.createForRecording(123, { content: "Hello world" });
83
+ * ```
84
+ */
85
+ createForRecording(recordingId: number, req: CreateForRecordingBoostRequest): Promise<components["schemas"]["CreateRecordingBoostResponseContent"]>;
86
+ /**
87
+ * List boosts on a specific event within a recording
88
+ * @param recordingId - The recording ID
89
+ * @param eventId - The event ID
90
+ * @param options - Optional query parameters
91
+ * @returns All results across all pages, with .meta.totalCount
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * const result = await client.boosts.listForEvent(123, 123);
96
+ * ```
97
+ */
98
+ listForEvent(recordingId: number, eventId: number, options?: ListForEventBoostOptions): Promise<components["schemas"]["ListEventBoostsResponseContent"]>;
99
+ /**
100
+ * Create a boost on a specific event within a recording
101
+ * @param recordingId - The recording ID
102
+ * @param eventId - The event ID
103
+ * @param req - Event_boost creation parameters
104
+ * @returns The event_boost
105
+ * @throws {BasecampError} If required fields are missing or invalid
106
+ *
107
+ * @example
108
+ * ```ts
109
+ * const result = await client.boosts.createForEvent(123, 123, { content: "Hello world" });
110
+ * ```
111
+ */
112
+ createForEvent(recordingId: number, eventId: number, req: CreateForEventBoostRequest): Promise<components["schemas"]["CreateEventBoostResponseContent"]>;
113
+ }
114
+ //# sourceMappingURL=boosts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boosts.d.ts","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAQ7D;;GAEG;AACH,MAAM,WAAW,4BAA6B,SAAQ,iBAAiB;CACtE;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAOD;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAE5C;;;;;;;;;;OAUG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAmBrF;;;;;;;;;;OAUG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5C;;;;;;;;;;OAUG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,4BAA4B,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,oCAAoC,CAAC,CAAC;IAmBzJ;;;;;;;;;;;OAWG;IACG,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,8BAA8B,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qCAAqC,CAAC,CAAC;IAyBzJ;;;;;;;;;;;OAWG;IACG,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,gCAAgC,CAAC,CAAC;IAmB9J;;;;;;;;;;;;OAYG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,0BAA0B,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,CAAC;CAwB/J"}
@@ -0,0 +1,179 @@
1
+ /**
2
+ * Boosts service for the Basecamp API.
3
+ *
4
+ * @generated from OpenAPI spec - do not edit directly
5
+ */
6
+ import { BaseService } from "../../services/base.js";
7
+ import { Errors } from "../../errors.js";
8
+ // =============================================================================
9
+ // Service
10
+ // =============================================================================
11
+ /**
12
+ * Service for Boosts operations.
13
+ */
14
+ export class BoostsService extends BaseService {
15
+ /**
16
+ * Get a single boost
17
+ * @param boostId - The boost ID
18
+ * @returns The boost
19
+ * @throws {BasecampError} If the resource is not found
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * const result = await client.boosts.get(123);
24
+ * ```
25
+ */
26
+ async get(boostId) {
27
+ const response = await this.request({
28
+ service: "Boosts",
29
+ operation: "GetBoost",
30
+ resourceType: "boost",
31
+ isMutation: false,
32
+ resourceId: boostId,
33
+ }, () => this.client.GET("/boosts/{boostId}", {
34
+ params: {
35
+ path: { boostId },
36
+ },
37
+ }));
38
+ return response;
39
+ }
40
+ /**
41
+ * Delete a boost
42
+ * @param boostId - The boost ID
43
+ * @returns void
44
+ * @throws {BasecampError} If the request fails
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * await client.boosts.delete(123);
49
+ * ```
50
+ */
51
+ async delete(boostId) {
52
+ await this.request({
53
+ service: "Boosts",
54
+ operation: "DeleteBoost",
55
+ resourceType: "boost",
56
+ isMutation: true,
57
+ resourceId: boostId,
58
+ }, () => this.client.DELETE("/boosts/{boostId}", {
59
+ params: {
60
+ path: { boostId },
61
+ },
62
+ }));
63
+ }
64
+ /**
65
+ * List boosts on a recording
66
+ * @param recordingId - The recording ID
67
+ * @param options - Optional query parameters
68
+ * @returns All results across all pages, with .meta.totalCount
69
+ *
70
+ * @example
71
+ * ```ts
72
+ * const result = await client.boosts.listForRecording(123);
73
+ * ```
74
+ */
75
+ async listForRecording(recordingId, options) {
76
+ return this.requestPaginated({
77
+ service: "Boosts",
78
+ operation: "ListRecordingBoosts",
79
+ resourceType: "recording_boost",
80
+ isMutation: false,
81
+ resourceId: recordingId,
82
+ }, () => this.client.GET("/recordings/{recordingId}/boosts.json", {
83
+ params: {
84
+ path: { recordingId },
85
+ },
86
+ }), options);
87
+ }
88
+ /**
89
+ * Create a boost on a recording
90
+ * @param recordingId - The recording ID
91
+ * @param req - Recording_boost creation parameters
92
+ * @returns The recording_boost
93
+ * @throws {BasecampError} If required fields are missing or invalid
94
+ *
95
+ * @example
96
+ * ```ts
97
+ * const result = await client.boosts.createForRecording(123, { content: "Hello world" });
98
+ * ```
99
+ */
100
+ async createForRecording(recordingId, req) {
101
+ if (!req.content) {
102
+ throw Errors.validation("Content is required");
103
+ }
104
+ const response = await this.request({
105
+ service: "Boosts",
106
+ operation: "CreateRecordingBoost",
107
+ resourceType: "recording_boost",
108
+ isMutation: true,
109
+ resourceId: recordingId,
110
+ }, () => this.client.POST("/recordings/{recordingId}/boosts.json", {
111
+ params: {
112
+ path: { recordingId },
113
+ },
114
+ body: {
115
+ content: req.content,
116
+ },
117
+ }));
118
+ return response;
119
+ }
120
+ /**
121
+ * List boosts on a specific event within a recording
122
+ * @param recordingId - The recording ID
123
+ * @param eventId - The event ID
124
+ * @param options - Optional query parameters
125
+ * @returns All results across all pages, with .meta.totalCount
126
+ *
127
+ * @example
128
+ * ```ts
129
+ * const result = await client.boosts.listForEvent(123, 123);
130
+ * ```
131
+ */
132
+ async listForEvent(recordingId, eventId, options) {
133
+ return this.requestPaginated({
134
+ service: "Boosts",
135
+ operation: "ListEventBoosts",
136
+ resourceType: "event_boost",
137
+ isMutation: false,
138
+ resourceId: recordingId,
139
+ }, () => this.client.GET("/recordings/{recordingId}/events/{eventId}/boosts.json", {
140
+ params: {
141
+ path: { recordingId, eventId },
142
+ },
143
+ }), options);
144
+ }
145
+ /**
146
+ * Create a boost on a specific event within a recording
147
+ * @param recordingId - The recording ID
148
+ * @param eventId - The event ID
149
+ * @param req - Event_boost creation parameters
150
+ * @returns The event_boost
151
+ * @throws {BasecampError} If required fields are missing or invalid
152
+ *
153
+ * @example
154
+ * ```ts
155
+ * const result = await client.boosts.createForEvent(123, 123, { content: "Hello world" });
156
+ * ```
157
+ */
158
+ async createForEvent(recordingId, eventId, req) {
159
+ if (!req.content) {
160
+ throw Errors.validation("Content is required");
161
+ }
162
+ const response = await this.request({
163
+ service: "Boosts",
164
+ operation: "CreateEventBoost",
165
+ resourceType: "event_boost",
166
+ isMutation: true,
167
+ resourceId: recordingId,
168
+ }, () => this.client.POST("/recordings/{recordingId}/events/{eventId}/boosts.json", {
169
+ params: {
170
+ path: { recordingId, eventId },
171
+ },
172
+ body: {
173
+ content: req.content,
174
+ },
175
+ }));
176
+ return response;
177
+ }
178
+ }
179
+ //# sourceMappingURL=boosts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boosts.js","sourceRoot":"","sources":["../../../src/generated/services/boosts.ts"],"names":[],"mappings":"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"}