@guidemode/types 0.1.45 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/dist/cjs/auth.d.ts +2 -0
  2. package/dist/cjs/auth.d.ts.map +1 -1
  3. package/dist/cjs/domain/tenants.d.ts +3 -0
  4. package/dist/cjs/domain/tenants.d.ts.map +1 -1
  5. package/dist/cjs/domain/tenants.js +0 -1
  6. package/dist/cjs/domain/tenants.js.map +1 -1
  7. package/dist/cjs/domain/users.d.ts +12 -0
  8. package/dist/cjs/domain/users.d.ts.map +1 -1
  9. package/dist/cjs/index.d.ts +1 -0
  10. package/dist/cjs/index.d.ts.map +1 -1
  11. package/dist/cjs/index.js +3 -1
  12. package/dist/cjs/index.js.map +1 -1
  13. package/dist/cjs/jira/webhooks.d.ts +16 -0
  14. package/dist/cjs/jira/webhooks.d.ts.map +1 -1
  15. package/dist/cjs/metrics/assessment.d.ts +2 -1
  16. package/dist/cjs/metrics/assessment.d.ts.map +1 -1
  17. package/dist/cjs/metrics/utilities.js +1 -1
  18. package/dist/cjs/permissions.d.ts +1 -1
  19. package/dist/cjs/permissions.d.ts.map +1 -1
  20. package/dist/cjs/queue/messages.d.ts +10 -0
  21. package/dist/cjs/queue/messages.d.ts.map +1 -1
  22. package/dist/cjs/sessions/core.d.ts +1 -0
  23. package/dist/cjs/sessions/core.d.ts.map +1 -1
  24. package/dist/cjs/sessions/responses.d.ts +13 -0
  25. package/dist/cjs/sessions/responses.d.ts.map +1 -1
  26. package/dist/cjs/settings.d.ts +1 -1
  27. package/dist/cjs/settings.d.ts.map +1 -1
  28. package/dist/cjs/surveys/aiva.d.ts +568 -0
  29. package/dist/cjs/surveys/aiva.d.ts.map +1 -0
  30. package/dist/cjs/surveys/aiva.js +347 -0
  31. package/dist/cjs/surveys/aiva.js.map +1 -0
  32. package/dist/cjs/surveys.d.ts +277 -38
  33. package/dist/cjs/surveys.d.ts.map +1 -1
  34. package/dist/cjs/surveys.js +86 -5
  35. package/dist/cjs/surveys.js.map +1 -1
  36. package/dist/cjs/work-tracking/config.d.ts +39 -2
  37. package/dist/cjs/work-tracking/config.d.ts.map +1 -1
  38. package/dist/cjs/work-tracking/config.js +1 -1
  39. package/dist/cjs/work-tracking/index.d.ts +3 -1
  40. package/dist/cjs/work-tracking/index.d.ts.map +1 -1
  41. package/dist/cjs/work-tracking/index.js +3 -1
  42. package/dist/cjs/work-tracking/index.js.map +1 -1
  43. package/dist/cjs/work-tracking/issue-links.d.ts +30 -3
  44. package/dist/cjs/work-tracking/issue-links.d.ts.map +1 -1
  45. package/dist/cjs/work-tracking/issues.d.ts +81 -1
  46. package/dist/cjs/work-tracking/issues.d.ts.map +1 -1
  47. package/dist/cjs/work-tracking/issues.js +19 -0
  48. package/dist/cjs/work-tracking/issues.js.map +1 -1
  49. package/dist/cjs/work-tracking/notion.d.ts +272 -0
  50. package/dist/cjs/work-tracking/notion.d.ts.map +1 -0
  51. package/dist/cjs/work-tracking/notion.js +7 -0
  52. package/dist/cjs/work-tracking/notion.js.map +1 -0
  53. package/dist/cjs/work-tracking/projects.d.ts +206 -0
  54. package/dist/cjs/work-tracking/projects.d.ts.map +1 -0
  55. package/dist/cjs/work-tracking/projects.js +7 -0
  56. package/dist/cjs/work-tracking/projects.js.map +1 -0
  57. package/dist/esm/auth.d.ts +2 -0
  58. package/dist/esm/auth.d.ts.map +1 -1
  59. package/dist/esm/domain/tenants.d.ts +3 -0
  60. package/dist/esm/domain/tenants.d.ts.map +1 -1
  61. package/dist/esm/domain/tenants.js +0 -1
  62. package/dist/esm/domain/tenants.js.map +1 -1
  63. package/dist/esm/domain/users.d.ts +12 -0
  64. package/dist/esm/domain/users.d.ts.map +1 -1
  65. package/dist/esm/index.d.ts +1 -0
  66. package/dist/esm/index.d.ts.map +1 -1
  67. package/dist/esm/index.js +3 -1
  68. package/dist/esm/index.js.map +1 -1
  69. package/dist/esm/jira/webhooks.d.ts +16 -0
  70. package/dist/esm/jira/webhooks.d.ts.map +1 -1
  71. package/dist/esm/metrics/assessment.d.ts +2 -1
  72. package/dist/esm/metrics/assessment.d.ts.map +1 -1
  73. package/dist/esm/metrics/utilities.js +1 -1
  74. package/dist/esm/permissions.d.ts +1 -1
  75. package/dist/esm/permissions.d.ts.map +1 -1
  76. package/dist/esm/queue/messages.d.ts +10 -0
  77. package/dist/esm/queue/messages.d.ts.map +1 -1
  78. package/dist/esm/sessions/core.d.ts +1 -0
  79. package/dist/esm/sessions/core.d.ts.map +1 -1
  80. package/dist/esm/sessions/responses.d.ts +13 -0
  81. package/dist/esm/sessions/responses.d.ts.map +1 -1
  82. package/dist/esm/settings.d.ts +1 -1
  83. package/dist/esm/settings.d.ts.map +1 -1
  84. package/dist/esm/surveys/aiva.d.ts +568 -0
  85. package/dist/esm/surveys/aiva.d.ts.map +1 -0
  86. package/dist/esm/surveys/aiva.js +339 -0
  87. package/dist/esm/surveys/aiva.js.map +1 -0
  88. package/dist/esm/surveys.d.ts +286 -47
  89. package/dist/esm/surveys.d.ts.map +1 -1
  90. package/dist/esm/surveys.js +84 -4
  91. package/dist/esm/surveys.js.map +1 -1
  92. package/dist/esm/work-tracking/config.d.ts +39 -2
  93. package/dist/esm/work-tracking/config.d.ts.map +1 -1
  94. package/dist/esm/work-tracking/config.js +1 -1
  95. package/dist/esm/work-tracking/index.d.ts +3 -1
  96. package/dist/esm/work-tracking/index.d.ts.map +1 -1
  97. package/dist/esm/work-tracking/index.js +3 -1
  98. package/dist/esm/work-tracking/index.js.map +1 -1
  99. package/dist/esm/work-tracking/issue-links.d.ts +30 -3
  100. package/dist/esm/work-tracking/issue-links.d.ts.map +1 -1
  101. package/dist/esm/work-tracking/issues.d.ts +81 -1
  102. package/dist/esm/work-tracking/issues.d.ts.map +1 -1
  103. package/dist/esm/work-tracking/issues.js +17 -1
  104. package/dist/esm/work-tracking/issues.js.map +1 -1
  105. package/dist/esm/work-tracking/notion.d.ts +272 -0
  106. package/dist/esm/work-tracking/notion.d.ts.map +1 -0
  107. package/dist/esm/work-tracking/notion.js +6 -0
  108. package/dist/esm/work-tracking/notion.js.map +1 -0
  109. package/dist/esm/work-tracking/projects.d.ts +206 -0
  110. package/dist/esm/work-tracking/projects.d.ts.map +1 -0
  111. package/dist/esm/work-tracking/projects.js +6 -0
  112. package/dist/esm/work-tracking/projects.js.map +1 -0
  113. package/dist/tsconfig.tsbuildinfo +1 -1
  114. package/package.json +1 -1
