@37signals/basecamp 0.9.0 → 0.10.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 (81) hide show
  1. package/README.md +1 -1
  2. package/dist/client.d.ts +6 -3
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +33 -13
  5. package/dist/client.js.map +1 -1
  6. package/dist/generated/metadata.d.ts.map +1 -1
  7. package/dist/generated/metadata.js +290 -12
  8. package/dist/generated/metadata.js.map +1 -1
  9. package/dist/generated/metadata.ts +290 -12
  10. package/dist/generated/openapi-stripped.json +6274 -3872
  11. package/dist/generated/path-mapping.d.ts.map +1 -1
  12. package/dist/generated/path-mapping.js +23 -5
  13. package/dist/generated/path-mapping.js.map +1 -1
  14. package/dist/generated/path-mapping.ts +23 -5
  15. package/dist/generated/schema.d.ts +3004 -1145
  16. package/dist/generated/services/boosts.d.ts +13 -10
  17. package/dist/generated/services/boosts.d.ts.map +1 -1
  18. package/dist/generated/services/boosts.js +5 -5
  19. package/dist/generated/services/boosts.js.map +1 -1
  20. package/dist/generated/services/boosts.ts +12 -10
  21. package/dist/generated/services/cards.d.ts +4 -4
  22. package/dist/generated/services/cards.d.ts.map +1 -1
  23. package/dist/generated/services/cards.js +2 -2
  24. package/dist/generated/services/cards.js.map +1 -1
  25. package/dist/generated/services/cards.ts +4 -4
  26. package/dist/generated/services/everything.d.ts +323 -0
  27. package/dist/generated/services/everything.d.ts.map +1 -0
  28. package/dist/generated/services/everything.js +381 -0
  29. package/dist/generated/services/everything.js.map +1 -0
  30. package/dist/generated/services/everything.ts +632 -0
  31. package/dist/generated/services/index.d.ts +2 -1
  32. package/dist/generated/services/index.d.ts.map +1 -1
  33. package/dist/generated/services/index.js +2 -1
  34. package/dist/generated/services/index.js.map +1 -1
  35. package/dist/generated/services/index.ts +2 -1
  36. package/dist/generated/services/message-types.d.ts +15 -10
  37. package/dist/generated/services/message-types.d.ts.map +1 -1
  38. package/dist/generated/services/message-types.js +35 -18
  39. package/dist/generated/services/message-types.js.map +1 -1
  40. package/dist/generated/services/message-types.ts +34 -18
  41. package/dist/generated/services/my-notifications.d.ts +27 -0
  42. package/dist/generated/services/my-notifications.d.ts.map +1 -1
  43. package/dist/generated/services/my-notifications.js +23 -1
  44. package/dist/generated/services/my-notifications.js.map +1 -1
  45. package/dist/generated/services/my-notifications.ts +46 -1
  46. package/dist/generated/services/recordings.d.ts +2 -2
  47. package/dist/generated/services/recordings.d.ts.map +1 -1
  48. package/dist/generated/services/recordings.js +1 -1
  49. package/dist/generated/services/recordings.js.map +1 -1
  50. package/dist/generated/services/recordings.ts +2 -2
  51. package/dist/generated/services/schedules.d.ts +9 -1
  52. package/dist/generated/services/schedules.d.ts.map +1 -1
  53. package/dist/generated/services/schedules.js.map +1 -1
  54. package/dist/generated/services/schedules.ts +9 -1
  55. package/dist/generated/services/tools.d.ts +2 -0
  56. package/dist/generated/services/tools.d.ts.map +1 -1
  57. package/dist/generated/services/tools.js +1 -0
  58. package/dist/generated/services/tools.js.map +1 -1
  59. package/dist/generated/services/tools.ts +3 -0
  60. package/dist/index.d.ts +4 -2
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +6 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/services/cards-extensions.d.ts +76 -0
  65. package/dist/services/cards-extensions.d.ts.map +1 -0
  66. package/dist/services/cards-extensions.js +67 -0
  67. package/dist/services/cards-extensions.js.map +1 -0
  68. package/package.json +2 -2
  69. package/src/generated/metadata.ts +290 -12
  70. package/src/generated/openapi-stripped.json +6274 -3872
  71. package/src/generated/path-mapping.ts +23 -5
  72. package/src/generated/schema.d.ts +3004 -1145
  73. package/src/generated/services/boosts.ts +12 -10
  74. package/src/generated/services/cards.ts +4 -4
  75. package/src/generated/services/everything.ts +632 -0
  76. package/src/generated/services/index.ts +2 -1
  77. package/src/generated/services/message-types.ts +34 -18
  78. package/src/generated/services/my-notifications.ts +46 -1
  79. package/src/generated/services/recordings.ts +2 -2
  80. package/src/generated/services/schedules.ts +9 -1
  81. package/src/generated/services/tools.ts +3 -0
