@rawdash/connector-clickup 0.0.1

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.
@@ -0,0 +1,761 @@
1
+ import { BaseConnector, ConnectorContext, SyncOptions, StorageHandle, SyncResult, ConnectorDoc } from '@rawdash/core';
2
+ import { z } from 'zod';
3
+
4
+ declare const configFields: z.ZodObject<{
5
+ apiToken: z.ZodObject<{
6
+ $secret: z.ZodString;
7
+ }, z.core.$strip>;
8
+ teamId: z.ZodString;
9
+ resources: z.ZodOptional<z.ZodArray<z.ZodEnum<{
10
+ spaces: "spaces";
11
+ folders: "folders";
12
+ lists: "lists";
13
+ tasks: "tasks";
14
+ task_events: "task_events";
15
+ }>>>;
16
+ }, z.core.$strip>;
17
+ declare const doc: ConnectorDoc;
18
+ interface ClickUpSettings {
19
+ teamId: string;
20
+ resources?: readonly ClickUpResource[];
21
+ }
22
+ declare const clickupCredentials: {
23
+ apiToken: {
24
+ description: string;
25
+ auth: "required";
26
+ };
27
+ };
28
+ type ClickUpCredentials = typeof clickupCredentials;
29
+ declare const PHASE_ORDER: readonly ["spaces", "folders", "lists", "tasks", "task_events"];
30
+ type ClickUpPhase = (typeof PHASE_ORDER)[number];
31
+ type ClickUpResource = ClickUpPhase;
32
+ declare const clickupResources: {
33
+ readonly clickup_space: {
34
+ readonly shape: "entity";
35
+ readonly filterable: [];
36
+ readonly description: "Workspace spaces with their name and privacy flag.";
37
+ readonly endpoint: "GET /team/{team_id}/space";
38
+ readonly fields: [{
39
+ readonly name: "name";
40
+ readonly description: "Space name.";
41
+ }, {
42
+ readonly name: "private";
43
+ readonly description: "Whether the space is private.";
44
+ }, {
45
+ readonly name: "archived";
46
+ readonly description: "Whether the space is archived.";
47
+ }];
48
+ readonly responses: {
49
+ readonly spaces: z.ZodObject<{
50
+ spaces: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
51
+ id: z.ZodString;
52
+ name: z.ZodString;
53
+ private: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
54
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
55
+ }, z.core.$strip>>>>;
56
+ }, z.core.$strip>;
57
+ };
58
+ };
59
+ readonly clickup_folder: {
60
+ readonly shape: "entity";
61
+ readonly filterable: [{
62
+ readonly field: "spaceId";
63
+ readonly ops: ["eq"];
64
+ }];
65
+ readonly description: "Folders within each space, with their parent space.";
66
+ readonly endpoint: "GET /space/{space_id}/folder";
67
+ readonly fields: [{
68
+ readonly name: "name";
69
+ readonly description: "Folder name.";
70
+ }, {
71
+ readonly name: "spaceId";
72
+ readonly description: "Parent space id.";
73
+ }, {
74
+ readonly name: "taskCount";
75
+ readonly description: "Number of tasks across the folder at sync time.";
76
+ }, {
77
+ readonly name: "archived";
78
+ readonly description: "Whether the folder is archived.";
79
+ }];
80
+ readonly responses: {
81
+ readonly folders: z.ZodObject<{
82
+ folders: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
83
+ id: z.ZodString;
84
+ name: z.ZodString;
85
+ hidden: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
86
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
87
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
88
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
89
+ id: z.ZodString;
90
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
91
+ }, z.core.$strip>>>;
92
+ }, z.core.$strip>>>>;
93
+ }, z.core.$strip>;
94
+ };
95
+ };
96
+ readonly clickup_list: {
97
+ readonly shape: "entity";
98
+ readonly filterable: [{
99
+ readonly field: "spaceId";
100
+ readonly ops: ["eq"];
101
+ }];
102
+ readonly description: "Lists (folder-scoped and folderless) with their parent folder and space.";
103
+ readonly endpoint: "GET /space/{space_id}/list and GET /folder/{folder_id}/list";
104
+ readonly fields: [{
105
+ readonly name: "name";
106
+ readonly description: "List name.";
107
+ }, {
108
+ readonly name: "folderId";
109
+ readonly description: "Parent folder id (null if folderless).";
110
+ }, {
111
+ readonly name: "spaceId";
112
+ readonly description: "Parent space id.";
113
+ }, {
114
+ readonly name: "taskCount";
115
+ readonly description: "Number of tasks in the list at sync time.";
116
+ }, {
117
+ readonly name: "archived";
118
+ readonly description: "Whether the list is archived.";
119
+ }];
120
+ readonly responses: {
121
+ readonly lists: z.ZodObject<{
122
+ lists: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
123
+ id: z.ZodString;
124
+ name: z.ZodString;
125
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
126
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
127
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
128
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
129
+ }, z.core.$strip>>>;
130
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
131
+ id: z.ZodString;
132
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
133
+ }, z.core.$strip>>>;
134
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
135
+ id: z.ZodString;
136
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
137
+ }, z.core.$strip>>>;
138
+ }, z.core.$strip>>>>;
139
+ }, z.core.$strip>;
140
+ };
141
+ };
142
+ readonly clickup_task: {
143
+ readonly shape: "entity";
144
+ readonly filterable: [{
145
+ readonly field: "statusType";
146
+ readonly ops: ["eq"];
147
+ readonly values: ["open", "custom", "closed", "done"];
148
+ }, {
149
+ readonly field: "status";
150
+ readonly ops: ["eq"];
151
+ }, {
152
+ readonly field: "listId";
153
+ readonly ops: ["eq"];
154
+ }];
155
+ readonly description: "Tasks with their status, priority, assignees, parent list / folder / space, tags, and lifecycle timestamps.";
156
+ readonly endpoint: "GET /team/{team_id}/task";
157
+ readonly fields: [{
158
+ readonly name: "name";
159
+ readonly description: "Task name.";
160
+ }, {
161
+ readonly name: "status";
162
+ readonly description: "Current status name (e.g. \"in progress\").";
163
+ }, {
164
+ readonly name: "statusType";
165
+ readonly description: "Status category: open, custom, closed, or done.";
166
+ }, {
167
+ readonly name: "priority";
168
+ readonly description: "Priority label (urgent / high / normal / low), or null.";
169
+ }, {
170
+ readonly name: "listId";
171
+ readonly description: "Parent list id.";
172
+ }, {
173
+ readonly name: "folderId";
174
+ readonly description: "Parent folder id.";
175
+ }, {
176
+ readonly name: "spaceId";
177
+ readonly description: "Parent space id.";
178
+ }, {
179
+ readonly name: "assignees";
180
+ readonly description: "Assignee user ids.";
181
+ }, {
182
+ readonly name: "assigneeCount";
183
+ readonly description: "Number of assignees.";
184
+ }, {
185
+ readonly name: "tags";
186
+ readonly description: "Tag names on the task.";
187
+ }, {
188
+ readonly name: "createdAt";
189
+ readonly description: "When the task was created (Unix ms).";
190
+ }, {
191
+ readonly name: "closedAt";
192
+ readonly description: "When the task was closed (Unix ms; null if open).";
193
+ }, {
194
+ readonly name: "dueDate";
195
+ readonly description: "Task due date (Unix ms; null if unset).";
196
+ }];
197
+ readonly responses: {
198
+ readonly tasks: z.ZodObject<{
199
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
200
+ id: z.ZodString;
201
+ name: z.ZodString;
202
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
203
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
204
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
205
+ }, z.core.$strip>>>;
206
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
207
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
208
+ }, z.core.$strip>>>;
209
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
210
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
211
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
212
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
213
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
214
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
215
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
216
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
217
+ }, z.core.$strip>>>;
218
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
219
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
220
+ }, z.core.$strip>>>>;
221
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
222
+ name: z.ZodString;
223
+ }, z.core.$strip>>>>;
224
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
225
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
226
+ id: z.ZodString;
227
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
228
+ }, z.core.$strip>>>;
229
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
230
+ id: z.ZodString;
231
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
232
+ }, z.core.$strip>>>;
233
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
234
+ id: z.ZodString;
235
+ }, z.core.$strip>>>;
236
+ }, z.core.$strip>>>>;
237
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
238
+ }, z.core.$strip>;
239
+ };
240
+ };
241
+ readonly clickup_task_event: {
242
+ readonly shape: "event";
243
+ readonly filterable: [{
244
+ readonly field: "kind";
245
+ readonly ops: ["eq"];
246
+ readonly values: ["created", "closed"];
247
+ }, {
248
+ readonly field: "listId";
249
+ readonly ops: ["eq"];
250
+ }];
251
+ readonly description: "Task lifecycle events (created / closed) derived from each task's date_created and date_closed. The scope is cleared and rewritten from a full task scan on every sync (including incremental runs).";
252
+ readonly endpoint: "GET /team/{team_id}/task";
253
+ readonly notes: "Derived from each task's own date_created / date_closed timestamps, not from a separate per-task activity call. Drives created-per-day and closed-per-day throughput timeseries.";
254
+ readonly fields: [{
255
+ readonly name: "kind";
256
+ readonly description: "\"created\" or \"closed\".";
257
+ }, {
258
+ readonly name: "taskId";
259
+ readonly description: "Task the event belongs to.";
260
+ }, {
261
+ readonly name: "listId";
262
+ readonly description: "Parent list id, denormalised.";
263
+ }, {
264
+ readonly name: "spaceId";
265
+ readonly description: "Parent space id, denormalised.";
266
+ }, {
267
+ readonly name: "status";
268
+ readonly description: "Task status name at sync time.";
269
+ }];
270
+ readonly responses: {
271
+ readonly task_events: z.ZodObject<{
272
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
273
+ id: z.ZodString;
274
+ name: z.ZodString;
275
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
276
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
277
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
278
+ }, z.core.$strip>>>;
279
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
280
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
281
+ }, z.core.$strip>>>;
282
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
283
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
284
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
285
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
286
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
287
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
288
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
289
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
290
+ }, z.core.$strip>>>;
291
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
292
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
293
+ }, z.core.$strip>>>>;
294
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
295
+ name: z.ZodString;
296
+ }, z.core.$strip>>>>;
297
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
298
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
299
+ id: z.ZodString;
300
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
301
+ }, z.core.$strip>>>;
302
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
303
+ id: z.ZodString;
304
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
305
+ }, z.core.$strip>>>;
306
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
307
+ id: z.ZodString;
308
+ }, z.core.$strip>>>;
309
+ }, z.core.$strip>>>>;
310
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
311
+ }, z.core.$strip>;
312
+ };
313
+ };
314
+ };
315
+ declare const id = "clickup";
316
+ declare class ClickUpConnector extends BaseConnector<ClickUpSettings, ClickUpCredentials> {
317
+ static readonly id = "clickup";
318
+ static readonly resources: {
319
+ readonly clickup_space: {
320
+ readonly shape: "entity";
321
+ readonly filterable: [];
322
+ readonly description: "Workspace spaces with their name and privacy flag.";
323
+ readonly endpoint: "GET /team/{team_id}/space";
324
+ readonly fields: [{
325
+ readonly name: "name";
326
+ readonly description: "Space name.";
327
+ }, {
328
+ readonly name: "private";
329
+ readonly description: "Whether the space is private.";
330
+ }, {
331
+ readonly name: "archived";
332
+ readonly description: "Whether the space is archived.";
333
+ }];
334
+ readonly responses: {
335
+ readonly spaces: z.ZodObject<{
336
+ spaces: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
337
+ id: z.ZodString;
338
+ name: z.ZodString;
339
+ private: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
340
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
341
+ }, z.core.$strip>>>>;
342
+ }, z.core.$strip>;
343
+ };
344
+ };
345
+ readonly clickup_folder: {
346
+ readonly shape: "entity";
347
+ readonly filterable: [{
348
+ readonly field: "spaceId";
349
+ readonly ops: ["eq"];
350
+ }];
351
+ readonly description: "Folders within each space, with their parent space.";
352
+ readonly endpoint: "GET /space/{space_id}/folder";
353
+ readonly fields: [{
354
+ readonly name: "name";
355
+ readonly description: "Folder name.";
356
+ }, {
357
+ readonly name: "spaceId";
358
+ readonly description: "Parent space id.";
359
+ }, {
360
+ readonly name: "taskCount";
361
+ readonly description: "Number of tasks across the folder at sync time.";
362
+ }, {
363
+ readonly name: "archived";
364
+ readonly description: "Whether the folder is archived.";
365
+ }];
366
+ readonly responses: {
367
+ readonly folders: z.ZodObject<{
368
+ folders: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
369
+ id: z.ZodString;
370
+ name: z.ZodString;
371
+ hidden: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
372
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
373
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
374
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
375
+ id: z.ZodString;
376
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
377
+ }, z.core.$strip>>>;
378
+ }, z.core.$strip>>>>;
379
+ }, z.core.$strip>;
380
+ };
381
+ };
382
+ readonly clickup_list: {
383
+ readonly shape: "entity";
384
+ readonly filterable: [{
385
+ readonly field: "spaceId";
386
+ readonly ops: ["eq"];
387
+ }];
388
+ readonly description: "Lists (folder-scoped and folderless) with their parent folder and space.";
389
+ readonly endpoint: "GET /space/{space_id}/list and GET /folder/{folder_id}/list";
390
+ readonly fields: [{
391
+ readonly name: "name";
392
+ readonly description: "List name.";
393
+ }, {
394
+ readonly name: "folderId";
395
+ readonly description: "Parent folder id (null if folderless).";
396
+ }, {
397
+ readonly name: "spaceId";
398
+ readonly description: "Parent space id.";
399
+ }, {
400
+ readonly name: "taskCount";
401
+ readonly description: "Number of tasks in the list at sync time.";
402
+ }, {
403
+ readonly name: "archived";
404
+ readonly description: "Whether the list is archived.";
405
+ }];
406
+ readonly responses: {
407
+ readonly lists: z.ZodObject<{
408
+ lists: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
409
+ id: z.ZodString;
410
+ name: z.ZodString;
411
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
412
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
413
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
414
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
415
+ }, z.core.$strip>>>;
416
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
417
+ id: z.ZodString;
418
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
419
+ }, z.core.$strip>>>;
420
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
421
+ id: z.ZodString;
422
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
423
+ }, z.core.$strip>>>;
424
+ }, z.core.$strip>>>>;
425
+ }, z.core.$strip>;
426
+ };
427
+ };
428
+ readonly clickup_task: {
429
+ readonly shape: "entity";
430
+ readonly filterable: [{
431
+ readonly field: "statusType";
432
+ readonly ops: ["eq"];
433
+ readonly values: ["open", "custom", "closed", "done"];
434
+ }, {
435
+ readonly field: "status";
436
+ readonly ops: ["eq"];
437
+ }, {
438
+ readonly field: "listId";
439
+ readonly ops: ["eq"];
440
+ }];
441
+ readonly description: "Tasks with their status, priority, assignees, parent list / folder / space, tags, and lifecycle timestamps.";
442
+ readonly endpoint: "GET /team/{team_id}/task";
443
+ readonly fields: [{
444
+ readonly name: "name";
445
+ readonly description: "Task name.";
446
+ }, {
447
+ readonly name: "status";
448
+ readonly description: "Current status name (e.g. \"in progress\").";
449
+ }, {
450
+ readonly name: "statusType";
451
+ readonly description: "Status category: open, custom, closed, or done.";
452
+ }, {
453
+ readonly name: "priority";
454
+ readonly description: "Priority label (urgent / high / normal / low), or null.";
455
+ }, {
456
+ readonly name: "listId";
457
+ readonly description: "Parent list id.";
458
+ }, {
459
+ readonly name: "folderId";
460
+ readonly description: "Parent folder id.";
461
+ }, {
462
+ readonly name: "spaceId";
463
+ readonly description: "Parent space id.";
464
+ }, {
465
+ readonly name: "assignees";
466
+ readonly description: "Assignee user ids.";
467
+ }, {
468
+ readonly name: "assigneeCount";
469
+ readonly description: "Number of assignees.";
470
+ }, {
471
+ readonly name: "tags";
472
+ readonly description: "Tag names on the task.";
473
+ }, {
474
+ readonly name: "createdAt";
475
+ readonly description: "When the task was created (Unix ms).";
476
+ }, {
477
+ readonly name: "closedAt";
478
+ readonly description: "When the task was closed (Unix ms; null if open).";
479
+ }, {
480
+ readonly name: "dueDate";
481
+ readonly description: "Task due date (Unix ms; null if unset).";
482
+ }];
483
+ readonly responses: {
484
+ readonly tasks: z.ZodObject<{
485
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
486
+ id: z.ZodString;
487
+ name: z.ZodString;
488
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
489
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
490
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
491
+ }, z.core.$strip>>>;
492
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
493
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
494
+ }, z.core.$strip>>>;
495
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
496
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
497
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
498
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
499
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
500
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
501
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
502
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
503
+ }, z.core.$strip>>>;
504
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
505
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
506
+ }, z.core.$strip>>>>;
507
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
508
+ name: z.ZodString;
509
+ }, z.core.$strip>>>>;
510
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
511
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
512
+ id: z.ZodString;
513
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
514
+ }, z.core.$strip>>>;
515
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
516
+ id: z.ZodString;
517
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
518
+ }, z.core.$strip>>>;
519
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
520
+ id: z.ZodString;
521
+ }, z.core.$strip>>>;
522
+ }, z.core.$strip>>>>;
523
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
524
+ }, z.core.$strip>;
525
+ };
526
+ };
527
+ readonly clickup_task_event: {
528
+ readonly shape: "event";
529
+ readonly filterable: [{
530
+ readonly field: "kind";
531
+ readonly ops: ["eq"];
532
+ readonly values: ["created", "closed"];
533
+ }, {
534
+ readonly field: "listId";
535
+ readonly ops: ["eq"];
536
+ }];
537
+ readonly description: "Task lifecycle events (created / closed) derived from each task's date_created and date_closed. The scope is cleared and rewritten from a full task scan on every sync (including incremental runs).";
538
+ readonly endpoint: "GET /team/{team_id}/task";
539
+ readonly notes: "Derived from each task's own date_created / date_closed timestamps, not from a separate per-task activity call. Drives created-per-day and closed-per-day throughput timeseries.";
540
+ readonly fields: [{
541
+ readonly name: "kind";
542
+ readonly description: "\"created\" or \"closed\".";
543
+ }, {
544
+ readonly name: "taskId";
545
+ readonly description: "Task the event belongs to.";
546
+ }, {
547
+ readonly name: "listId";
548
+ readonly description: "Parent list id, denormalised.";
549
+ }, {
550
+ readonly name: "spaceId";
551
+ readonly description: "Parent space id, denormalised.";
552
+ }, {
553
+ readonly name: "status";
554
+ readonly description: "Task status name at sync time.";
555
+ }];
556
+ readonly responses: {
557
+ readonly task_events: z.ZodObject<{
558
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
559
+ id: z.ZodString;
560
+ name: z.ZodString;
561
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
562
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
563
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
564
+ }, z.core.$strip>>>;
565
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
566
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
567
+ }, z.core.$strip>>>;
568
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
569
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
570
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
571
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
572
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
573
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
574
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
575
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
576
+ }, z.core.$strip>>>;
577
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
578
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
579
+ }, z.core.$strip>>>>;
580
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
581
+ name: z.ZodString;
582
+ }, z.core.$strip>>>>;
583
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
584
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
585
+ id: z.ZodString;
586
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
587
+ }, z.core.$strip>>>;
588
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
589
+ id: z.ZodString;
590
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
591
+ }, z.core.$strip>>>;
592
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
593
+ id: z.ZodString;
594
+ }, z.core.$strip>>>;
595
+ }, z.core.$strip>>>>;
596
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
597
+ }, z.core.$strip>;
598
+ };
599
+ };
600
+ };
601
+ static readonly schemas: {
602
+ readonly spaces: z.ZodObject<{
603
+ spaces: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
604
+ id: z.ZodString;
605
+ name: z.ZodString;
606
+ private: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
607
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
608
+ }, z.core.$strip>>>>;
609
+ }, z.core.$strip>;
610
+ } & {
611
+ readonly folders: z.ZodObject<{
612
+ folders: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
613
+ id: z.ZodString;
614
+ name: z.ZodString;
615
+ hidden: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
616
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
617
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
618
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
619
+ id: z.ZodString;
620
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
621
+ }, z.core.$strip>>>;
622
+ }, z.core.$strip>>>>;
623
+ }, z.core.$strip>;
624
+ } & {
625
+ readonly lists: z.ZodObject<{
626
+ lists: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
627
+ id: z.ZodString;
628
+ name: z.ZodString;
629
+ archived: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
630
+ task_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
631
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
632
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
633
+ }, z.core.$strip>>>;
634
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
635
+ id: z.ZodString;
636
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
637
+ }, z.core.$strip>>>;
638
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
639
+ id: z.ZodString;
640
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
641
+ }, z.core.$strip>>>;
642
+ }, z.core.$strip>>>>;
643
+ }, z.core.$strip>;
644
+ } & {
645
+ readonly tasks: z.ZodObject<{
646
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
647
+ id: z.ZodString;
648
+ name: z.ZodString;
649
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
650
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
651
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
652
+ }, z.core.$strip>>>;
653
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
654
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
655
+ }, z.core.$strip>>>;
656
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
657
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
658
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
659
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
660
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
661
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
662
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
663
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
664
+ }, z.core.$strip>>>;
665
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
666
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
667
+ }, z.core.$strip>>>>;
668
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
669
+ name: z.ZodString;
670
+ }, z.core.$strip>>>>;
671
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
672
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
673
+ id: z.ZodString;
674
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
675
+ }, z.core.$strip>>>;
676
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
677
+ id: z.ZodString;
678
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
679
+ }, z.core.$strip>>>;
680
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
681
+ id: z.ZodString;
682
+ }, z.core.$strip>>>;
683
+ }, z.core.$strip>>>>;
684
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
685
+ }, z.core.$strip>;
686
+ } & {
687
+ readonly task_events: z.ZodObject<{
688
+ tasks: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
689
+ id: z.ZodString;
690
+ name: z.ZodString;
691
+ status: z.ZodOptional<z.ZodNullable<z.ZodObject<{
692
+ status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
693
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
694
+ }, z.core.$strip>>>;
695
+ priority: z.ZodOptional<z.ZodNullable<z.ZodObject<{
696
+ priority: z.ZodOptional<z.ZodNullable<z.ZodString>>;
697
+ }, z.core.$strip>>>;
698
+ date_created: z.ZodOptional<z.ZodNullable<z.ZodString>>;
699
+ date_updated: z.ZodOptional<z.ZodNullable<z.ZodString>>;
700
+ date_closed: z.ZodOptional<z.ZodNullable<z.ZodString>>;
701
+ date_done: z.ZodOptional<z.ZodNullable<z.ZodString>>;
702
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
703
+ time_estimate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
704
+ creator: z.ZodOptional<z.ZodNullable<z.ZodObject<{
705
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
706
+ }, z.core.$strip>>>;
707
+ assignees: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
708
+ id: z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>;
709
+ }, z.core.$strip>>>>;
710
+ tags: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
711
+ name: z.ZodString;
712
+ }, z.core.$strip>>>>;
713
+ url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
714
+ list: z.ZodOptional<z.ZodNullable<z.ZodObject<{
715
+ id: z.ZodString;
716
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
717
+ }, z.core.$strip>>>;
718
+ folder: z.ZodOptional<z.ZodNullable<z.ZodObject<{
719
+ id: z.ZodString;
720
+ name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
721
+ }, z.core.$strip>>>;
722
+ space: z.ZodOptional<z.ZodNullable<z.ZodObject<{
723
+ id: z.ZodString;
724
+ }, z.core.$strip>>>;
725
+ }, z.core.$strip>>>>;
726
+ last_page: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
727
+ }, z.core.$strip>;
728
+ } & Readonly<Record<string, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>>>;
729
+ static create(input: unknown, ctx?: ConnectorContext): ClickUpConnector;
730
+ readonly id = "clickup";
731
+ readonly credentials: {
732
+ apiToken: {
733
+ description: string;
734
+ auth: "required";
735
+ };
736
+ };
737
+ private spacesCache;
738
+ private buildHeaders;
739
+ private apiGet;
740
+ private get teamPath();
741
+ private getSpaces;
742
+ private getFolders;
743
+ private getFolderlessLists;
744
+ private getFolderLists;
745
+ private buildTasksUrl;
746
+ private singleSpec;
747
+ private fetchSpacesPage;
748
+ private fetchFoldersPage;
749
+ private fetchListsPage;
750
+ private fetchTasksPage;
751
+ private writeSpaces;
752
+ private writeFolders;
753
+ private writeLists;
754
+ private writeTasks;
755
+ private writeTaskEvents;
756
+ private clearScopeOnFirstPage;
757
+ private writePhase;
758
+ sync(options: SyncOptions, storage: StorageHandle, signal?: AbortSignal): Promise<SyncResult>;
759
+ }
760
+
761
+ export { ClickUpConnector, type ClickUpResource, type ClickUpSettings, configFields, ClickUpConnector as default, doc, id, clickupResources as resources };