nixelo 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.
Files changed (154) hide show
  1. package/README.md +98 -0
  2. package/dist/commands/apiKeys.d.ts +3 -0
  3. package/dist/commands/apiKeys.d.ts.map +1 -0
  4. package/dist/commands/apiKeys.js +200 -0
  5. package/dist/commands/apiKeys.js.map +1 -0
  6. package/dist/commands/auth.d.ts +7 -0
  7. package/dist/commands/auth.d.ts.map +1 -0
  8. package/dist/commands/auth.js +201 -0
  9. package/dist/commands/auth.js.map +1 -0
  10. package/dist/commands/automations.d.ts +3 -0
  11. package/dist/commands/automations.d.ts.map +1 -0
  12. package/dist/commands/automations.js +302 -0
  13. package/dist/commands/automations.js.map +1 -0
  14. package/dist/commands/commandTree.d.ts +10 -0
  15. package/dist/commands/commandTree.d.ts.map +1 -0
  16. package/dist/commands/commandTree.js +36 -0
  17. package/dist/commands/commandTree.js.map +1 -0
  18. package/dist/commands/completion.d.ts +6 -0
  19. package/dist/commands/completion.d.ts.map +1 -0
  20. package/dist/commands/completion.js +101 -0
  21. package/dist/commands/completion.js.map +1 -0
  22. package/dist/commands/config.d.ts +3 -0
  23. package/dist/commands/config.d.ts.map +1 -0
  24. package/dist/commands/config.js +133 -0
  25. package/dist/commands/config.js.map +1 -0
  26. package/dist/commands/documents.d.ts +3 -0
  27. package/dist/commands/documents.d.ts.map +1 -0
  28. package/dist/commands/documents.js +200 -0
  29. package/dist/commands/documents.js.map +1 -0
  30. package/dist/commands/fields.d.ts +3 -0
  31. package/dist/commands/fields.d.ts.map +1 -0
  32. package/dist/commands/fields.js +199 -0
  33. package/dist/commands/fields.js.map +1 -0
  34. package/dist/commands/filters.d.ts +3 -0
  35. package/dist/commands/filters.d.ts.map +1 -0
  36. package/dist/commands/filters.js +243 -0
  37. package/dist/commands/filters.js.map +1 -0
  38. package/dist/commands/global.d.ts +5 -0
  39. package/dist/commands/global.d.ts.map +1 -0
  40. package/dist/commands/global.js +42 -0
  41. package/dist/commands/global.js.map +1 -0
  42. package/dist/commands/index.d.ts +23 -0
  43. package/dist/commands/index.d.ts.map +1 -0
  44. package/dist/commands/index.js +23 -0
  45. package/dist/commands/index.js.map +1 -0
  46. package/dist/commands/invites.d.ts +3 -0
  47. package/dist/commands/invites.d.ts.map +1 -0
  48. package/dist/commands/invites.js +113 -0
  49. package/dist/commands/invites.js.map +1 -0
  50. package/dist/commands/issues/filter.d.ts +19 -0
  51. package/dist/commands/issues/filter.d.ts.map +1 -0
  52. package/dist/commands/issues/filter.js +72 -0
  53. package/dist/commands/issues/filter.js.map +1 -0
  54. package/dist/commands/issues/options.d.ts +33 -0
  55. package/dist/commands/issues/options.d.ts.map +1 -0
  56. package/dist/commands/issues/options.js +68 -0
  57. package/dist/commands/issues/options.js.map +1 -0
  58. package/dist/commands/issues/output.d.ts +12 -0
  59. package/dist/commands/issues/output.d.ts.map +1 -0
  60. package/dist/commands/issues/output.js +285 -0
  61. package/dist/commands/issues/output.js.map +1 -0
  62. package/dist/commands/issues.d.ts +3 -0
  63. package/dist/commands/issues.d.ts.map +1 -0
  64. package/dist/commands/issues.js +483 -0
  65. package/dist/commands/issues.js.map +1 -0
  66. package/dist/commands/labels.d.ts +3 -0
  67. package/dist/commands/labels.d.ts.map +1 -0
  68. package/dist/commands/labels.js +222 -0
  69. package/dist/commands/labels.js.map +1 -0
  70. package/dist/commands/notifications.d.ts +3 -0
  71. package/dist/commands/notifications.d.ts.map +1 -0
  72. package/dist/commands/notifications.js +127 -0
  73. package/dist/commands/notifications.js.map +1 -0
  74. package/dist/commands/projects.d.ts +5 -0
  75. package/dist/commands/projects.d.ts.map +1 -0
  76. package/dist/commands/projects.js +749 -0
  77. package/dist/commands/projects.js.map +1 -0
  78. package/dist/commands/registerAll.d.ts +3 -0
  79. package/dist/commands/registerAll.d.ts.map +1 -0
  80. package/dist/commands/registerAll.js +54 -0
  81. package/dist/commands/registerAll.js.map +1 -0
  82. package/dist/commands/sprints.d.ts +3 -0
  83. package/dist/commands/sprints.d.ts.map +1 -0
  84. package/dist/commands/sprints.js +359 -0
  85. package/dist/commands/sprints.js.map +1 -0
  86. package/dist/commands/stats.d.ts +3 -0
  87. package/dist/commands/stats.d.ts.map +1 -0
  88. package/dist/commands/stats.js +206 -0
  89. package/dist/commands/stats.js.map +1 -0
  90. package/dist/commands/teams.d.ts +3 -0
  91. package/dist/commands/teams.d.ts.map +1 -0
  92. package/dist/commands/teams.js +435 -0
  93. package/dist/commands/teams.js.map +1 -0
  94. package/dist/commands/templates.d.ts +3 -0
  95. package/dist/commands/templates.d.ts.map +1 -0
  96. package/dist/commands/templates.js +264 -0
  97. package/dist/commands/templates.js.map +1 -0
  98. package/dist/commands/time.d.ts +3 -0
  99. package/dist/commands/time.d.ts.map +1 -0
  100. package/dist/commands/time.js +191 -0
  101. package/dist/commands/time.js.map +1 -0
  102. package/dist/commands/tokens.d.ts +3 -0
  103. package/dist/commands/tokens.d.ts.map +1 -0
  104. package/dist/commands/tokens.js +76 -0
  105. package/dist/commands/tokens.js.map +1 -0
  106. package/dist/commands/users.d.ts +5 -0
  107. package/dist/commands/users.d.ts.map +1 -0
  108. package/dist/commands/users.js +160 -0
  109. package/dist/commands/users.js.map +1 -0
  110. package/dist/commands/version.d.ts +3 -0
  111. package/dist/commands/version.d.ts.map +1 -0
  112. package/dist/commands/version.js +17 -0
  113. package/dist/commands/version.js.map +1 -0
  114. package/dist/commands/webhooks.d.ts +3 -0
  115. package/dist/commands/webhooks.d.ts.map +1 -0
  116. package/dist/commands/webhooks.js +407 -0
  117. package/dist/commands/webhooks.js.map +1 -0
  118. package/dist/commands/workspaces.d.ts +3 -0
  119. package/dist/commands/workspaces.d.ts.map +1 -0
  120. package/dist/commands/workspaces.js +424 -0
  121. package/dist/commands/workspaces.js.map +1 -0
  122. package/dist/index.d.ts +8 -0
  123. package/dist/index.d.ts.map +1 -0
  124. package/dist/index.js +14 -0
  125. package/dist/index.js.map +1 -0
  126. package/dist/lib/auth.d.ts +20 -0
  127. package/dist/lib/auth.d.ts.map +1 -0
  128. package/dist/lib/auth.js +80 -0
  129. package/dist/lib/auth.js.map +1 -0
  130. package/dist/lib/convex.d.ts +1243 -0
  131. package/dist/lib/convex.d.ts.map +1 -0
  132. package/dist/lib/convex.js +675 -0
  133. package/dist/lib/convex.js.map +1 -0
  134. package/dist/lib/options.d.ts +10 -0
  135. package/dist/lib/options.d.ts.map +1 -0
  136. package/dist/lib/options.js +79 -0
  137. package/dist/lib/options.js.map +1 -0
  138. package/dist/lib/output.d.ts +19 -0
  139. package/dist/lib/output.d.ts.map +1 -0
  140. package/dist/lib/output.js +60 -0
  141. package/dist/lib/output.js.map +1 -0
  142. package/dist/lib/project-key.d.ts +5 -0
  143. package/dist/lib/project-key.d.ts.map +1 -0
  144. package/dist/lib/project-key.js +56 -0
  145. package/dist/lib/project-key.js.map +1 -0
  146. package/dist/lib/prompt.d.ts +5 -0
  147. package/dist/lib/prompt.d.ts.map +1 -0
  148. package/dist/lib/prompt.js +28 -0
  149. package/dist/lib/prompt.js.map +1 -0
  150. package/dist/lib/user-picker.d.ts +4 -0
  151. package/dist/lib/user-picker.d.ts.map +1 -0
  152. package/dist/lib/user-picker.js +57 -0
  153. package/dist/lib/user-picker.js.map +1 -0
  154. package/package.json +51 -0