@@ -0,0 +1,632 @@
1
+ /**
2
+ * Everything 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
+ import { ListResult } from "../../pagination.js";
10
+ import type { PaginationOptions } from "../../pagination.js";
11
+
12
+ // =============================================================================
13
+ // Types
14
+ // =============================================================================
15
+
16
+ /** EverythingBoost entity from the Basecamp API. */
17
+ export type EverythingBoost = components["schemas"]["EverythingBoost"];
18
+ /** BucketCardsGroup entity from the Basecamp API. */
19
+ export type BucketCardsGroup = components["schemas"]["BucketCardsGroup"];
20
+ /** Card entity from the Basecamp API. */
21
+ export type Card = components["schemas"]["Card"];
22
+ /** Recording entity from the Basecamp API. */
23
+ export type Recording = components["schemas"]["Recording"];
24
+ /** EverythingFile entity from the Basecamp API. */
25
+ export type EverythingFile = components["schemas"]["EverythingFile"];
26
+ /** BucketTodosGroup entity from the Basecamp API. */
27
+ export type BucketTodosGroup = components["schemas"]["BucketTodosGroup"];
28
+ /** Todo entity from the Basecamp API. */
29
+ export type Todo = components["schemas"]["Todo"];
30
+
31
+ /**
32
+ * Options for everythingBoosts.
33
+ */
34
+ export interface EverythingBoostsEverythingOptions extends PaginationOptions {
35
+ /** Page number for paginating through results. Defaults to 1. */
36
+ page?: number;
37
+ }
38
+
39
+ /**
40
+ * Options for everythingCompletedCards.
41
+ */
42
+ export interface EverythingCompletedCardsEverythingOptions extends PaginationOptions {
43
+ /** Page number for paginating through results. Defaults to 1. */
44
+ page?: number;
45
+ }
46
+
47
+ /**
48
+ * Options for everythingNoDueDateCards.
49
+ */
50
+ export interface EverythingNoDueDateCardsEverythingOptions extends PaginationOptions {
51
+ /** Page number for paginating through results. Defaults to 1. */
52
+ page?: number;
53
+ }
54
+
55
+ /**
56
+ * Options for everythingNotNowCards.
57
+ */
58
+ export interface EverythingNotNowCardsEverythingOptions extends PaginationOptions {
59
+ /** Page number for paginating through results. Defaults to 1. */
60
+ page?: number;
61
+ }
62
+
63
+ /**
64
+ * Options for everythingOpenCards.
65
+ */
66
+ export interface EverythingOpenCardsEverythingOptions extends PaginationOptions {
67
+ /** Page number for paginating through results. Defaults to 1. */
68
+ page?: number;
69
+ }
70
+
71
+ /**
72
+ * Options for everythingUnassignedCards.
73
+ */
74
+ export interface EverythingUnassignedCardsEverythingOptions extends PaginationOptions {
75
+ /** Page number for paginating through results. Defaults to 1. */
76
+ page?: number;
77
+ }
78
+
79
+ /**
80
+ * Options for everythingCheckins.
81
+ */
82
+ export interface EverythingCheckinsEverythingOptions extends PaginationOptions {
83
+ /** Page number for paginating through results. Defaults to 1. */
84
+ page?: number;
85
+ }
86
+
87
+ /**
88
+ * Options for everythingComments.
89
+ */
90
+ export interface EverythingCommentsEverythingOptions extends PaginationOptions {
91
+ /** Page number for paginating through results. Defaults to 1. */
92
+ page?: number;
93
+ }
94
+
95
+ /**
96
+ * Options for everythingFiles.
97
+ */
98
+ export interface EverythingFilesEverythingOptions extends PaginationOptions {
99
+ /** Filter by file kind: all (default), images, pdfs, documents, or videos. */
100
+ kind?: string;
101
+ /** Restrict to files created by the given people (repeatable). */
102
+ peopleIds?: number[];
103
+ /** Page number for paginating through results. Defaults to 1. */
104
+ page?: number;
105
+ }
106
+
107
+ /**
108
+ * Options for everythingForwards.
109
+ */
110
+ export interface EverythingForwardsEverythingOptions extends PaginationOptions {
111
+ /** Page number for paginating through results. Defaults to 1. */
112
+ page?: number;
113
+ }
114
+
115
+ /**
116
+ * Options for everythingMessages.
117
+ */
118
+ export interface EverythingMessagesEverythingOptions extends PaginationOptions {
119
+ /** Page number for paginating through results. Defaults to 1. */
120
+ page?: number;
121
+ }
122
+
123
+ /**
124
+ * Options for everythingCompletedTodos.
125
+ */
126
+ export interface EverythingCompletedTodosEverythingOptions extends PaginationOptions {
127
+ /** Page number for paginating through results. Defaults to 1. */
128
+ page?: number;
129
+ }
130
+
131
+ /**
132
+ * Options for everythingNoDueDateTodos.
133
+ */
134
+ export interface EverythingNoDueDateTodosEverythingOptions extends PaginationOptions {
135
+ /** Page number for paginating through results. Defaults to 1. */
136
+ page?: number;
137
+ }
138
+
139
+ /**
140
+ * Options for everythingOpenTodos.
141
+ */
142
+ export interface EverythingOpenTodosEverythingOptions extends PaginationOptions {
143
+ /** Page number for paginating through results. Defaults to 1. */
144
+ page?: number;
145
+ }
146
+
147
+ /**
148
+ * Options for everythingUnassignedTodos.
149
+ */
150
+ export interface EverythingUnassignedTodosEverythingOptions extends PaginationOptions {
151
+ /** Page number for paginating through results. Defaults to 1. */
152
+ page?: number;
153
+ }
154
+
155
+
156
+ // =============================================================================
157
+ // Service
158
+ // =============================================================================
159
+
160
+ /**
161
+ * Service for Everything operations.
162
+ */
163
+ export class EverythingService extends BaseService {
164
+
165
+ /**
166
+ * Get every boost across all accessible projects, newest-first (paginated).
167
+ * @param options - Optional query parameters
168
+ * @returns All EverythingBoost across all pages, with .meta.totalCount
169
+ *
170
+ * @example
171
+ * ```ts
172
+ * const result = await client.everything.everythingBoosts();
173
+ * ```
174
+ */
175
+ async everythingBoosts(options?: EverythingBoostsEverythingOptions): Promise<ListResult<EverythingBoost>> {
176
+ return this.requestPaginated(
177
+ {
178
+ service: "Everything",
179
+ operation: "GetEverythingBoosts",
180
+ resourceType: "everything_boost",
181
+ isMutation: false,
182
+ },
183
+ () =>
184
+ this.client.GET("/boosts.json", {
185
+ params: {
186
+ query: { page: options?.page },
187
+ },
188
+ })
189
+ , options
190
+ );
191
+ }
192
+
193
+ /**
194
+ * Completed cards across all accessible projects, grouped by project (paginated).
195
+ * @param options - Optional query parameters
196
+ * @returns All BucketCardsGroup across all pages, with .meta.totalCount
197
+ *
198
+ * @example
199
+ * ```ts
200
+ * const result = await client.everything.everythingCompletedCards();
201
+ * ```
202
+ */
203
+ async everythingCompletedCards(options?: EverythingCompletedCardsEverythingOptions): Promise<ListResult<BucketCardsGroup>> {
204
+ return this.requestPaginated(
205
+ {
206
+ service: "Everything",
207
+ operation: "GetEverythingCompletedCards",
208
+ resourceType: "everything_completed_card",
209
+ isMutation: false,
210
+ },
211
+ () =>
212
+ this.client.GET("/cards/completed.json", {
213
+ params: {
214
+ query: { page: options?.page },
215
+ },
216
+ })
217
+ , options
218
+ );
219
+ }
220
+
221
+ /**
222
+ * Open cards with no due date across all accessible projects, grouped by project (paginated).
223
+ * @param options - Optional query parameters
224
+ * @returns All BucketCardsGroup across all pages, with .meta.totalCount
225
+ *
226
+ * @example
227
+ * ```ts
228
+ * const result = await client.everything.everythingNoDueDateCards();
229
+ * ```
230
+ */
231
+ async everythingNoDueDateCards(options?: EverythingNoDueDateCardsEverythingOptions): Promise<ListResult<BucketCardsGroup>> {
232
+ return this.requestPaginated(
233
+ {
234
+ service: "Everything",
235
+ operation: "GetEverythingNoDueDateCards",
236
+ resourceType: "everything_no_due_date_card",
237
+ isMutation: false,
238
+ },
239
+ () =>
240
+ this.client.GET("/cards/no_due_date.json", {
241
+ params: {
242
+ query: { page: options?.page },
243
+ },
244
+ })
245
+ , options
246
+ );
247
+ }
248
+
249
+ /**
250
+ * Cards parked in a project's "Not now" column across all accessible projects, grouped by project (paginated).
251
+ * @param options - Optional query parameters
252
+ * @returns All BucketCardsGroup across all pages, with .meta.totalCount
253
+ *
254
+ * @example
255
+ * ```ts
256
+ * const result = await client.everything.everythingNotNowCards();
257
+ * ```
258
+ */
259
+ async everythingNotNowCards(options?: EverythingNotNowCardsEverythingOptions): Promise<ListResult<BucketCardsGroup>> {
260
+ return this.requestPaginated(
261
+ {
262
+ service: "Everything",
263
+ operation: "GetEverythingNotNowCards",
264
+ resourceType: "everything_not_now_card",
265
+ isMutation: false,
266
+ },
267
+ () =>
268
+ this.client.GET("/cards/not_now.json", {
269
+ params: {
270
+ query: { page: options?.page },
271
+ },
272
+ })
273
+ , options
274
+ );
275
+ }
276
+
277
+ /**
278
+ * Incomplete cards in active columns across all accessible projects, grouped by project (paginated).
279
+ * @param options - Optional query parameters
280
+ * @returns All BucketCardsGroup across all pages, with .meta.totalCount
281
+ *
282
+ * @example
283
+ * ```ts
284
+ * const result = await client.everything.everythingOpenCards();
285
+ * ```
286
+ */
287
+ async everythingOpenCards(options?: EverythingOpenCardsEverythingOptions): Promise<ListResult<BucketCardsGroup>> {
288
+ return this.requestPaginated(
289
+ {
290
+ service: "Everything",
291
+ operation: "GetEverythingOpenCards",
292
+ resourceType: "everything_open_card",
293
+ isMutation: false,
294
+ },
295
+ () =>
296
+ this.client.GET("/cards/open.json", {
297
+ params: {
298
+ query: { page: options?.page },
299
+ },
300
+ })
301
+ , options
302
+ );
303
+ }
304
+
305
+ /**
306
+ * Get every overdue card across all accessible projects, oldest-due-date-first.
307
+ * @returns Array of Card
308
+ *
309
+ * @example
310
+ * ```ts
311
+ * const result = await client.everything.everythingOverdueCards();
312
+ * ```
313
+ */
314
+ async everythingOverdueCards(): Promise<Card[]> {
315
+ const response = await this.request(
316
+ {
317
+ service: "Everything",
318
+ operation: "GetEverythingOverdueCards",
319
+ resourceType: "everything_overdue_card",
320
+ isMutation: false,
321
+ },
322
+ () =>
323
+ this.client.GET("/cards/overdue.json", {
324
+ })
325
+ );
326
+ return response ?? [];
327
+ }
328
+
329
+ /**
330
+ * Open, unassigned cards across all accessible projects, grouped by project (paginated).
331
+ * @param options - Optional query parameters
332
+ * @returns All BucketCardsGroup across all pages, with .meta.totalCount
333
+ *
334
+ * @example
335
+ * ```ts
336
+ * const result = await client.everything.everythingUnassignedCards();
337
+ * ```
338
+ */
339
+ async everythingUnassignedCards(options?: EverythingUnassignedCardsEverythingOptions): Promise<ListResult<BucketCardsGroup>> {
340
+ return this.requestPaginated(
341
+ {
342
+ service: "Everything",
343
+ operation: "GetEverythingUnassignedCards",
344
+ resourceType: "everything_unassigned_card",
345
+ isMutation: false,
346
+ },
347
+ () =>
348
+ this.client.GET("/cards/unassigned.json", {
349
+ params: {
350
+ query: { page: options?.page },
351
+ },
352
+ })
353
+ , options
354
+ );
355
+ }
356
+
357
+ /**
358
+ * Get every automatic check-in answer across all accessible projects, newest-first.
359
+ * @param options - Optional query parameters
360
+ * @returns All Recording across all pages, with .meta.totalCount
361
+ *
362
+ * @example
363
+ * ```ts
364
+ * const result = await client.everything.everythingCheckins();
365
+ * ```
366
+ */
367
+ async everythingCheckins(options?: EverythingCheckinsEverythingOptions): Promise<ListResult<Recording>> {
368
+ return this.requestPaginated(
369
+ {
370
+ service: "Everything",
371
+ operation: "GetEverythingCheckins",
372
+ resourceType: "everything_checkin",
373
+ isMutation: false,
374
+ },
375
+ () =>
376
+ this.client.GET("/checkins.json", {
377
+ params: {
378
+ query: { page: options?.page },
379
+ },
380
+ })
381
+ , options
382
+ );
383
+ }
384
+
385
+ /**
386
+ * Get every comment across all accessible projects, newest-first (paginated).
387
+ * @param options - Optional query parameters
388
+ * @returns All Recording across all pages, with .meta.totalCount
389
+ *
390
+ * @example
391
+ * ```ts
392
+ * const result = await client.everything.everythingComments();
393
+ * ```
394
+ */
395
+ async everythingComments(options?: EverythingCommentsEverythingOptions): Promise<ListResult<Recording>> {
396
+ return this.requestPaginated(
397
+ {
398
+ service: "Everything",
399
+ operation: "GetEverythingComments",
400
+ resourceType: "everything_comment",
401
+ isMutation: false,
402
+ },
403
+ () =>
404
+ this.client.GET("/comments.json", {
405
+ params: {
406
+ query: { page: options?.page },
407
+ },
408
+ })
409
+ , options
410
+ );
411
+ }
412
+
413
+ /**
414
+ * Get every file recording across all accessible projects, newest-first (paginated).
415
+ * @param options - Optional query parameters
416
+ * @returns All EverythingFile across all pages, with .meta.totalCount
417
+ *
418
+ * @example
419
+ * ```ts
420
+ * const result = await client.everything.everythingFiles();
421
+ * ```
422
+ */
423
+ async everythingFiles(options?: EverythingFilesEverythingOptions): Promise<ListResult<EverythingFile>> {
424
+ return this.requestPaginated(
425
+ {
426
+ service: "Everything",
427
+ operation: "GetEverythingFiles",
428
+ resourceType: "everything_file",
429
+ isMutation: false,
430
+ },
431
+ () =>
432
+ this.client.GET("/files.json", {
433
+ params: {
434
+ query: { kind: options?.kind, "people_ids[]": options?.peopleIds, page: options?.page },
435
+ },
436
+ })
437
+ , options
438
+ );
439
+ }
440
+
441
+ /**
442
+ * Get every inbox forward across all accessible projects, newest-first (paginated).
443
+ * @param options - Optional query parameters
444
+ * @returns All Recording across all pages, with .meta.totalCount
445
+ *
446
+ * @example
447
+ * ```ts
448
+ * const result = await client.everything.everythingForwards();
449
+ * ```
450
+ */
451
+ async everythingForwards(options?: EverythingForwardsEverythingOptions): Promise<ListResult<Recording>> {
452
+ return this.requestPaginated(
453
+ {
454
+ service: "Everything",
455
+ operation: "GetEverythingForwards",
456
+ resourceType: "everything_forward",
457
+ isMutation: false,
458
+ },
459
+ () =>
460
+ this.client.GET("/forwards.json", {
461
+ params: {
462
+ query: { page: options?.page },
463
+ },
464
+ })
465
+ , options
466
+ );
467
+ }
468
+
469
+ /**
470
+ * Get every message across all accessible projects, newest-first (paginated).
471
+ * @param options - Optional query parameters
472
+ * @returns All Recording across all pages, with .meta.totalCount
473
+ *
474
+ * @example
475
+ * ```ts
476
+ * const result = await client.everything.everythingMessages();
477
+ * ```
478
+ */
479
+ async everythingMessages(options?: EverythingMessagesEverythingOptions): Promise<ListResult<Recording>> {
480
+ return this.requestPaginated(
481
+ {
482
+ service: "Everything",
483
+ operation: "GetEverythingMessages",
484
+ resourceType: "everything_message",
485
+ isMutation: false,
486
+ },
487
+ () =>
488
+ this.client.GET("/messages.json", {
489
+ params: {
490
+ query: { page: options?.page },
491
+ },
492
+ })
493
+ , options
494
+ );
495
+ }
496
+
497
+ /**
498
+ * Completed to-dos across all accessible projects, grouped by project (paginated).
499
+ * @param options - Optional query parameters
500
+ * @returns All BucketTodosGroup across all pages, with .meta.totalCount
501
+ *
502
+ * @example
503
+ * ```ts
504
+ * const result = await client.everything.everythingCompletedTodos();
505
+ * ```
506
+ */
507
+ async everythingCompletedTodos(options?: EverythingCompletedTodosEverythingOptions): Promise<ListResult<BucketTodosGroup>> {
508
+ return this.requestPaginated(
509
+ {
510
+ service: "Everything",
511
+ operation: "GetEverythingCompletedTodos",
512
+ resourceType: "everything_completed_todo",
513
+ isMutation: false,
514
+ },
515
+ () =>
516
+ this.client.GET("/todos/completed.json", {
517
+ params: {
518
+ query: { page: options?.page },
519
+ },
520
+ })
521
+ , options
522
+ );
523
+ }
524
+
525
+ /**
526
+ * Open to-dos with no due date across all accessible projects, grouped by project (paginated).
527
+ * @param options - Optional query parameters
528
+ * @returns All BucketTodosGroup across all pages, with .meta.totalCount
529
+ *
530
+ * @example
531
+ * ```ts
532
+ * const result = await client.everything.everythingNoDueDateTodos();
533
+ * ```
534
+ */
535
+ async everythingNoDueDateTodos(options?: EverythingNoDueDateTodosEverythingOptions): Promise<ListResult<BucketTodosGroup>> {
536
+ return this.requestPaginated(
537
+ {
538
+ service: "Everything",
539
+ operation: "GetEverythingNoDueDateTodos",
540
+ resourceType: "everything_no_due_date_todo",
541
+ isMutation: false,
542
+ },
543
+ () =>
544
+ this.client.GET("/todos/no_due_date.json", {
545
+ params: {
546
+ query: { page: options?.page },
547
+ },
548
+ })
549
+ , options
550
+ );
551
+ }
552
+
553
+ /**
554
+ * Active, incomplete to-dos across all accessible projects, grouped by project (paginated).
555
+ * @param options - Optional query parameters
556
+ * @returns All BucketTodosGroup across all pages, with .meta.totalCount
557
+ *
558
+ * @example
559
+ * ```ts
560
+ * const result = await client.everything.everythingOpenTodos();
561
+ * ```
562
+ */
563
+ async everythingOpenTodos(options?: EverythingOpenTodosEverythingOptions): Promise<ListResult<BucketTodosGroup>> {
564
+ return this.requestPaginated(
565
+ {
566
+ service: "Everything",
567
+ operation: "GetEverythingOpenTodos",
568
+ resourceType: "everything_open_todo",
569
+ isMutation: false,
570
+ },
571
+ () =>
572
+ this.client.GET("/todos/open.json", {
573
+ params: {
574
+ query: { page: options?.page },
575
+ },
576
+ })
577
+ , options
578
+ );
579
+ }
580
+
581
+ /**
582
+ * Get every overdue to-do across all accessible projects, oldest-due-date-first.
583
+ * @returns Array of Todo
584
+ *
585
+ * @example
586
+ * ```ts
587
+ * const result = await client.everything.everythingOverdueTodos();
588
+ * ```
589
+ */
590
+ async everythingOverdueTodos(): Promise<Todo[]> {
591
+ const response = await this.request(
592
+ {
593
+ service: "Everything",
594
+ operation: "GetEverythingOverdueTodos",
595
+ resourceType: "everything_overdue_todo",
596
+ isMutation: false,
597
+ },
598
+ () =>
599
+ this.client.GET("/todos/overdue.json", {
600
+ })
601
+ );
602
+ return response ?? [];
603
+ }
604
+
605
+ /**
606
+ * Open, unassigned to-dos across all accessible projects, grouped by project (paginated).
607
+ * @param options - Optional query parameters
608
+ * @returns All BucketTodosGroup across all pages, with .meta.totalCount
609
+ *
610
+ * @example
611
+ * ```ts
612
+ * const result = await client.everything.everythingUnassignedTodos();
613
+ * ```
614
+ */
615
+ async everythingUnassignedTodos(options?: EverythingUnassignedTodosEverythingOptions): Promise<ListResult<BucketTodosGroup>> {
616
+ return this.requestPaginated(
617
+ {
618
+ service: "Everything",
619
+ operation: "GetEverythingUnassignedTodos",
620
+ resourceType: "everything_unassigned_todo",
621
+ isMutation: false,
622
+ },
623
+ () =>
624
+ this.client.GET("/todos/unassigned.json", {
625
+ params: {
626
+ query: { page: options?.page },
627
+ },
628
+ })
629
+ , options
630
+ );
631
+ }
632
+ }
@@ -1,14 +1,15 @@
1
1
  export { AccountService } from "./account.js";
2
2
  export { AttachmentsService } from "./attachments.js";
3
+ export { EverythingService } from "./everything.js";
3
4
  export { BoostsService } from "./boosts.js";
4
5
  export { CardColumnsService } from "./card-columns.js";
5
6
  export { WormholesService } from "./wormholes.js";
7
+ export { MessageTypesService } from "./message-types.js";
6
8
  export { ToolsService } from "./tools.js";
7
9
  export { WebhooksService } from "./webhooks.js";
8
10
  export { CardsService } from "./cards.js";
9
11
  export { CardStepsService } from "./card-steps.js";
10
12
  export { CardTablesService } from "./card-tables.js";
11
- export { MessageTypesService } from "./message-types.js";
12
13
  export { CampfiresService } from "./campfires.js";
13
14
  export { PeopleService } from "./people.js";
14
15
  export { ClientApprovalsService } from "./client-approvals.js";