Interface: WorkflowDefinition<I, C>
An interface that includes everything that makes up a workflow.
Type Parameters
| Type Parameter | Default type |
|---|---|
I extends readonly WorkflowArgument[] | any |
C | any |
Properties
checklistDescription()?
optionalchecklistDescription: (context) =>string
Description that will be printed when the workflow itself is part of a checklist. Experimental! Still need to experiment with workflows in workflows.
Parameters
| Parameter | Type |
|---|---|
context | C |
Returns
string
context()
context: (
arg) =>C
The context specific to this workflow, generated from the input and available to use in each step.
Parameters
| Parameter | Type |
|---|---|
arg | { input: CreateArgsType<I> & object; } |
arg.input | CreateArgsType<I> & object |
Returns
C
description
description:
string
Description of the workflow which will be shown in the CLI tool.
docFiles
docFiles:
Record<string,string>
A map of ids to doc file absolute paths which will be referenced as part of the workflow.
id
id:
string
Unique id for the workflow, for invoking it with the CLI tool.
input
input:
I
The input specific to this workflow.
sourceUrl
sourceUrl:
string
The source URL of the workflow. Set to import.meta.url.
steps
steps:
WorkflowStep<C,AnyStateMachine>[]
An array of steps to be executed in the workflow. Each step is a state machine, and a function which takes the context and returns the input for the state machine.
templateFiles
templateFiles:
Record<string,string>
A map of ids to template file absolute paths which will be copied and updated as part of the workflow.
versionControl?
optionalversionControl:object
Configure version control for the workflow. Right now, just provide paths which the workflow will consider safe to change as part of the workflow.
allowPaths?
optionalallowPaths:string[]