@@ -0,0 +1,1243 @@
1
+ /**
2
+ * Convex HTTP API client for nixelo CLI.
3
+ *
4
+ * Calls the Convex deployment's HTTP action endpoints with CLI token auth.
5
+ */
6
+ export interface CliToken {
7
+ id: string;
8
+ name: string;
9
+ tokenPrefix: string;
10
+ organizationId: string;
11
+ scopes: string[];
12
+ isActive: boolean;
13
+ expiresAt?: number;
14
+ lastUsedAt?: number;
15
+ createdAt: number;
16
+ revokedAt?: number;
17
+ }
18
+ export declare const CLI_API_PATHS: {
19
+ readonly auth: "api/cli/auth";
20
+ readonly tokens: "api/cli/tokens";
21
+ readonly tokenRevoke: "api/cli/tokens/revoke";
22
+ readonly whoami: "api/cli/whoami";
23
+ readonly user: "api/cli/user";
24
+ readonly usersSearch: "api/cli/users/search";
25
+ readonly usersStats: "api/cli/users/stats";
26
+ readonly invites: "api/cli/invites";
27
+ readonly inviteResend: "api/cli/invites/resend";
28
+ readonly inviteRevoke: "api/cli/invites/revoke";
29
+ readonly apiKeys: "api/cli/apikeys";
30
+ readonly apiKeyRevoke: "api/cli/apikeys/revoke";
31
+ readonly apiKeyRotate: "api/cli/apikeys/rotate";
32
+ readonly apiKeyUsage: "api/cli/apikeys/usage";
33
+ readonly automations: "api/cli/automations";
34
+ readonly automationRemove: "api/cli/automations/remove";
35
+ readonly automationUpdate: "api/cli/automations/update";
36
+ readonly documents: "api/cli/documents";
37
+ readonly document: "api/cli/document";
38
+ readonly documentSearch: "api/cli/documents/search";
39
+ readonly documentTree: "api/cli/documents/tree";
40
+ readonly customFields: "api/cli/fields";
41
+ readonly time: "api/cli/time";
42
+ readonly timeSummary: "api/cli/time/summary";
43
+ readonly templates: "api/cli/templates";
44
+ readonly statsCycleTime: "api/cli/stats/cycle-time";
45
+ readonly statsOrg: "api/cli/stats/org";
46
+ readonly statsProject: "api/cli/stats/project";
47
+ readonly savedFilters: "api/cli/filters";
48
+ readonly savedFilterFavorite: "api/cli/filters/favorite";
49
+ readonly savedFilterRemove: "api/cli/filters/remove";
50
+ readonly savedFilterUpdate: "api/cli/filters/update";
51
+ readonly notifications: "api/cli/notifications";
52
+ readonly notificationDismiss: "api/cli/notifications/dismiss";
53
+ readonly issues: "api/cli/issues";
54
+ readonly issuesBulkAssign: "api/cli/issues/bulk/assign";
55
+ readonly issuesBulkDate: "api/cli/issues/bulk/date";
56
+ readonly issuesBulkLabels: "api/cli/issues/bulk/labels";
57
+ readonly issuesBulkLifecycle: "api/cli/issues/bulk/lifecycle";
58
+ readonly issuesBulkPriority: "api/cli/issues/bulk/priority";
59
+ readonly issuesBulkSprint: "api/cli/issues/bulk/sprint";
60
+ readonly issuesBulkStatus: "api/cli/issues/bulk/status";
61
+ readonly issue: "api/cli/issue";
62
+ readonly issueUpdate: "api/cli/issue/update";
63
+ readonly issueMove: "api/cli/issue/move";
64
+ readonly issueDelete: "api/cli/issue/delete";
65
+ readonly issueArchive: "api/cli/issue/archive";
66
+ readonly issueRestore: "api/cli/issue/restore";
67
+ readonly issueSubtasks: "api/cli/issue/subtasks";
68
+ readonly issueSimilar: "api/cli/issue/similar";
69
+ readonly issueComments: "api/cli/issue/comments";
70
+ readonly issueComment: "api/cli/issue/comment";
71
+ readonly issueActivity: "api/cli/issue/activity";
72
+ readonly projects: "api/cli/projects";
73
+ readonly project: "api/cli/project";
74
+ readonly projectUpdate: "api/cli/project/update";
75
+ readonly projectDelete: "api/cli/project/delete";
76
+ readonly projectRestore: "api/cli/project/restore";
77
+ readonly projectWorkflow: "api/cli/project/workflow";
78
+ readonly projectWorkflowSet: "api/cli/project/workflow/set";
79
+ readonly projectWorkflowReorder: "api/cli/project/workflow/reorder";
80
+ readonly projectMembers: "api/cli/project/members";
81
+ readonly projectMemberAdd: "api/cli/project/member/add";
82
+ readonly projectMemberRemove: "api/cli/project/member/remove";
83
+ readonly projectMemberRole: "api/cli/project/member/role";
84
+ readonly projectStats: "api/cli/project/stats";
85
+ readonly sprints: "api/cli/sprints";
86
+ readonly sprint: "api/cli/sprint";
87
+ readonly sprintStart: "api/cli/sprint/start";
88
+ readonly sprintUpdate: "api/cli/sprint/update";
89
+ readonly sprintComplete: "api/cli/sprint/complete";
90
+ readonly sprintBurndown: "api/cli/sprint/burndown";
91
+ readonly statsSprint: "api/cli/stats/sprint";
92
+ readonly statsTeam: "api/cli/stats/team";
93
+ readonly labels: "api/cli/labels";
94
+ readonly labelUpdate: "api/cli/label/update";
95
+ readonly labelRemove: "api/cli/label/remove";
96
+ readonly teams: "api/cli/teams";
97
+ readonly team: "api/cli/team";
98
+ readonly teamUpdate: "api/cli/team/update";
99
+ readonly teamDelete: "api/cli/team/delete";
100
+ readonly teamRestore: "api/cli/team/restore";
101
+ readonly teamMemberAdd: "api/cli/team/member/add";
102
+ readonly teamMemberRemove: "api/cli/team/member/remove";
103
+ readonly teamMemberRole: "api/cli/team/member/role";
104
+ readonly workspaces: "api/cli/workspaces";
105
+ readonly workspace: "api/cli/workspace";
106
+ readonly workspaceUpdate: "api/cli/workspace/update";
107
+ readonly workspaceArchive: "api/cli/workspace/archive";
108
+ readonly workspaceDelete: "api/cli/workspace/delete";
109
+ readonly workspaceMembers: "api/cli/workspace/members";
110
+ readonly workspaceMemberAdd: "api/cli/workspace/member/add";
111
+ readonly workspaceMemberRemove: "api/cli/workspace/member/remove";
112
+ readonly workspaceMemberRole: "api/cli/workspace/member/role";
113
+ readonly webhooks: "api/cli/webhooks";
114
+ readonly webhookUpdate: "api/cli/webhook/update";
115
+ readonly webhookDelete: "api/cli/webhook/delete";
116
+ readonly webhookTest: "api/cli/webhook/test";
117
+ readonly webhookExecutions: "api/cli/webhook/executions";
118
+ readonly webhookRetry: "api/cli/webhook/retry";
119
+ };
120
+ export declare function buildCliApiUrl(path: string): string;
121
+ export declare function isCliAuthenticationError(error: unknown): boolean;
122
+ export declare function isCliPermissionError(error: unknown): boolean;
123
+ export declare function listTokens(): Promise<CliToken[]>;
124
+ export declare function revokeToken(tokenId: string): Promise<{
125
+ success: true;
126
+ }>;
127
+ export type CurrentUser = {
128
+ email?: string;
129
+ name?: string;
130
+ userId: string;
131
+ organizationId: string;
132
+ organizationName: string;
133
+ organizationRole: string;
134
+ organizationSlug: string;
135
+ scopes: string[];
136
+ status: string;
137
+ timezone: string;
138
+ twoFactorEnabled: boolean;
139
+ };
140
+ export declare function getCurrentUser(): Promise<CurrentUser>;
141
+ export type CliUser = {
142
+ email?: string;
143
+ name?: string;
144
+ role: string;
145
+ status: string;
146
+ userId: string;
147
+ };
148
+ export type CliUserProfile = {
149
+ email?: string;
150
+ firstName?: string;
151
+ image?: string;
152
+ lastName?: string;
153
+ name?: string;
154
+ organizationRole: string;
155
+ outOfOffice?: {
156
+ delegateUserId?: string;
157
+ endsAt: number;
158
+ note?: string;
159
+ publicNote?: string;
160
+ reason: string;
161
+ startsAt: number;
162
+ updatedAt: number;
163
+ };
164
+ status: string;
165
+ userId: string;
166
+ };
167
+ export type CliUserSearchResult = {
168
+ results: CliUser[];
169
+ truncated: boolean;
170
+ };
171
+ export type CliUserStats = {
172
+ comments: number;
173
+ issuesAssigned: number;
174
+ issuesCompleted: number;
175
+ issuesCreated: number;
176
+ projects: number;
177
+ };
178
+ export type CliInvite = {
179
+ createdAt: number;
180
+ email: string;
181
+ expiresAt: number;
182
+ inviteId: string;
183
+ invitedBy: string;
184
+ inviterName: string;
185
+ projectId?: string;
186
+ projectName?: string;
187
+ projectRole?: string;
188
+ role: string;
189
+ };
190
+ export type CliInviteListResult = {
191
+ invites: CliInvite[];
192
+ truncated: boolean;
193
+ };
194
+ export type CliInviteMutationResult = {
195
+ email: string;
196
+ expiresAt?: number;
197
+ inviteId: string;
198
+ kind: "ok";
199
+ role?: string;
200
+ };
201
+ export type CliApiKey = {
202
+ createdAt: number;
203
+ expiresAt?: number;
204
+ id: string;
205
+ isActive: boolean;
206
+ keyPrefix: string;
207
+ lastUsedAt?: number;
208
+ name: string;
209
+ projectId?: string;
210
+ projectKey?: string;
211
+ projectName?: string;
212
+ rateLimit: number;
213
+ revokedAt?: number;
214
+ rotatedAt?: number;
215
+ rotatedFromId?: string;
216
+ scopes: string[];
217
+ usageCount: number;
218
+ };
219
+ export type CliApiKeyListResult = {
220
+ apiKeys: CliApiKey[];
221
+ truncated: boolean;
222
+ };
223
+ export type CliApiKeyGenerationResult = {
224
+ apiKey: string;
225
+ expiresAt?: number;
226
+ id: string;
227
+ keyPrefix: string;
228
+ kind: "ok";
229
+ name: string;
230
+ scopes: string[];
231
+ };
232
+ export type CliApiKeyGenerationInput = {
233
+ expiresAt?: number;
234
+ name: string;
235
+ scopes: string[];
236
+ };
237
+ export type CliApiKeyRevocationResult = {
238
+ id: string;
239
+ keyPrefix: string;
240
+ kind: "ok";
241
+ name: string;
242
+ revokedAt: number;
243
+ };
244
+ export type CliApiKeyRotationResult = {
245
+ apiKey: string;
246
+ gracePeriodMs: number;
247
+ id: string;
248
+ keyPrefix: string;
249
+ kind: "ok";
250
+ name: string;
251
+ oldKeyExpiresAt: number;
252
+ scopes: string[];
253
+ };
254
+ export type CliApiKeyUsageResult = {
255
+ avgResponseTime: number;
256
+ errorCount: number;
257
+ last24Hours: number;
258
+ lastHour: number;
259
+ recentLogs: Array<{
260
+ createdAt: number;
261
+ endpoint: string;
262
+ error?: string;
263
+ method: string;
264
+ responseTime: number;
265
+ statusCode: number;
266
+ }>;
267
+ successCount: number;
268
+ totalCalls: number;
269
+ };
270
+ export type AutomationActionValue = {
271
+ type: "set_assignee";
272
+ assigneeId: string | null;
273
+ } | {
274
+ type: "set_priority";
275
+ priority: "lowest" | "low" | "medium" | "high" | "highest";
276
+ } | {
277
+ type: "add_label";
278
+ label: string;
279
+ } | {
280
+ type: "add_comment";
281
+ comment: string;
282
+ } | {
283
+ type: "send_notification";
284
+ message: string;
285
+ recipients?: string[];
286
+ };
287
+ export type AutomationRule = {
288
+ actionType: AutomationActionValue["type"];
289
+ actionValue: AutomationActionValue;
290
+ createdAt: number;
291
+ createdBy: string;
292
+ description?: string;
293
+ executionCount: number;
294
+ id: string;
295
+ isActive: boolean;
296
+ name: string;
297
+ projectKey: string;
298
+ trigger: "status_changed" | "assignee_changed" | "priority_changed" | "issue_created" | "label_added" | "stale_in_status";
299
+ triggerValue?: string;
300
+ updatedAt: number;
301
+ };
302
+ export type AutomationRuleCreateInput = {
303
+ action: AutomationActionValue;
304
+ description?: string;
305
+ name: string;
306
+ projectKey: string;
307
+ trigger: AutomationRule["trigger"];
308
+ triggerValue?: string;
309
+ };
310
+ export type AutomationRuleUpdateInput = {
311
+ action?: AutomationActionValue;
312
+ description?: string | null;
313
+ isActive?: boolean;
314
+ name?: string;
315
+ trigger?: AutomationRule["trigger"];
316
+ triggerValue?: string | null;
317
+ };
318
+ export type AutomationRuleRemovalResult = {
319
+ deleted: true;
320
+ id: string;
321
+ name: string;
322
+ projectKey: string;
323
+ };
324
+ export type SavedFilterCriteria = {
325
+ assigneeId?: string[];
326
+ createdAt?: {
327
+ from?: string;
328
+ to?: string;
329
+ };
330
+ dueDate?: {
331
+ from?: string;
332
+ to?: string;
333
+ };
334
+ epicId?: string[];
335
+ labels?: string[];
336
+ priority?: Array<"lowest" | "low" | "medium" | "high" | "highest">;
337
+ query?: string;
338
+ reporterId?: string[];
339
+ sprintId?: string[];
340
+ startDate?: {
341
+ from?: string;
342
+ to?: string;
343
+ };
344
+ status?: string[];
345
+ type?: Array<"task" | "bug" | "story" | "epic">;
346
+ };
347
+ export type SavedFilterBoardView = {
348
+ cardDisplay: {
349
+ assignee: boolean;
350
+ attachments?: boolean;
351
+ dueDate: boolean;
352
+ estimatedHours?: boolean;
353
+ issueType: boolean;
354
+ labels: boolean;
355
+ linkedDocuments?: boolean;
356
+ loggedHours?: boolean;
357
+ priority: boolean;
358
+ sprint?: boolean;
359
+ startDate: boolean;
360
+ storyPoints: boolean;
361
+ };
362
+ collapsedColumns?: string[];
363
+ orderBy?: "manual" | "priority" | "dueDate" | "startDate" | "createdAt" | "updatedAt";
364
+ showEmptyColumns?: boolean;
365
+ swimlane: "none" | "priority" | "assignee" | "type" | "label" | "dueDate" | "sprint" | "createdBy";
366
+ };
367
+ export type SavedFilter = {
368
+ boardView: SavedFilterBoardView;
369
+ createdAt: number;
370
+ creatorId: string;
371
+ creatorName: string;
372
+ filters: SavedFilterCriteria;
373
+ id: string;
374
+ isFavorite: boolean;
375
+ isOwner: boolean;
376
+ isPublic: boolean;
377
+ name: string;
378
+ projectKey: string;
379
+ updatedAt: number;
380
+ };
381
+ export type SavedFilterListResult = {
382
+ filters: SavedFilter[];
383
+ truncated: boolean;
384
+ };
385
+ export type SavedFilterCreateInput = {
386
+ filters: unknown;
387
+ isPublic: boolean;
388
+ name: string;
389
+ projectKey: string;
390
+ };
391
+ export type SavedFilterUpdateInput = {
392
+ filters?: unknown;
393
+ isPublic?: boolean;
394
+ name?: string;
395
+ };
396
+ export type SavedFilterRemovalResult = {
397
+ deleted: true;
398
+ id: string;
399
+ name: string;
400
+ projectKey: string;
401
+ };
402
+ export type SavedFilterFavoriteResult = {
403
+ id: string;
404
+ isFavorite: boolean;
405
+ name: string;
406
+ projectKey: string;
407
+ };
408
+ export type Notification = {
409
+ actorName?: string;
410
+ createdAt: number;
411
+ documentId?: string;
412
+ id: string;
413
+ isRead: boolean;
414
+ issueId?: string;
415
+ message: string;
416
+ projectId?: string;
417
+ title: string;
418
+ type: string;
419
+ };
420
+ export type NotificationListResult = {
421
+ notifications: Notification[];
422
+ truncated: boolean;
423
+ };
424
+ export declare function searchUsers(query: string, limit?: number): Promise<CliUserSearchResult>;
425
+ export declare function getUser(reference: string): Promise<CliUserProfile>;
426
+ export declare function getUserStats(): Promise<CliUserStats>;
427
+ export declare function listInvites(limit?: number): Promise<CliInviteListResult>;
428
+ export declare function listApiKeys(limit?: number): Promise<CliApiKeyListResult>;
429
+ export declare function generateApiKey(input: CliApiKeyGenerationInput): Promise<CliApiKeyGenerationResult>;
430
+ export declare function revokeApiKey(keyId: string): Promise<CliApiKeyRevocationResult>;
431
+ export declare function rotateApiKey(keyId: string): Promise<CliApiKeyRotationResult>;
432
+ export declare function getApiKeyUsage(keyId: string): Promise<CliApiKeyUsageResult>;
433
+ export declare function listAutomationRules(projectKey: string, options?: {
434
+ limit?: number;
435
+ }): Promise<AutomationRule[] | null>;
436
+ export declare function createAutomationRule(input: AutomationRuleCreateInput): Promise<AutomationRule | null>;
437
+ export declare function updateAutomationRule(id: string, input: AutomationRuleUpdateInput): Promise<AutomationRule | null>;
438
+ export declare function removeAutomationRule(id: string): Promise<AutomationRuleRemovalResult | null>;
439
+ export declare function listSavedFilters(projectKey: string, options?: {
440
+ limit?: number;
441
+ }): Promise<SavedFilterListResult | null>;
442
+ export declare function createSavedFilter(input: SavedFilterCreateInput): Promise<SavedFilter | null>;
443
+ export declare function updateSavedFilter(id: string, input: SavedFilterUpdateInput): Promise<SavedFilter | null>;
444
+ export declare function removeSavedFilter(id: string): Promise<SavedFilterRemovalResult | null>;
445
+ export declare function toggleSavedFilterFavorite(id: string): Promise<SavedFilterFavoriteResult | null>;
446
+ export declare function listNotifications(options?: {
447
+ limit?: number;
448
+ unread?: boolean;
449
+ }): Promise<NotificationListResult>;
450
+ export type NotificationReadResult = {
451
+ id: string;
452
+ isRead: true;
453
+ title: string;
454
+ };
455
+ export declare function markNotificationRead(id: string): Promise<NotificationReadResult | null>;
456
+ export type NotificationDismissResult = {
457
+ id: string;
458
+ isArchived: true;
459
+ title: string;
460
+ };
461
+ export declare function dismissNotification(id: string): Promise<NotificationDismissResult | null>;
462
+ export declare const CUSTOM_FIELD_TYPE_VALUES: readonly ["text", "number", "select", "multiselect", "multiemail", "date", "checkbox", "url", "user"];
463
+ export type CustomFieldType = (typeof CUSTOM_FIELD_TYPE_VALUES)[number];
464
+ export type CustomField = {
465
+ createdAt: number;
466
+ description?: string;
467
+ fieldKey: string;
468
+ fieldType: CustomFieldType;
469
+ id: string;
470
+ isRequired: boolean;
471
+ name: string;
472
+ options?: string[];
473
+ projectKey: string;
474
+ updatedAt?: number;
475
+ };
476
+ export type CustomFieldListResult = {
477
+ fields: CustomField[];
478
+ truncated: boolean;
479
+ };
480
+ export type CustomFieldCreateInput = {
481
+ description?: string;
482
+ fieldKey: string;
483
+ fieldType: CustomFieldType;
484
+ isRequired: boolean;
485
+ name: string;
486
+ options?: string[];
487
+ projectKey: string;
488
+ };
489
+ export type CustomFieldUpdateInput = {
490
+ description?: string;
491
+ id: string;
492
+ isRequired?: boolean;
493
+ name?: string;
494
+ options?: string[];
495
+ };
496
+ export type CustomFieldRemoveResult = {
497
+ deleted: true;
498
+ id: string;
499
+ };
500
+ export declare function listCustomFields(projectKey: string, options?: {
501
+ limit?: number;
502
+ }): Promise<CustomFieldListResult | null>;
503
+ export declare function createCustomField(input: CustomFieldCreateInput): Promise<CustomField | null>;
504
+ export declare function updateCustomField(input: CustomFieldUpdateInput): Promise<CustomField | null>;
505
+ export declare function removeCustomField(id: string): Promise<CustomFieldRemoveResult | null>;
506
+ export type RunningTimeEntry = {
507
+ activity?: string;
508
+ billable: boolean;
509
+ description?: string;
510
+ id: string;
511
+ issueKey?: string;
512
+ projectKey?: string;
513
+ startTime: number;
514
+ tags: string[];
515
+ };
516
+ export type StartTimeEntryInput = {
517
+ activity?: string;
518
+ billable?: boolean;
519
+ description?: string;
520
+ issueKey?: string;
521
+ projectKey?: string;
522
+ tags?: string[];
523
+ };
524
+ export declare function startTimeEntry(input: StartTimeEntryInput): Promise<RunningTimeEntry | null>;
525
+ export type StoppedTimeEntry = {
526
+ duration: number;
527
+ endTime: number;
528
+ id: string;
529
+ totalCost: number;
530
+ };
531
+ export declare function stopTimeEntry(id?: string): Promise<StoppedTimeEntry | null>;
532
+ export type TimeEntry = {
533
+ activity?: string;
534
+ billable: boolean;
535
+ billed: boolean;
536
+ currency: string;
537
+ description?: string;
538
+ duration: number;
539
+ endTime?: number;
540
+ id: string;
541
+ issueKey?: string;
542
+ projectKey?: string;
543
+ startTime: number;
544
+ tags: string[];
545
+ totalCost?: number;
546
+ };
547
+ export type TimeEntryListResult = {
548
+ entries: TimeEntry[];
549
+ truncated: boolean;
550
+ };
551
+ export declare function listTimeEntries(options: {
552
+ endDate?: number;
553
+ issue?: string;
554
+ limit?: number;
555
+ project?: string;
556
+ startDate?: number;
557
+ }): Promise<TimeEntryListResult | null>;
558
+ export type TimeEntrySummary = {
559
+ billableDuration: number;
560
+ entryCount: number;
561
+ totalCost: number;
562
+ totalDuration: number;
563
+ truncated: boolean;
564
+ };
565
+ export declare function summarizeTimeEntries(options: {
566
+ endDate?: number;
567
+ project?: string;
568
+ startDate?: number;
569
+ }): Promise<TimeEntrySummary | null>;
570
+ export declare const ISSUE_TEMPLATE_TYPE_VALUES: readonly ["task", "bug", "story", "epic"];
571
+ export type IssueTemplateType = (typeof ISSUE_TEMPLATE_TYPE_VALUES)[number];
572
+ export declare const ISSUE_TEMPLATE_PRIORITY_VALUES: readonly ["lowest", "low", "medium", "high", "highest"];
573
+ export type IssueTemplatePriority = (typeof ISSUE_TEMPLATE_PRIORITY_VALUES)[number];
574
+ export type IssueTemplate = {
575
+ createdAt: number;
576
+ defaultAssigneeId?: string;
577
+ defaultLabels: string[];
578
+ defaultPriority: IssueTemplatePriority;
579
+ defaultStatus?: string | null;
580
+ defaultStoryPoints?: number | null;
581
+ descriptionTemplate: string;
582
+ id: string;
583
+ isDefault: boolean;
584
+ name: string;
585
+ projectKey: string;
586
+ titleTemplate: string;
587
+ type: IssueTemplateType;
588
+ };
589
+ export type IssueTemplateListResult = {
590
+ templates: IssueTemplate[];
591
+ truncated: boolean;
592
+ };
593
+ export type IssueTemplateCreateInput = {
594
+ defaultLabels: string[];
595
+ defaultPriority: IssueTemplatePriority;
596
+ defaultStatus?: string;
597
+ defaultStoryPoints?: number;
598
+ descriptionTemplate: string;
599
+ isDefault?: boolean;
600
+ name: string;
601
+ projectKey: string;
602
+ titleTemplate: string;
603
+ type: IssueTemplateType;
604
+ };
605
+ export type IssueTemplateUpdateInput = {
606
+ defaultLabels?: string[];
607
+ defaultPriority?: IssueTemplatePriority;
608
+ defaultStatus?: string | null;
609
+ defaultStoryPoints?: number | null;
610
+ descriptionTemplate?: string;
611
+ isDefault?: boolean;
612
+ name?: string;
613
+ titleTemplate?: string;
614
+ };
615
+ export declare function listIssueTemplates(projectKey: string, options?: {
616
+ limit?: number;
617
+ type?: IssueTemplateType;
618
+ }): Promise<IssueTemplateListResult | null>;
619
+ export declare function createIssueTemplate(input: IssueTemplateCreateInput): Promise<IssueTemplate | null>;
620
+ export declare function updateIssueTemplate(id: string, updates: IssueTemplateUpdateInput): Promise<IssueTemplate | null>;
621
+ export type IssueTemplateRemoveResult = {
622
+ deleted: true;
623
+ id: string;
624
+ };
625
+ export declare function removeIssueTemplate(id: string): Promise<IssueTemplateRemoveResult | null>;
626
+ export declare function sendInvite(email: string, role: string): Promise<CliInviteMutationResult>;
627
+ export declare function revokeInvite(inviteId: string): Promise<CliInviteMutationResult>;
628
+ export declare function resendInvite(inviteId: string): Promise<CliInviteMutationResult>;
629
+ export interface Issue {
630
+ key: string;
631
+ title: string;
632
+ description?: string;
633
+ status: string;
634
+ priority?: string;
635
+ type?: string;
636
+ assigneeId?: string;
637
+ startDate?: number;
638
+ dueDate?: number;
639
+ estimatedHours?: number;
640
+ loggedHours?: number;
641
+ storyPoints?: number;
642
+ labels?: string[];
643
+ sprintId?: string;
644
+ epicId?: string;
645
+ createdAt: number;
646
+ updatedAt?: number;
647
+ }
648
+ export type IssueUpdateInput = {
649
+ assigneeId?: string | null;
650
+ description?: string;
651
+ dueDate?: number | null;
652
+ epicKey?: string | null;
653
+ estimatedHours?: number | null;
654
+ labels?: string[];
655
+ priority?: string;
656
+ sprintId?: string | null;
657
+ startDate?: number | null;
658
+ storyPoints?: number | null;
659
+ title?: string;
660
+ type?: string;
661
+ };
662
+ export type IssueDeleteResult = {
663
+ deleted: true;
664
+ key: string;
665
+ title: string;
666
+ };
667
+ export type IssueBulkResult = {
668
+ matched: number;
669
+ requested: number;
670
+ updated: number;
671
+ };
672
+ export type IssueComment = {
673
+ id: string;
674
+ content: string;
675
+ authorId: string;
676
+ authorName: string;
677
+ createdAt: number;
678
+ updatedAt: number;
679
+ reactions: Array<{
680
+ emoji: string;
681
+ userIds: string[];
682
+ }>;
683
+ };
684
+ export type IssueActivity = {
685
+ id: string;
686
+ action: string;
687
+ field?: string;
688
+ oldValue?: string;
689
+ newValue?: string;
690
+ displayOldValue?: string;
691
+ displayNewValue?: string;
692
+ userId: string;
693
+ userName: string;
694
+ createdAt: number;
695
+ updatedAt?: number;
696
+ };
697
+ export declare function listIssues(options?: {
698
+ assignee?: string;
699
+ epic?: string;
700
+ label?: string;
701
+ limit?: number;
702
+ priority?: string;
703
+ project?: string;
704
+ search?: string;
705
+ sprintId?: string;
706
+ status?: string;
707
+ type?: string;
708
+ }): Promise<Issue[]>;
709
+ export declare function bulkUpdateIssueStatus(keys: string[], status: string): Promise<IssueBulkResult>;
710
+ export declare function bulkUpdateIssuePriority(keys: string[], priority: string): Promise<IssueBulkResult>;
711
+ export declare function bulkUpdateIssueDate(keys: string[], field: "dueDate" | "startDate", value: number | null): Promise<IssueBulkResult>;
712
+ export declare function bulkIssueLifecycle(keys: string[], action: "archive" | "delete" | "restore"): Promise<IssueBulkResult>;
713
+ export declare function bulkAssignIssues(keys: string[], assignee: string | null): Promise<IssueBulkResult>;
714
+ export declare function bulkUpdateIssueLabels(keys: string[], action: "add" | "remove", labels: string[]): Promise<IssueBulkResult>;
715
+ export declare function bulkMoveIssuesToSprint(keys: string[], sprint: string | null): Promise<IssueBulkResult>;
716
+ export interface Project {
717
+ key: string;
718
+ name: string;
719
+ description?: string;
720
+ }
721
+ export interface Sprint {
722
+ id: string;
723
+ projectKey: string;
724
+ name: string;
725
+ goal?: string;
726
+ startDate?: number;
727
+ endDate?: number;
728
+ status: "future" | "active" | "completed";
729
+ issueCount: number;
730
+ completedCount: number;
731
+ totalPoints: number;
732
+ completedPoints: number;
733
+ truncated: boolean;
734
+ }
735
+ export type SprintCreateInput = {
736
+ projectKey: string;
737
+ name: string;
738
+ goal?: string;
739
+ startDate?: number;
740
+ endDate?: number;
741
+ };
742
+ export type SprintUpdateInput = {
743
+ name?: string;
744
+ goal?: string | null;
745
+ };
746
+ export type SprintCompletion = {
747
+ sprint: Sprint;
748
+ nextSprintId?: string;
749
+ };
750
+ export type SprintCompleteInput = {
751
+ destinationSprintId?: string | null;
752
+ autoCreateNext?: boolean;
753
+ };
754
+ export type SprintBurnPoint = {
755
+ day: number;
756
+ points: number;
757
+ };
758
+ export type SprintBurndown = {
759
+ id: string;
760
+ projectKey: string;
761
+ name: string;
762
+ burndown: {
763
+ totalPoints: number;
764
+ completedPoints: number;
765
+ remainingPoints: number;
766
+ progressPercentage: number;
767
+ totalIssues: number;
768
+ completedIssues: number;
769
+ idealBurndown: SprintBurnPoint[];
770
+ actualBurndown: SprintBurnPoint[];
771
+ daysElapsed: number;
772
+ totalDays: number;
773
+ };
774
+ };
775
+ export declare function listSprints(projectKey: string, options?: {
776
+ limit?: number;
777
+ }): Promise<Sprint[] | null>;
778
+ export declare function getSprint(id: string): Promise<Sprint | null>;
779
+ export declare function createSprint(input: SprintCreateInput): Promise<Sprint | null>;
780
+ export declare function startSprint(id: string, options?: {
781
+ startDate?: number;
782
+ endDate?: number;
783
+ }): Promise<Sprint | null>;
784
+ export declare function updateSprint(id: string, input: SprintUpdateInput): Promise<Sprint | null>;
785
+ export declare function completeSprint(id: string, input?: SprintCompleteInput): Promise<SprintCompletion | null>;
786
+ export declare function getSprintBurndown(id: string): Promise<SprintBurndown | null>;
787
+ export type ProjectCreateInput = {
788
+ boardType?: "kanban" | "scrum";
789
+ description?: string;
790
+ isPublic?: boolean;
791
+ key: string;
792
+ name: string;
793
+ teamSlug?: string;
794
+ workspaceSlug: string;
795
+ };
796
+ export type ProjectUpdateInput = {
797
+ name?: string;
798
+ description?: string;
799
+ isPublic?: boolean;
800
+ autoArchiveDays?: number;
801
+ wipEnforcement?: "badge" | "block";
802
+ };
803
+ export type ProjectDeleteResult = {
804
+ key: string;
805
+ name: string;
806
+ deleted: true;
807
+ };
808
+ export type ProjectRestoreResult = {
809
+ key: string;
810
+ name: string;
811
+ restored: true;
812
+ };
813
+ export interface ProjectWorkflowState {
814
+ id: string;
815
+ name: string;
816
+ category: string;
817
+ order: number;
818
+ wipLimit?: number;
819
+ }
820
+ export type ProjectWorkflowSetInput = {
821
+ workflowStates: ProjectWorkflowState[];
822
+ wipEnforcement?: "badge" | "block";
823
+ };
824
+ export interface ProjectMember {
825
+ userId: string;
826
+ userName: string;
827
+ userEmail?: string;
828
+ role: string;
829
+ createdAt: number;
830
+ }
831
+ export interface ProjectMemberChange extends ProjectMember {
832
+ projectKey: string;
833
+ deleted?: boolean;
834
+ }
835
+ export interface ProjectStatsBucket {
836
+ value: string;
837
+ count: number;
838
+ }
839
+ export interface ProjectStats {
840
+ key: string;
841
+ name: string;
842
+ totalIssues: number;
843
+ truncated: boolean;
844
+ byStatus: ProjectStatsBucket[];
845
+ byPriority: ProjectStatsBucket[];
846
+ byType: ProjectStatsBucket[];
847
+ byAssignee: ProjectStatsBucket[];
848
+ }
849
+ export interface CycleTimeStats {
850
+ cycleTimeData: number[];
851
+ cycleTimeMedianDays: number | null;
852
+ key: string;
853
+ leadTimeData: number[];
854
+ leadTimeMedianDays: number | null;
855
+ name: string;
856
+ sampleSize: number;
857
+ }
858
+ export interface OrgStats {
859
+ completedCount: number;
860
+ id: string;
861
+ isProjectsTruncated: boolean;
862
+ name: string;
863
+ projectCount: number;
864
+ slug: string;
865
+ totalIssues: number;
866
+ unassignedCount: number;
867
+ }
868
+ export interface Label {
869
+ id: string;
870
+ name: string;
871
+ color: string;
872
+ description?: string;
873
+ groupId?: string;
874
+ displayOrder?: number;
875
+ }
876
+ export type LabelUpdateInput = {
877
+ name?: string;
878
+ color?: string;
879
+ description?: string | null;
880
+ groupId?: string | null;
881
+ };
882
+ export type LabelRemoveResult = {
883
+ id: string;
884
+ name: string;
885
+ deleted: boolean;
886
+ cleanupPending: boolean;
887
+ };
888
+ export interface TeamMember {
889
+ userId: string;
890
+ userName: string;
891
+ userEmail?: string;
892
+ role: string;
893
+ createdAt: number;
894
+ }
895
+ export interface TeamMemberChange extends TeamMember {
896
+ slug: string;
897
+ deleted?: boolean;
898
+ }
899
+ export interface Team {
900
+ id: string;
901
+ slug: string;
902
+ name: string;
903
+ description?: string;
904
+ workspaceId: string;
905
+ leadId?: string;
906
+ leadName?: string;
907
+ isPrivate: boolean;
908
+ memberCount: number;
909
+ projectCount: number;
910
+ userRole?: string;
911
+ createdAt: number;
912
+ updatedAt: number;
913
+ }
914
+ export interface TeamDetail extends Team {
915
+ members: TeamMember[];
916
+ }
917
+ export type TeamUpdateInput = {
918
+ description?: string;
919
+ isPrivate?: boolean;
920
+ name?: string;
921
+ };
922
+ export type TeamDeleteResult = {
923
+ deleted: true;
924
+ id: string;
925
+ name: string;
926
+ slug: string;
927
+ };
928
+ export type TeamRestoreResult = {
929
+ restored: true;
930
+ id: string;
931
+ name: string;
932
+ slug: string;
933
+ };
934
+ export interface WorkspaceProject {
935
+ id: string;
936
+ key: string;
937
+ name: string;
938
+ description?: string;
939
+ teamId?: string;
940
+ }
941
+ export interface Workspace {
942
+ id: string;
943
+ slug: string;
944
+ name: string;
945
+ description?: string;
946
+ icon?: string;
947
+ teamCount: number;
948
+ projectCount: number;
949
+ userRole?: string;
950
+ createdAt: number;
951
+ updatedAt: number;
952
+ }
953
+ export interface WorkspaceDetail extends Workspace {
954
+ teams: Team[];
955
+ projects: WorkspaceProject[];
956
+ }
957
+ export interface WorkspaceMember {
958
+ userId: string;
959
+ userName: string;
960
+ userEmail?: string;
961
+ role: string;
962
+ createdAt: number;
963
+ }
964
+ export interface WorkspaceMemberChange extends WorkspaceMember {
965
+ slug: string;
966
+ deleted?: boolean;
967
+ }
968
+ export type WorkspaceUpdateInput = {
969
+ description?: string;
970
+ icon?: string;
971
+ name?: string;
972
+ };
973
+ export type WorkspaceArchiveResult = {
974
+ archived: true;
975
+ id: string;
976
+ name: string;
977
+ slug: string;
978
+ };
979
+ export type WorkspaceDeleteResult = {
980
+ deleted: true;
981
+ id: string;
982
+ name: string;
983
+ slug: string;
984
+ };
985
+ export interface Webhook {
986
+ id: string;
987
+ projectKey: string;
988
+ name: string;
989
+ url: string;
990
+ events: string[];
991
+ isActive: boolean;
992
+ hasSecret: boolean;
993
+ lastTriggered?: number;
994
+ createdAt: number;
995
+ }
996
+ export type WebhookUpdateInput = {
997
+ events?: string[];
998
+ isActive?: boolean;
999
+ name?: string;
1000
+ secret?: string;
1001
+ url?: string;
1002
+ };
1003
+ export type WebhookDeleteResult = {
1004
+ deleted: true;
1005
+ id: string;
1006
+ name: string;
1007
+ projectKey: string;
1008
+ };
1009
+ export type WebhookExecution = {
1010
+ id: string;
1011
+ webhookId: string;
1012
+ webhookName: string;
1013
+ projectKey: string;
1014
+ event: string;
1015
+ status: string;
1016
+ responseStatus?: number;
1017
+ error?: string;
1018
+ attempts: number;
1019
+ completedAt?: number;
1020
+ createdAt: number;
1021
+ };
1022
+ export type WebhookTestResult = {
1023
+ success: true;
1024
+ queued: true;
1025
+ event: "ping";
1026
+ id: string;
1027
+ name: string;
1028
+ projectKey: string;
1029
+ };
1030
+ export type WebhookRetryResult = {
1031
+ success: true;
1032
+ queued: true;
1033
+ id: string;
1034
+ webhookId: string;
1035
+ webhookName: string;
1036
+ projectKey: string;
1037
+ attempts: number;
1038
+ };
1039
+ export type CliDocument = {
1040
+ id: string;
1041
+ isPublic: boolean;
1042
+ projectId?: string;
1043
+ scopeType: "organization" | "workspace" | "team" | "project";
1044
+ teamId?: string;
1045
+ title: string;
1046
+ updatedAt: number;
1047
+ workspaceId?: string;
1048
+ };
1049
+ export type CliDocumentListResult = {
1050
+ documents: CliDocument[];
1051
+ truncated: boolean;
1052
+ };
1053
+ export type CliDocumentDetail = CliDocument & {
1054
+ canEditContent: boolean;
1055
+ createdAt: number;
1056
+ creatorId: string;
1057
+ creatorName: string;
1058
+ isArchived: boolean;
1059
+ isLocked: boolean;
1060
+ order?: number;
1061
+ parentId?: string;
1062
+ projectKey?: string;
1063
+ teamSlug?: string;
1064
+ workspaceSlug?: string;
1065
+ };
1066
+ export type CliDocumentListOptions = {
1067
+ limit?: number;
1068
+ project?: string;
1069
+ team?: string;
1070
+ workspace?: string;
1071
+ };
1072
+ export type CliDocumentTreeNode = CliDocument & {
1073
+ depth: number;
1074
+ order?: number;
1075
+ parentId?: string;
1076
+ };
1077
+ export type CliDocumentTreeResult = {
1078
+ nodes: CliDocumentTreeNode[];
1079
+ truncated: boolean;
1080
+ };
1081
+ export declare function listDocuments(options?: CliDocumentListOptions): Promise<CliDocumentListResult | null>;
1082
+ export declare function getDocument(id: string): Promise<CliDocumentDetail | null>;
1083
+ export declare function searchDocuments(query: string, options?: CliDocumentListOptions): Promise<CliDocumentListResult | null>;
1084
+ export declare function getDocumentTree(options?: CliDocumentListOptions): Promise<CliDocumentTreeResult | null>;
1085
+ export declare function listProjects(): Promise<Project[]>;
1086
+ export declare function getProject(key: string): Promise<Project | null>;
1087
+ export declare function createProject(options: ProjectCreateInput): Promise<Project | null>;
1088
+ export declare function updateProject(key: string, options: ProjectUpdateInput): Promise<Project | null>;
1089
+ export declare function deleteProject(key: string): Promise<ProjectDeleteResult | null>;
1090
+ export declare function restoreProject(key: string): Promise<ProjectRestoreResult | null>;
1091
+ export declare function listProjectWorkflow(key: string): Promise<ProjectWorkflowState[] | null>;
1092
+ export declare function setProjectWorkflow(key: string, options: ProjectWorkflowSetInput): Promise<ProjectWorkflowState[] | null>;
1093
+ export declare function reorderProjectWorkflow(key: string, options: {
1094
+ stateId: string;
1095
+ position: number;
1096
+ }): Promise<ProjectWorkflowState[] | null>;
1097
+ export declare function listProjectMembers(key: string, options?: {
1098
+ limit?: number;
1099
+ }): Promise<ProjectMember[] | null>;
1100
+ export declare function addProjectMember(options: {
1101
+ projectKey: string;
1102
+ email: string;
1103
+ role: string;
1104
+ }): Promise<ProjectMemberChange | null>;
1105
+ export declare function removeProjectMember(options: {
1106
+ projectKey: string;
1107
+ email: string;
1108
+ }): Promise<ProjectMemberChange | null>;
1109
+ export declare function updateProjectMemberRole(options: {
1110
+ projectKey: string;
1111
+ email: string;
1112
+ role: string;
1113
+ }): Promise<ProjectMemberChange | null>;
1114
+ export declare function getProjectStats(key: string): Promise<ProjectStats | null>;
1115
+ export declare function getStatsProject(key: string): Promise<ProjectStats | null>;
1116
+ export declare function getStatsCycleTime(projectKey: string, options?: {
1117
+ limit?: number;
1118
+ }): Promise<CycleTimeStats | null>;
1119
+ export declare function getStatsOrg(): Promise<OrgStats | null>;
1120
+ export declare function getStatsSprint(id: string): Promise<Sprint | null>;
1121
+ export declare function getStatsTeam(slug: string): Promise<Team | null>;
1122
+ export declare function listLabels(projectKey: string, options?: {
1123
+ limit?: number;
1124
+ }): Promise<Label[] | null>;
1125
+ export declare function createLabel(options: {
1126
+ projectKey: string;
1127
+ name: string;
1128
+ color: string;
1129
+ description?: string;
1130
+ groupId?: string;
1131
+ }): Promise<Label>;
1132
+ export declare function updateLabel(id: string, options: LabelUpdateInput): Promise<Label | null>;
1133
+ export declare function removeLabel(id: string): Promise<LabelRemoveResult | null>;
1134
+ export declare function listTeams(options?: {
1135
+ limit?: number;
1136
+ }): Promise<Team[]>;
1137
+ export declare function getTeam(slug: string, options?: {
1138
+ memberLimit?: number;
1139
+ }): Promise<TeamDetail | null>;
1140
+ export declare function createTeam(options: {
1141
+ description?: string;
1142
+ isPrivate?: boolean;
1143
+ name: string;
1144
+ workspaceSlug: string;
1145
+ }): Promise<Team | null>;
1146
+ export declare function updateTeam(slug: string, options: TeamUpdateInput): Promise<Team | null>;
1147
+ export declare function deleteTeam(slug: string): Promise<TeamDeleteResult | null>;
1148
+ export declare function restoreTeam(slug: string): Promise<TeamRestoreResult | null>;
1149
+ export declare function addTeamMember(options: {
1150
+ slug: string;
1151
+ email: string;
1152
+ role: string;
1153
+ }): Promise<TeamMemberChange | null>;
1154
+ export declare function removeTeamMember(options: {
1155
+ slug: string;
1156
+ email: string;
1157
+ }): Promise<TeamMemberChange | null>;
1158
+ export declare function updateTeamMemberRole(options: {
1159
+ slug: string;
1160
+ email: string;
1161
+ role: string;
1162
+ }): Promise<TeamMemberChange | null>;
1163
+ export declare function listWorkspaces(options?: {
1164
+ limit?: number;
1165
+ }): Promise<Workspace[]>;
1166
+ export declare function getWorkspace(slug: string, options?: {
1167
+ limit?: number;
1168
+ }): Promise<WorkspaceDetail | null>;
1169
+ export declare function createWorkspace(options: {
1170
+ description?: string;
1171
+ icon?: string;
1172
+ name: string;
1173
+ slug?: string;
1174
+ }): Promise<Workspace | null>;
1175
+ export declare function updateWorkspace(slug: string, options: WorkspaceUpdateInput): Promise<Workspace | null>;
1176
+ export declare function archiveWorkspace(slug: string): Promise<WorkspaceArchiveResult | null>;
1177
+ export declare function deleteWorkspace(slug: string): Promise<WorkspaceDeleteResult | null>;
1178
+ export declare function listWorkspaceMembers(slug: string, options?: {
1179
+ limit?: number;
1180
+ }): Promise<WorkspaceMember[] | null>;
1181
+ export declare function addWorkspaceMember(options: {
1182
+ slug: string;
1183
+ email: string;
1184
+ role: string;
1185
+ }): Promise<WorkspaceMemberChange | null>;
1186
+ export declare function removeWorkspaceMember(options: {
1187
+ slug: string;
1188
+ email: string;
1189
+ }): Promise<WorkspaceMemberChange | null>;
1190
+ export declare function updateWorkspaceMemberRole(options: {
1191
+ slug: string;
1192
+ email: string;
1193
+ role: string;
1194
+ }): Promise<WorkspaceMemberChange | null>;
1195
+ export declare function listWebhooks(projectKey: string, options?: {
1196
+ limit?: number;
1197
+ }): Promise<Webhook[] | null>;
1198
+ export declare function createWebhook(options: {
1199
+ projectKey: string;
1200
+ name: string;
1201
+ url: string;
1202
+ events: string[];
1203
+ secret?: string;
1204
+ }): Promise<Webhook | null>;
1205
+ export declare function updateWebhook(id: string, options: WebhookUpdateInput): Promise<Webhook | null>;
1206
+ export declare function deleteWebhook(id: string): Promise<WebhookDeleteResult | null>;
1207
+ export declare function testWebhook(id: string): Promise<WebhookTestResult | null>;
1208
+ export declare function listWebhookExecutions(id: string, options?: {
1209
+ limit?: number;
1210
+ }): Promise<WebhookExecution[] | null>;
1211
+ export declare function retryWebhookExecution(id: string): Promise<WebhookRetryResult | null>;
1212
+ export declare function createIssue(options: {
1213
+ projectKey: string;
1214
+ title: string;
1215
+ priority?: string;
1216
+ type?: string;
1217
+ }): Promise<{
1218
+ key: string;
1219
+ title: string;
1220
+ }>;
1221
+ export declare function getIssue(key: string): Promise<Issue | null>;
1222
+ export declare function updateIssue(key: string, options: IssueUpdateInput): Promise<Issue | null>;
1223
+ export declare function moveIssue(key: string, options: {
1224
+ status: string;
1225
+ order?: number;
1226
+ }): Promise<Issue | null>;
1227
+ export declare function deleteIssue(key: string): Promise<IssueDeleteResult | null>;
1228
+ export declare function archiveIssue(key: string): Promise<Issue | null>;
1229
+ export declare function restoreIssue(key: string): Promise<Issue | null>;
1230
+ export declare function listIssueSubtasks(key: string, options?: {
1231
+ limit?: number;
1232
+ }): Promise<Issue[] | null>;
1233
+ export declare function listSimilarIssues(key: string, options?: {
1234
+ limit?: number;
1235
+ }): Promise<Issue[] | null>;
1236
+ export declare function listIssueComments(key: string, options?: {
1237
+ limit?: number;
1238
+ }): Promise<IssueComment[] | null>;
1239
+ export declare function addIssueComment(key: string, body: string): Promise<IssueComment | null>;
1240
+ export declare function listIssueActivity(key: string, options?: {
1241
+ limit?: number;
1242
+ }): Promise<IssueActivity[] | null>;
1243
+ //# sourceMappingURL=convex.d.ts.map