@moonrepo/types 1.33.2 → 2.0.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.
@@ -1,7 +1,8 @@
1
1
  import type { Id } from './common';
2
- import type { Input, PartialTaskConfig, PlatformType, TaskConfig } from './tasks-config';
3
- import type { PartialToolchainPluginConfig, ToolchainPluginConfig, UnresolvedVersionSpec } from './toolchain-config';
4
- /** The scope and or relationship of the dependency. */
2
+ import type { Input, PartialTaskConfig, TaskConfig } from './tasks-config';
3
+ import type { PartialToolchainPluginConfig, ToolchainPluginConfig } from './toolchains-config';
4
+ import type { DockerFileConfig, DockerScaffoldConfig, PartialDockerFileConfig, PartialDockerScaffoldConfig } from './workspace-config';
5
+ /** The relationship scope of a dependency. */
5
6
  export type DependencyScope = 'build' | 'development' | 'peer' | 'production' | 'root';
6
7
  /**
7
8
  * The source where the dependency comes from. Either explicitly
@@ -10,7 +11,7 @@ export type DependencyScope = 'build' | 'development' | 'peer' | 'production' |
10
11
  export type DependencySource = 'explicit' | 'implicit';
11
12
  /** Expanded information about a project dependency. */
12
13
  export interface ProjectDependencyConfig {
13
- /** ID of the depended on project. */
14
+ /** Identifier of the depended on project. */
14
15
  id: Id;
15
16
  /**
16
17
  * Scope of the dependency relationship.
@@ -30,42 +31,34 @@ export interface ProjectDependencyConfig {
30
31
  via: string | null;
31
32
  }
32
33
  export type ProjectDependsOn = Id | ProjectDependencyConfig;
33
- /** Configures `Dockerfile` generation. */
34
- export interface ProjectDockerFileConfig {
35
- /** A task within the current project for building the project. */
36
- buildTask: Id | null;
37
- /** The base Docker image. */
38
- image: string | null;
39
- /** A task within the current project for starting the project. */
40
- startTask: Id | null;
41
- }
42
- /** Configures aspects of the Docker scaffolding process. */
43
- export interface ProjectDockerScaffoldConfig {
34
+ /**
35
+ * Configures our Docker integration.
36
+ * @since 1.27.0
37
+ */
38
+ export interface ProjectDockerConfig {
44
39
  /**
45
- * List of glob patterns, relative from the project root,
46
- * to include (or exclude) in the sources skeleton.
40
+ * Configures aspects of the `Dockerfile` generation process.
41
+ * @since 1.27.0
47
42
  */
48
- include: string[];
49
- }
50
- /** Configures our Docker integration. */
51
- export interface ProjectDockerConfig {
52
- /** Configures aspects of the `Dockerfile` generation process. */
53
- file: ProjectDockerFileConfig;
54
- /** Configures aspects of the Docker scaffolding process. */
55
- scaffold: ProjectDockerScaffoldConfig;
43
+ file: DockerFileConfig;
44
+ /**
45
+ * Configures aspects of the Docker scaffolding process.
46
+ * @since 1.27.0
47
+ */
48
+ scaffold: DockerScaffoldConfig;
56
49
  }
57
50
  /** Supported programming languages that each project can be written in. */
58
- export type LanguageType = 'bash' | 'batch' | 'go' | 'javascript' | 'php' | 'python' | 'ruby' | 'rust' | 'typescript' | 'unknown' | string;
59
- /** The layer within the project stack, for categorizing. */
51
+ export type LanguageType = 'bash' | 'batch' | 'cplusplus' | 'csharp' | 'dotnet' | 'go' | 'java' | 'javascript' | 'kotlin' | 'php' | 'python' | 'ruby' | 'rust' | 'swift' | 'typescript' | 'unknown' | string;
52
+ /** The layer within the technology stack, for categorizing. */
60
53
  export type LayerType = 'application' | 'automation' | 'configuration' | 'library' | 'scaffolding' | 'tool' | 'unknown';
61
54
  export type OwnersPaths = string[] | Record<string, string[]>;
62
55
  /**
63
56
  * Defines ownership of source code within the current project, by mapping
64
- * file paths and globs to owners. An owner is either a user, team, or group.
57
+ * file paths and glob patterns to owners. An owner is either a user, team, or group.
65
58
  */
66
59
  export interface OwnersConfig {
67
60
  /**
68
- * Bitbucket only. A mapping of custom groups (prefixed with `@@@`),
61
+ * Bitbucket only. A map of custom groups (prefixed with `@@@`),
69
62
  * to a list of user and normal groups.
70
63
  */
71
64
  customGroups: Record<string, string[]>;
@@ -74,9 +67,9 @@ export interface OwnersConfig {
74
67
  /** GitLab only. Marks the code owners section as optional. */
75
68
  optional: boolean;
76
69
  /**
77
- * A mapping of file paths and file globs to owners.
70
+ * A list or map of file paths and glob patterns to owners.
78
71
  * When a list, the `defaultOwner` is the owner, and each item is a path.
79
- * When an object, the key is a path, and the value is a list of owners.
72
+ * When a map, the key is a path, and the value is a list of owners.
80
73
  */
81
74
  paths: OwnersPaths;
82
75
  /**
@@ -89,71 +82,61 @@ export interface OwnersConfig {
89
82
  /** Expanded information about the project. */
90
83
  export interface ProjectMetadataConfig {
91
84
  /**
92
- * The Slack, Discord, etc, channel to discuss the project.
85
+ * The Slack, Discord, IRC, etc, channel to discuss the project.
93
86
  * Must start with a `#`.
94
87
  */
95
88
  channel: string | null;
96
- /** A description on what the project does, and why it exists. */
97
- description: string;
89
+ /** A description on what the project does and why it exists. */
90
+ description: string | null;
98
91
  /** The individual maintainers of the project. The format is unspecified. */
99
92
  maintainers: string[];
100
93
  /** Custom metadata fields. */
101
94
  metadata: Record<string, unknown>;
102
- /** A human-readable name of the project. */
103
- name: string | null;
104
95
  /**
105
96
  * The owner of the project. Can be an individual, team, or
106
97
  * organization. The format is unspecified.
107
98
  */
108
99
  owner: string | null;
100
+ /** A human-readable title of the project. */
101
+ title: string | null;
109
102
  }
110
103
  /** The technology stack of the project, for categorizing. */
111
- export type StackType = 'backend' | 'frontend' | 'infrastructure' | 'systems' | 'unknown';
112
- /** Overrides top-level toolchain settings. */
113
- export interface ProjectToolchainCommonToolConfig {
114
- /** Version of the tool this project will use. */
115
- version: UnresolvedVersionSpec | null;
116
- }
104
+ export type StackType = 'backend' | 'data' | 'frontend' | 'infrastructure' | 'systems' | 'unknown';
117
105
  export type ProjectToolchainEntry = null | boolean | ToolchainPluginConfig;
118
106
  /** Overrides top-level toolchain settings, scoped to this project. */
119
- export interface ProjectToolchainConfig {
120
- /** Overrides `bun` settings. */
121
- bun: ProjectToolchainCommonToolConfig | null;
107
+ export interface ProjectToolchainsConfig {
122
108
  /**
123
- * The default toolchain(s) for all tasks within the project,
124
- * if their toolchain is unknown.
109
+ * A single toolchain, or list of toolchains, to inherit for
110
+ * this project and all of its tasks.
111
+ * @since 1.31.0
125
112
  */
126
113
  defaults?: Id | Id[] | null;
127
114
  /**
128
- * The default toolchain(s) for all tasks within the project,
129
- * if their toolchain is unknown.
115
+ * A single toolchain, or list of toolchains, to inherit for
116
+ * this project and all of its tasks.
117
+ * @since 1.31.0
130
118
  */
131
119
  default: Id | Id[] | null;
132
- /** Overrides `deno` settings. */
133
- deno: ProjectToolchainCommonToolConfig | null;
134
- /** Overrides `node` settings. */
135
- node: ProjectToolchainCommonToolConfig | null;
136
- /** Overrides toolchains by their ID. */
120
+ /** Overrides workspace-level toolchains by their identifier. */
137
121
  plugins: Record<Id, ProjectToolchainEntry>;
138
- /** Overrides `python` settings. */
139
- python: ProjectToolchainCommonToolConfig | null;
140
- /** Overrides `rust` settings. */
141
- rust: ProjectToolchainCommonToolConfig | null;
142
122
  }
143
- /** Controls how tasks are inherited. */
123
+ /** Controls how workspace-level tasks are inherited. */
144
124
  export interface ProjectWorkspaceInheritedTasksConfig {
145
- /** Excludes inheriting tasks by ID. */
125
+ /** Excludes inheriting tasks by their identifier. */
146
126
  exclude: Id[];
147
127
  /**
148
- * Only inherits tasks by ID, and ignores the rest.
149
- * When not defined, inherits all matching tasks.
150
- * When an empty list, inherits no tasks.
128
+ * Only inherits tasks with the provided identifiers,
129
+ * and ignores the rest. When not defined, inherits
130
+ * all matching tasks. When an empty list, inherits no tasks.
151
131
  */
152
132
  include: Id[] | null;
153
- /** Renames inherited tasks to a new ID. */
133
+ /**
134
+ * Renames inherited tasks by mapping their existing
135
+ * identifier to a new identifier, scoped to this project.
136
+ */
154
137
  rename: Record<Id, Id>;
155
138
  }
156
- /** Overrides top-level workspace settings, scoped to this project. */
139
+ /** Overrides workspace settings, scoped to this project. */
157
140
  export interface ProjectWorkspaceConfig {
158
141
  /** Controls how tasks are inherited. */
159
142
  inheritedTasks: ProjectWorkspaceInheritedTasksConfig;
@@ -163,43 +146,41 @@ export interface ProjectWorkspaceConfig {
163
146
  * Docs: https://moonrepo.dev/docs/config/project
164
147
  */
165
148
  export interface ProjectConfig {
166
- /** @default 'https://moonrepo.dev/schemas/project.json' */
167
- $schema?: string;
149
+ $schema: string;
150
+ /** Other projects that this project depends on. */
151
+ deps?: ProjectDependsOn[];
168
152
  /** Other projects that this project depends on. */
169
153
  dependsOn: ProjectDependsOn[];
170
- /** Configures Docker integration for this project. */
154
+ /**
155
+ * Configures Docker integration for this project.
156
+ * @since 1.27.0
157
+ */
171
158
  docker: ProjectDockerConfig;
172
159
  /**
173
- * A mapping of environment variables that will be set for
160
+ * A map of environment variables that will be inherited by
174
161
  * all tasks within the project.
175
162
  */
176
- env: Record<string, string>;
163
+ env: Record<string, string | null>;
177
164
  /**
178
- * A mapping of group IDs to a list of file paths, globs, and
165
+ * A map of group identifiers to a list of file paths, globs, and
179
166
  * environment variables, that can be referenced from tasks.
180
167
  */
181
168
  fileGroups: Record<Id, Input[]>;
182
169
  /**
183
- * Overrides the ID within the project graph, as defined in
170
+ * Overrides the identifier within the project graph, as defined in
184
171
  * the workspace `projects` setting.
172
+ * @since 1.18.0
185
173
  */
186
174
  id: Id | null;
187
175
  /**
188
176
  * The primary programming language of the project.
189
177
  *
190
178
  * @default 'unknown'
191
- * @type {'bash' | 'batch' | 'go' | 'javascript' | 'php' | 'python' | 'ruby' | 'rust' | 'typescript' | 'unknown' | string}
179
+ * @type {'bash' | 'batch' | 'cplusplus' | 'csharp' | 'dotnet' | 'go' | 'java' | 'javascript' | 'kotlin' | 'php' | 'python' | 'ruby' | 'rust' | 'swift' | 'typescript' | 'unknown' | string}
192
180
  */
193
181
  language: LanguageType;
194
182
  /**
195
- * The layer within the project stack, for categorizing.
196
- *
197
- * @default 'unknown'
198
- * @type {'application' | 'automation' | 'configuration' | 'library' | 'scaffolding' | 'tool' | 'unknown'}
199
- */
200
- type?: LayerType;
201
- /**
202
- * The layer within the project stack, for categorizing.
183
+ * The layer within the technology stack, for categorizing.
203
184
  *
204
185
  * @default 'unknown'
205
186
  * @type {'application' | 'automation' | 'configuration' | 'library' | 'scaffolding' | 'tool' | 'unknown'}
@@ -208,23 +189,17 @@ export interface ProjectConfig {
208
189
  /**
209
190
  * Defines ownership of source code within the current project, by mapping
210
191
  * file paths and globs to owners. An owner is either a user, team, or group.
192
+ * @since 1.8.0
211
193
  */
212
194
  owners: OwnersConfig;
213
- /**
214
- * The default platform for all tasks within the project,
215
- * if their platform is unknown.
216
- *
217
- * @default 'unknown'
218
- * @deprecated
219
- */
220
- platform: PlatformType | null;
221
195
  /** Expanded information about the project. */
222
196
  project: ProjectMetadataConfig | null;
223
197
  /**
224
198
  * The technology stack of the project, for categorizing.
199
+ * @since 1.22.0
225
200
  *
226
201
  * @default 'unknown'
227
- * @type {'backend' | 'frontend' | 'infrastructure' | 'systems' | 'unknown'}
202
+ * @type {'backend' | 'data' | 'frontend' | 'infrastructure' | 'systems' | 'unknown'}
228
203
  */
229
204
  stack: StackType;
230
205
  /**
@@ -232,16 +207,19 @@ export interface ProjectConfig {
232
207
  * boundary enforcement, and task inheritance.
233
208
  */
234
209
  tags: Id[];
235
- /** A mapping of tasks by ID to parameters required for running the task. */
210
+ /**
211
+ * A map of identifiers to task objects. Tasks represent the work-unit
212
+ * of a project, and can be ran in the action pipeline.
213
+ */
236
214
  tasks: Record<Id, TaskConfig>;
237
215
  /** Overrides top-level toolchain settings, scoped to this project. */
238
- toolchain: ProjectToolchainConfig;
216
+ toolchains: ProjectToolchainsConfig;
239
217
  /** Overrides top-level workspace settings, scoped to this project. */
240
218
  workspace: ProjectWorkspaceConfig;
241
219
  }
242
220
  /** Expanded information about a project dependency. */
243
221
  export interface PartialProjectDependencyConfig {
244
- /** ID of the depended on project. */
222
+ /** Identifier of the depended on project. */
245
223
  id?: Id | null;
246
224
  /**
247
225
  * Scope of the dependency relationship.
@@ -259,38 +237,30 @@ export interface PartialProjectDependencyConfig {
259
237
  via?: string | null;
260
238
  }
261
239
  export type PartialProjectDependsOn = Id | PartialProjectDependencyConfig;
262
- /** Configures `Dockerfile` generation. */
263
- export interface PartialProjectDockerFileConfig {
264
- /** A task within the current project for building the project. */
265
- buildTask?: Id | null;
266
- /** The base Docker image. */
267
- image?: string | null;
268
- /** A task within the current project for starting the project. */
269
- startTask?: Id | null;
270
- }
271
- /** Configures aspects of the Docker scaffolding process. */
272
- export interface PartialProjectDockerScaffoldConfig {
240
+ /**
241
+ * Configures our Docker integration.
242
+ * @since 1.27.0
243
+ */
244
+ export interface PartialProjectDockerConfig {
273
245
  /**
274
- * List of glob patterns, relative from the project root,
275
- * to include (or exclude) in the sources skeleton.
246
+ * Configures aspects of the `Dockerfile` generation process.
247
+ * @since 1.27.0
276
248
  */
277
- include?: string[] | null;
278
- }
279
- /** Configures our Docker integration. */
280
- export interface PartialProjectDockerConfig {
281
- /** Configures aspects of the `Dockerfile` generation process. */
282
- file?: PartialProjectDockerFileConfig | null;
283
- /** Configures aspects of the Docker scaffolding process. */
284
- scaffold?: PartialProjectDockerScaffoldConfig | null;
249
+ file?: PartialDockerFileConfig | null;
250
+ /**
251
+ * Configures aspects of the Docker scaffolding process.
252
+ * @since 1.27.0
253
+ */
254
+ scaffold?: PartialDockerScaffoldConfig | null;
285
255
  }
286
256
  export type PartialOwnersPaths = string[] | Record<string, string[]>;
287
257
  /**
288
258
  * Defines ownership of source code within the current project, by mapping
289
- * file paths and globs to owners. An owner is either a user, team, or group.
259
+ * file paths and glob patterns to owners. An owner is either a user, team, or group.
290
260
  */
291
261
  export interface PartialOwnersConfig {
292
262
  /**
293
- * Bitbucket only. A mapping of custom groups (prefixed with `@@@`),
263
+ * Bitbucket only. A map of custom groups (prefixed with `@@@`),
294
264
  * to a list of user and normal groups.
295
265
  */
296
266
  customGroups?: Record<string, string[]> | null;
@@ -299,9 +269,9 @@ export interface PartialOwnersConfig {
299
269
  /** GitLab only. Marks the code owners section as optional. */
300
270
  optional?: boolean | null;
301
271
  /**
302
- * A mapping of file paths and file globs to owners.
272
+ * A list or map of file paths and glob patterns to owners.
303
273
  * When a list, the `defaultOwner` is the owner, and each item is a path.
304
- * When an object, the key is a path, and the value is a list of owners.
274
+ * When a map, the key is a path, and the value is a list of owners.
305
275
  */
306
276
  paths?: PartialOwnersPaths | null;
307
277
  /**
@@ -314,69 +284,59 @@ export interface PartialOwnersConfig {
314
284
  /** Expanded information about the project. */
315
285
  export interface PartialProjectMetadataConfig {
316
286
  /**
317
- * The Slack, Discord, etc, channel to discuss the project.
287
+ * The Slack, Discord, IRC, etc, channel to discuss the project.
318
288
  * Must start with a `#`.
319
289
  */
320
290
  channel?: string | null;
321
- /** A description on what the project does, and why it exists. */
291
+ /** A description on what the project does and why it exists. */
322
292
  description?: string | null;
323
293
  /** The individual maintainers of the project. The format is unspecified. */
324
294
  maintainers?: string[] | null;
325
295
  /** Custom metadata fields. */
326
296
  metadata?: Record<string, unknown> | null;
327
- /** A human-readable name of the project. */
328
- name?: string | null;
329
297
  /**
330
298
  * The owner of the project. Can be an individual, team, or
331
299
  * organization. The format is unspecified.
332
300
  */
333
301
  owner?: string | null;
334
- }
335
- /** Overrides top-level toolchain settings. */
336
- export interface PartialProjectToolchainCommonToolConfig {
337
- /** Version of the tool this project will use. */
338
- version?: UnresolvedVersionSpec | null;
302
+ /** A human-readable title of the project. */
303
+ title?: string | null;
339
304
  }
340
305
  export type PartialProjectToolchainEntry = null | boolean | PartialToolchainPluginConfig;
341
306
  /** Overrides top-level toolchain settings, scoped to this project. */
342
- export interface PartialProjectToolchainConfig {
343
- /** Overrides `bun` settings. */
344
- bun?: PartialProjectToolchainCommonToolConfig | null;
307
+ export interface PartialProjectToolchainsConfig {
345
308
  /**
346
- * The default toolchain(s) for all tasks within the project,
347
- * if their toolchain is unknown.
309
+ * A single toolchain, or list of toolchains, to inherit for
310
+ * this project and all of its tasks.
311
+ * @since 1.31.0
348
312
  */
349
313
  defaults?: Id | Id[] | null;
350
314
  /**
351
- * The default toolchain(s) for all tasks within the project,
352
- * if their toolchain is unknown.
315
+ * A single toolchain, or list of toolchains, to inherit for
316
+ * this project and all of its tasks.
317
+ * @since 1.31.0
353
318
  */
354
319
  default?: Id | Id[] | null;
355
- /** Overrides `deno` settings. */
356
- deno?: PartialProjectToolchainCommonToolConfig | null;
357
- /** Overrides `node` settings. */
358
- node?: PartialProjectToolchainCommonToolConfig | null;
359
- /** Overrides toolchains by their ID. */
320
+ /** Overrides workspace-level toolchains by their identifier. */
360
321
  plugins?: Record<Id, PartialProjectToolchainEntry> | null;
361
- /** Overrides `python` settings. */
362
- python?: PartialProjectToolchainCommonToolConfig | null;
363
- /** Overrides `rust` settings. */
364
- rust?: PartialProjectToolchainCommonToolConfig | null;
365
322
  }
366
- /** Controls how tasks are inherited. */
323
+ /** Controls how workspace-level tasks are inherited. */
367
324
  export interface PartialProjectWorkspaceInheritedTasksConfig {
368
- /** Excludes inheriting tasks by ID. */
325
+ /** Excludes inheriting tasks by their identifier. */
369
326
  exclude?: Id[] | null;
370
327
  /**
371
- * Only inherits tasks by ID, and ignores the rest.
372
- * When not defined, inherits all matching tasks.
373
- * When an empty list, inherits no tasks.
328
+ * Only inherits tasks with the provided identifiers,
329
+ * and ignores the rest. When not defined, inherits
330
+ * all matching tasks. When an empty list, inherits no tasks.
374
331
  */
375
332
  include?: Id[] | null;
376
- /** Renames inherited tasks to a new ID. */
333
+ /**
334
+ * Renames inherited tasks by mapping their existing
335
+ * identifier to a new identifier, scoped to this project.
336
+ */
377
337
  rename?: Record<Id, Id> | null;
378
338
  }
379
- /** Overrides top-level workspace settings, scoped to this project. */
339
+ /** Overrides workspace settings, scoped to this project. */
380
340
  export interface PartialProjectWorkspaceConfig {
381
341
  /** Controls how tasks are inherited. */
382
342
  inheritedTasks?: PartialProjectWorkspaceInheritedTasksConfig | null;
@@ -386,25 +346,30 @@ export interface PartialProjectWorkspaceConfig {
386
346
  * Docs: https://moonrepo.dev/docs/config/project
387
347
  */
388
348
  export interface PartialProjectConfig {
389
- /** @default 'https://moonrepo.dev/schemas/project.json' */
390
349
  $schema?: string | null;
391
350
  /** Other projects that this project depends on. */
351
+ deps?: PartialProjectDependsOn[] | null;
352
+ /** Other projects that this project depends on. */
392
353
  dependsOn?: PartialProjectDependsOn[] | null;
393
- /** Configures Docker integration for this project. */
354
+ /**
355
+ * Configures Docker integration for this project.
356
+ * @since 1.27.0
357
+ */
394
358
  docker?: PartialProjectDockerConfig | null;
395
359
  /**
396
- * A mapping of environment variables that will be set for
360
+ * A map of environment variables that will be inherited by
397
361
  * all tasks within the project.
398
362
  */
399
- env?: Record<string, string> | null;
363
+ env?: Record<string, string | null> | null;
400
364
  /**
401
- * A mapping of group IDs to a list of file paths, globs, and
365
+ * A map of group identifiers to a list of file paths, globs, and
402
366
  * environment variables, that can be referenced from tasks.
403
367
  */
404
368
  fileGroups?: Record<Id, Input[]> | null;
405
369
  /**
406
- * Overrides the ID within the project graph, as defined in
370
+ * Overrides the identifier within the project graph, as defined in
407
371
  * the workspace `projects` setting.
372
+ * @since 1.18.0
408
373
  */
409
374
  id?: Id | null;
410
375
  /**
@@ -414,13 +379,7 @@ export interface PartialProjectConfig {
414
379
  */
415
380
  language?: LanguageType | null;
416
381
  /**
417
- * The layer within the project stack, for categorizing.
418
- *
419
- * @default 'unknown'
420
- */
421
- type?: LayerType | null;
422
- /**
423
- * The layer within the project stack, for categorizing.
382
+ * The layer within the technology stack, for categorizing.
424
383
  *
425
384
  * @default 'unknown'
426
385
  */
@@ -428,20 +387,14 @@ export interface PartialProjectConfig {
428
387
  /**
429
388
  * Defines ownership of source code within the current project, by mapping
430
389
  * file paths and globs to owners. An owner is either a user, team, or group.
390
+ * @since 1.8.0
431
391
  */
432
392
  owners?: PartialOwnersConfig | null;
433
- /**
434
- * The default platform for all tasks within the project,
435
- * if their platform is unknown.
436
- *
437
- * @default 'unknown'
438
- * @deprecated
439
- */
440
- platform?: PlatformType | null;
441
393
  /** Expanded information about the project. */
442
394
  project?: PartialProjectMetadataConfig | null;
443
395
  /**
444
396
  * The technology stack of the project, for categorizing.
397
+ * @since 1.22.0
445
398
  *
446
399
  * @default 'unknown'
447
400
  */
@@ -451,10 +404,13 @@ export interface PartialProjectConfig {
451
404
  * boundary enforcement, and task inheritance.
452
405
  */
453
406
  tags?: Id[] | null;
454
- /** A mapping of tasks by ID to parameters required for running the task. */
407
+ /**
408
+ * A map of identifiers to task objects. Tasks represent the work-unit
409
+ * of a project, and can be ran in the action pipeline.
410
+ */
455
411
  tasks?: Record<Id, PartialTaskConfig> | null;
456
412
  /** Overrides top-level toolchain settings, scoped to this project. */
457
- toolchain?: PartialProjectToolchainConfig | null;
413
+ toolchains?: PartialProjectToolchainsConfig | null;
458
414
  /** Overrides top-level workspace settings, scoped to this project. */
459
415
  workspace?: PartialProjectWorkspaceConfig | null;
460
416
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project-config.d.ts","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-config.d.ts","sourceRoot":"","sources":["../src/project-config.ts"],"names":[],"mappings":"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"}