@@ -0,0 +1,272 @@
1
+ /**
2
+ * Notion integration types
3
+ * Types for Notion workspace installations, database mappings, and sync operations
4
+ */
5
+ /**
6
+ * SubStatus values for Notion (matches status-sub-status-inference.ts)
7
+ */
8
+ export type NotionSubStatus = 'backlog' | 'ready' | 'discovery' | 'delivery' | 'review' | 'blocked' | 'parked' | 'done' | 'canceled';
9
+ /**
10
+ * User relation types that can be mapped to Notion people properties
11
+ */
12
+ export type NotionUserRelationType = 'author' | 'assignee' | 'commenter' | 'mentioned';
13
+ /**
14
+ * User mapping configuration - maps a Notion people property to a relation type
15
+ */
16
+ export interface NotionUserMapping {
17
+ /** Name of the Notion property (must be 'people' or 'created_by' type) */
18
+ notionProperty: string;
19
+ /** Type of the Notion property */
20
+ notionPropertyType: 'people' | 'created_by';
21
+ /** The relation type to assign to users from this property */
22
+ relationType: NotionUserRelationType;
23
+ }
24
+ /**
25
+ * SubStatus mapping configuration for Notion
26
+ * Maps Notion status/select values to internal subStatus values
27
+ */
28
+ export interface NotionSubStatusMapping {
29
+ /** Name of the Notion property to read status from */
30
+ notionProperty: string;
31
+ /** Type of the Notion property (must be 'status' or 'select') */
32
+ notionPropertyType: 'status' | 'select';
33
+ /** Maps Notion status values to internal subStatus values */
34
+ valueMappings: Record<string, NotionSubStatus>;
35
+ }
36
+ /**
37
+ * Notion workspace installation - one per tenant
38
+ */
39
+ export interface NotionInstallation {
40
+ id: string;
41
+ tenantId: string;
42
+ notionWorkspaceId: string;
43
+ notionWorkspaceName: string;
44
+ notionWorkspaceIcon: string | null;
45
+ botId: string;
46
+ webhookSecret: string | null;
47
+ installedByUserId: string | null;
48
+ createdAt: Date;
49
+ updatedAt: Date;
50
+ }
51
+ /**
52
+ * Notion installation response (API)
53
+ */
54
+ export interface NotionInstallationResponse {
55
+ id: string;
56
+ tenantId: string;
57
+ notionWorkspaceId: string;
58
+ notionWorkspaceName: string;
59
+ notionWorkspaceIcon: string | null;
60
+ databaseCount: number;
61
+ syncEnabledCount: number;
62
+ createdAt: string;
63
+ updatedAt: string;
64
+ }
65
+ /**
66
+ * Notion database mapping - column-to-field configuration per database
67
+ */
68
+ export interface NotionDatabaseMapping {
69
+ id: string;
70
+ tenantId: string;
71
+ notionInstallationId: string;
72
+ notionDatabaseId: string;
73
+ notionDatabaseName: string;
74
+ notionDatabaseIcon: string | null;
75
+ repositoryId: string | null;
76
+ mappingConfig: NotionMappingConfig | null;
77
+ syncEnabled: boolean;
78
+ lastSyncedAt: Date | null;
79
+ createdAt: Date;
80
+ updatedAt: Date;
81
+ }
82
+ /**
83
+ * Property mapping for a single Issue field
84
+ */
85
+ export interface NotionPropertyMapping {
86
+ /** Name of the Notion property to read */
87
+ notionProperty: string;
88
+ /** Type of the Notion property (title, rich_text, select, status, date, etc.) */
89
+ notionPropertyType: string;
90
+ /** Whether this mapping is optional */
91
+ optional?: boolean;
92
+ /** For status/select: maps Notion values to Issue values */
93
+ mappings?: Record<string, string>;
94
+ /** For createdAt: use Notion's built-in created_time */
95
+ useNotionCreated?: boolean;
96
+ }
97
+ /**
98
+ * Team value mapping - maps a Notion multi-select value to an existing or new team
99
+ */
100
+ export interface NotionTeamValueMapping {
101
+ /** The multi-select option name from Notion */
102
+ notionValue: string;
103
+ /** Existing team ID to map to (null = auto-create new team) */
104
+ teamId: string | null;
105
+ /** Whether this team was auto-created during sync */
106
+ autoCreated?: boolean;
107
+ }
108
+ /**
109
+ * Team mapping configuration for Notion database
110
+ */
111
+ export interface NotionTeamMapping {
112
+ /** Name of the Notion multi-select property */
113
+ notionProperty: string;
114
+ /** Must be multi_select */
115
+ notionPropertyType: 'multi_select';
116
+ /** Mappings from Notion values to teams */
117
+ valueMappings: NotionTeamValueMapping[];
118
+ }
119
+ /**
120
+ * Configuration for a delivery link property mapping
121
+ * Maps a Notion property (relation or URL) to cross-tool issue links
122
+ */
123
+ export interface NotionDeliveryLinkMapping {
124
+ /** Name of the Notion property */
125
+ notionProperty: string;
126
+ /** Type of the property: 'relation' or 'url' */
127
+ notionPropertyType: 'relation' | 'url';
128
+ /** The type of link to create */
129
+ linkType: 'validates' | 'implements' | 'relates_to';
130
+ }
131
+ /**
132
+ * Complete mapping configuration for a Notion database
133
+ */
134
+ export interface NotionMappingConfig {
135
+ /** Required: maps to Issue.title */
136
+ title: NotionPropertyMapping;
137
+ /** Optional: maps to Issue.body */
138
+ body?: NotionPropertyMapping;
139
+ /**
140
+ * @deprecated Use subStatus instead. State is automatically derived from subStatus.
141
+ * Maps to Issue.state (open/closed/in_progress)
142
+ */
143
+ state?: NotionPropertyMapping;
144
+ /** Maps Notion status values to subStatus. State is automatically derived. */
145
+ subStatus?: NotionSubStatusMapping;
146
+ /** Required for sync: maps to Issue.type (feature/bug/chore/discovery/incident/other) */
147
+ type?: NotionPropertyMapping;
148
+ /** Required for sync: maps to team assignment */
149
+ team?: NotionTeamMapping;
150
+ /** Optional: maps to Issue.createdAt */
151
+ createdAt?: NotionPropertyMapping;
152
+ /** Optional: maps to Issue.closedAt */
153
+ closedAt?: NotionPropertyMapping;
154
+ /**
155
+ * @deprecated Use userMappings instead for flexible user relation mapping.
156
+ * Maps to Issue.authorUsername (people or created_by property)
157
+ */
158
+ creator?: NotionPropertyMapping;
159
+ /**
160
+ * @deprecated Use userMappings instead for flexible user relation mapping.
161
+ * Maps to Issue.assigneeUsername (people property)
162
+ */
163
+ assignee?: NotionPropertyMapping;
164
+ /** Dynamic user mappings - maps Notion people properties to user relation types */
165
+ userMappings?: NotionUserMapping[];
166
+ /** Optional: maps Notion relation/URL properties to cross-tool issue links */
167
+ deliveryLinks?: NotionDeliveryLinkMapping[];
168
+ }
169
+ /**
170
+ * Validation result for Notion mapping configuration
171
+ */
172
+ export interface NotionMappingValidationResult {
173
+ /** Whether the mapping is valid for sync */
174
+ valid: boolean;
175
+ /** List of missing required fields */
176
+ missingFields: string[];
177
+ /** Guidance messages for the user */
178
+ guidance: string[];
179
+ /** Whether sync can be enabled */
180
+ canEnableSync: boolean;
181
+ }
182
+ /**
183
+ * Notion sync log entry
184
+ */
185
+ export interface NotionSyncLog {
186
+ id: string;
187
+ tenantId: string;
188
+ notionWorkspaceId: string;
189
+ notionWorkspaceName: string;
190
+ syncType: NotionSyncType;
191
+ status: NotionSyncStatus;
192
+ startedAt: Date;
193
+ completedAt: Date | null;
194
+ stats: NotionSyncStats | null;
195
+ currentStep: string | null;
196
+ errorMessage: string | null;
197
+ createdAt: Date;
198
+ }
199
+ export type NotionSyncType = 'full' | 'databases' | 'issues';
200
+ export type NotionSyncStatus = 'pending' | 'in_progress' | 'completed' | 'failed' | 'cancelled';
201
+ export interface NotionSyncStats {
202
+ databasesProcessed: number;
203
+ issuesCreated: number;
204
+ issuesUpdated: number;
205
+ issuesDeleted?: number;
206
+ errors?: number;
207
+ }
208
+ /**
209
+ * Notion database info from API
210
+ */
211
+ export interface NotionDatabaseInfo {
212
+ id: string;
213
+ name: string;
214
+ icon: string | null;
215
+ url: string;
216
+ properties: NotionPropertyInfo[];
217
+ lastEditedTime: string;
218
+ }
219
+ /**
220
+ * Notion property info from database schema
221
+ */
222
+ export interface NotionPropertyInfo {
223
+ id: string;
224
+ name: string;
225
+ type: NotionPropertyType;
226
+ /** For select/multi_select: available options */
227
+ options?: NotionSelectOption[];
228
+ /** For status: available status groups and options */
229
+ groups?: NotionStatusGroup[];
230
+ }
231
+ export type NotionPropertyType = 'title' | 'rich_text' | 'number' | 'select' | 'multi_select' | 'status' | 'date' | 'people' | 'files' | 'checkbox' | 'url' | 'email' | 'phone_number' | 'formula' | 'relation' | 'rollup' | 'created_time' | 'created_by' | 'last_edited_time' | 'last_edited_by';
232
+ export interface NotionSelectOption {
233
+ id: string;
234
+ name: string;
235
+ color: string;
236
+ }
237
+ export interface NotionStatusGroup {
238
+ id: string;
239
+ name: string;
240
+ color: string;
241
+ options: NotionSelectOption[];
242
+ }
243
+ /**
244
+ * API request/response types
245
+ */
246
+ export interface SaveNotionMappingRequest {
247
+ mappingConfig: NotionMappingConfig;
248
+ syncEnabled?: boolean;
249
+ }
250
+ export interface NotionDatabaseMappingResponse {
251
+ id: string;
252
+ notionDatabaseId: string;
253
+ notionDatabaseName: string;
254
+ notionDatabaseIcon: string | null;
255
+ mappingConfig: NotionMappingConfig | null;
256
+ syncEnabled: boolean;
257
+ lastSyncedAt: string | null;
258
+ }
259
+ export interface TriggerNotionSyncRequest {
260
+ syncType: NotionSyncType;
261
+ }
262
+ export interface NotionSyncLogResponse {
263
+ id: string;
264
+ syncType: NotionSyncType;
265
+ status: NotionSyncStatus;
266
+ startedAt: string;
267
+ completedAt: string | null;
268
+ stats: NotionSyncStats | null;
269
+ currentStep: string | null;
270
+ errorMessage: string | null;
271
+ }
272
+ //# sourceMappingURL=notion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notion.d.ts","sourceRoot":"","sources":["../../../src/work-tracking/notion.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Notion integration types
3
+ * Types for Notion workspace installations, database mappings, and sync operations
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=notion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notion.js","sourceRoot":"","sources":["../../../src/work-tracking/notion.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,206 @@
1
+ /**
2
+ * Project types for work tracking
3
+ * Provider-agnostic project tracking for cross-repository initiatives
4
+ */
5
+ /**
6
+ * Project provider type
7
+ */
8
+ export type ProjectProvider = 'github' | 'linear' | 'jira' | 'notion' | 'manual';
9
+ /**
10
+ * Project status
11
+ */
12
+ export type ProjectStatus = 'active' | 'completed' | 'archived';
13
+ /**
14
+ * Project record from database
15
+ */
16
+ export interface Project {
17
+ id: string;
18
+ tenantId: string;
19
+ provider: ProjectProvider;
20
+ externalId: string | null;
21
+ name: string;
22
+ description: string | null;
23
+ url: string | null;
24
+ status: ProjectStatus;
25
+ githubProjectNumber: number | null;
26
+ githubOrgLogin: string | null;
27
+ githubProjectId: string | null;
28
+ linearProjectId: string | null;
29
+ linearTeamId: string | null;
30
+ jiraProjectId: string | null;
31
+ jiraProjectKey: string | null;
32
+ jiraCloudId: string | null;
33
+ startDate: Date | null;
34
+ targetDate: Date | null;
35
+ progressPercent: number | null;
36
+ syncEnabled: boolean;
37
+ lastSyncedAt: Date | null;
38
+ createdAt: Date;
39
+ updatedAt: Date;
40
+ }
41
+ /**
42
+ * Project insert type
43
+ */
44
+ export interface ProjectInsert {
45
+ tenantId: string;
46
+ provider: ProjectProvider;
47
+ externalId?: string | null;
48
+ name: string;
49
+ description?: string | null;
50
+ url?: string | null;
51
+ status?: ProjectStatus;
52
+ githubProjectNumber?: number | null;
53
+ githubOrgLogin?: string | null;
54
+ githubProjectId?: string | null;
55
+ linearProjectId?: string | null;
56
+ linearTeamId?: string | null;
57
+ jiraProjectId?: string | null;
58
+ jiraProjectKey?: string | null;
59
+ jiraCloudId?: string | null;
60
+ startDate?: Date | null;
61
+ targetDate?: Date | null;
62
+ progressPercent?: number | null;
63
+ syncEnabled?: boolean;
64
+ }
65
+ /**
66
+ * Project update type
67
+ */
68
+ export interface ProjectUpdate {
69
+ name?: string;
70
+ description?: string | null;
71
+ url?: string | null;
72
+ status?: ProjectStatus;
73
+ startDate?: Date | null;
74
+ targetDate?: Date | null;
75
+ progressPercent?: number | null;
76
+ syncEnabled?: boolean;
77
+ lastSyncedAt?: Date | null;
78
+ updatedAt?: Date;
79
+ }
80
+ /**
81
+ * Project API response
82
+ */
83
+ export interface ProjectResponse {
84
+ id: string;
85
+ tenantId: string;
86
+ provider: ProjectProvider;
87
+ externalId: string | null;
88
+ name: string;
89
+ description: string | null;
90
+ url: string | null;
91
+ status: ProjectStatus;
92
+ githubProjectNumber: number | null;
93
+ githubOrgLogin: string | null;
94
+ linearProjectId: string | null;
95
+ jiraProjectKey: string | null;
96
+ startDate: string | null;
97
+ targetDate: string | null;
98
+ progressPercent: number | null;
99
+ syncEnabled: boolean;
100
+ lastSyncedAt: string | null;
101
+ createdAt: string;
102
+ updatedAt: string;
103
+ issueCount?: number;
104
+ openIssueCount?: number;
105
+ closedIssueCount?: number;
106
+ repositoryCount?: number;
107
+ }
108
+ /**
109
+ * Project-Issue junction record
110
+ */
111
+ export interface ProjectIssue {
112
+ id: string;
113
+ projectId: string;
114
+ issueId: string;
115
+ position: number | null;
116
+ addedAt: Date;
117
+ }
118
+ /**
119
+ * Project-Issue insert type
120
+ */
121
+ export interface ProjectIssueInsert {
122
+ projectId: string;
123
+ issueId: string;
124
+ position?: number | null;
125
+ }
126
+ /**
127
+ * Project-Repository junction record
128
+ */
129
+ export interface ProjectRepository {
130
+ projectId: string;
131
+ repositoryId: string;
132
+ addedAt: Date;
133
+ }
134
+ /**
135
+ * Project-Repository insert type
136
+ */
137
+ export interface ProjectRepositoryInsert {
138
+ projectId: string;
139
+ repositoryId: string;
140
+ }
141
+ /**
142
+ * Team-Project junction record
143
+ */
144
+ export interface TeamProject {
145
+ teamId: string;
146
+ projectId: string;
147
+ addedAt: Date;
148
+ }
149
+ /**
150
+ * Team-Project insert type
151
+ */
152
+ export interface TeamProjectInsert {
153
+ teamId: string;
154
+ projectId: string;
155
+ }
156
+ /**
157
+ * Project filters for querying
158
+ */
159
+ export interface ProjectFilters {
160
+ tenantId?: string;
161
+ provider?: ProjectProvider;
162
+ status?: ProjectStatus;
163
+ teamId?: string;
164
+ repositoryId?: string;
165
+ search?: string;
166
+ syncEnabled?: boolean;
167
+ }
168
+ /**
169
+ * Project with related data for detailed views
170
+ */
171
+ export interface ProjectWithDetails extends ProjectResponse {
172
+ issues: Array<{
173
+ id: string;
174
+ number: number;
175
+ title: string;
176
+ state: string;
177
+ type: string | null;
178
+ position: number | null;
179
+ }>;
180
+ repositories: Array<{
181
+ id: string;
182
+ name: string;
183
+ fullName: string | null;
184
+ provider: string | null;
185
+ }>;
186
+ teams: Array<{
187
+ id: string;
188
+ name: string;
189
+ slug: string;
190
+ }>;
191
+ }
192
+ /**
193
+ * Project analytics metrics
194
+ */
195
+ export interface ProjectMetrics {
196
+ totalIssues: number;
197
+ openIssues: number;
198
+ closedIssues: number;
199
+ inProgressIssues: number;
200
+ byType: Record<string, number>;
201
+ repositoryCount: number;
202
+ teamCount: number;
203
+ completionRate: number | null;
204
+ averageCycleTimeMs: number | null;
205
+ }
206
+ //# sourceMappingURL=projects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../../src/work-tracking/projects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Project types for work tracking
3
+ * Provider-agnostic project tracking for cross-repository initiatives
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/work-tracking/projects.ts"],"names":[],"mappings":"AAAA;;;GAGG"}