@lunora/workflow 1.0.0-alpha.10 → 1.0.0-alpha.12

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,22 +1,22 @@
1
1
  import { WorkflowEntrypoint, WorkflowEvent, WorkflowStep } from 'cloudflare:workers';
2
- import { W as WorkflowDefinition } from "../packem_shared/types.d-C9W6rEWv.mjs";
2
+ import { W as WorkflowDefinition } from "../packem_shared/types.d-DZlXmeGi.mjs";
3
3
  import '@lunora/values';
4
4
  /**
5
- * Base class for the generated `WorkflowEntrypoint` classes. Applies a
6
- * `defineWorkflow` definition onto Cloudflare's `WorkflowEntrypoint`: `run`
7
- * assembles the Lunora context (native `step`/`event` + the `ctx.run` function
8
- * dispatcher + a logger) and invokes the user's handler.
9
- *
10
- * Generated subclasses stay one line of behavior:
11
- *
12
- * ```ts
13
- * export class OrderPipelineWorkflow extends LunoraWorkflow {
14
- * constructor(ctx: ExecutionContext, env: Record<string, unknown>) {
15
- * super(ctx, env, orderPipeline, "orderPipeline");
16
- * }
17
- * }
18
- * ```
19
- */
5
+ * Base class for the generated `WorkflowEntrypoint` classes. Applies a
6
+ * `defineWorkflow` definition onto Cloudflare's `WorkflowEntrypoint`: `run`
7
+ * assembles the Lunora context (native `step`/`event` + the `ctx.run` function
8
+ * dispatcher + a logger) and invokes the user's handler.
9
+ *
10
+ * Generated subclasses stay one line of behavior:
11
+ *
12
+ * ```ts
13
+ * export class OrderPipelineWorkflow extends LunoraWorkflow {
14
+ * constructor(ctx: ExecutionContext, env: Record<string, unknown>) {
15
+ * super(ctx, env, orderPipeline, "orderPipeline");
16
+ * }
17
+ * }
18
+ * ```
19
+ */
20
20
  declare class LunoraWorkflow<Params = Record<string, unknown>, Output = unknown> extends WorkflowEntrypoint<Record<string, unknown>, Params> {
21
21
  #private;
22
22
  constructor(context: ConstructorParameters<typeof WorkflowEntrypoint>[0], env: Record<string, unknown>, definition: WorkflowDefinition<Params, Output>, exportName?: string);
@@ -1,22 +1,22 @@
1
1
  import { WorkflowEntrypoint, WorkflowEvent, WorkflowStep } from 'cloudflare:workers';
2
- import { W as WorkflowDefinition } from "../packem_shared/types.d-C9W6rEWv.js";
2
+ import { W as WorkflowDefinition } from "../packem_shared/types.d-DZlXmeGi.js";
3
3
  import '@lunora/values';
4
4
  /**
5
- * Base class for the generated `WorkflowEntrypoint` classes. Applies a
6
- * `defineWorkflow` definition onto Cloudflare's `WorkflowEntrypoint`: `run`
7
- * assembles the Lunora context (native `step`/`event` + the `ctx.run` function
8
- * dispatcher + a logger) and invokes the user's handler.
9
- *
10
- * Generated subclasses stay one line of behavior:
11
- *
12
- * ```ts
13
- * export class OrderPipelineWorkflow extends LunoraWorkflow {
14
- * constructor(ctx: ExecutionContext, env: Record&lt;string, unknown>) {
15
- * super(ctx, env, orderPipeline, "orderPipeline");
16
- * }
17
- * }
18
- * ```
19
- */
5
+ * Base class for the generated `WorkflowEntrypoint` classes. Applies a
6
+ * `defineWorkflow` definition onto Cloudflare's `WorkflowEntrypoint`: `run`
7
+ * assembles the Lunora context (native `step`/`event` + the `ctx.run` function
8
+ * dispatcher + a logger) and invokes the user's handler.
9
+ *
10
+ * Generated subclasses stay one line of behavior:
11
+ *
12
+ * ```ts
13
+ * export class OrderPipelineWorkflow extends LunoraWorkflow {
14
+ * constructor(ctx: ExecutionContext, env: Record&lt;string, unknown>) {
15
+ * super(ctx, env, orderPipeline, "orderPipeline");
16
+ * }
17
+ * }
18
+ * ```
19
+ */
20
20
  declare class LunoraWorkflow<Params = Record<string, unknown>, Output = unknown> extends WorkflowEntrypoint<Record<string, unknown>, Params> {
21
21
  #private;
22
22
  constructor(context: ConstructorParameters<typeof WorkflowEntrypoint>[0], env: Record<string, unknown>, definition: WorkflowDefinition<Params, Output>, exportName?: string);
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { a as Workflows, L as LunoraWorkflowsOptions, S as StepArgsValidator, b as StepConfig, c as StepDefinition, d as WorkflowConfig, W as WorkflowDefinition, e as WorkflowBranch, f as WorkflowInstanceStatus, g as WorkflowEventLike, h as WorkflowStepLike, i as WorkflowRunContext, j as WorkflowLogger, k as WorkflowRunFunction, l as WorkflowRunStepFunction } from "./packem_shared/types.d-C9W6rEWv.mjs";
2
- export type { A as ArgsOf, B as BranchCompensationParams, F as FunctionReference, I as InferStepArgs, R as RunFunctionOptions, m as RunStepOptions, n as StepHandler, o as StepRollbackContext, p as StepRollbackHandler, q as StepRunContext, r as WorkflowBindingLike, s as WorkflowBranchOutputs, t as WorkflowCreateOptions, u as WorkflowHandle, v as WorkflowHandler, w as WorkflowInstanceLike, x as WorkflowParallelFunction, y as WorkflowRollbackContextLike, z as WorkflowRollbackHandlerLike, C as WorkflowSpawnFunction, D as WorkflowSpawnOptions, E as WorkflowStatusResult, G as WorkflowStepConfigLike, H as WorkflowStepContextLike, J as WorkflowStepRollbackOptionsLike } from "./packem_shared/types.d-C9W6rEWv.mjs";
1
+ import { a as Workflows, L as LunoraWorkflowsOptions, S as StepArgsValidator, b as StepConfig, c as StepDefinition, d as WorkflowConfig, W as WorkflowDefinition, e as WorkflowBranch, f as WorkflowInstanceStatus, g as WorkflowEventLike, h as WorkflowStepLike, i as WorkflowRunContext, j as WorkflowLogger, k as WorkflowRunFunction, l as WorkflowRunStepFunction } from "./packem_shared/types.d-DZlXmeGi.mjs";
2
+ export type { A as ArgsOf, B as BranchCompensationParams, F as FunctionReference, I as InferStepArgs, R as RunFunctionOptions, m as RunStepOptions, n as StepHandler, o as StepRollbackContext, p as StepRollbackHandler, q as StepRunContext, r as WorkflowBindingLike, s as WorkflowBranchOutputs, t as WorkflowCreateOptions, u as WorkflowHandle, v as WorkflowHandler, w as WorkflowInstanceLike, x as WorkflowParallelFunction, y as WorkflowRollbackContextLike, z as WorkflowRollbackHandlerLike, C as WorkflowSpawnFunction, D as WorkflowSpawnOptions, E as WorkflowStatusResult, G as WorkflowStepConfigLike, H as WorkflowStepContextLike, J as WorkflowStepRollbackOptionsLike } from "./packem_shared/types.d-DZlXmeGi.mjs";
3
3
  import { LunoraError } from '@lunora/errors';
4
4
  import '@lunora/values';
5
5
  /** Wiring info for one declared workflow, emitted by codegen into the generated shard. */
@@ -10,108 +10,108 @@ interface WorkflowBindingSpec {
10
10
  exportName: string;
11
11
  }
12
12
  /**
13
- * Build the `ctx.workflows` handle for a request: resolve every spec's
14
- * `env[binding]` into the `exportName → Workflow binding` map and wrap it in
15
- * {@link createWorkflows}. A spec whose binding is absent from `env` is skipped
16
- * here — the helpful "no workflow named …" error is raised lazily by
17
- * `workflows.get(name)` when the missing workflow is actually used.
18
- */
13
+ * Build the `ctx.workflows` handle for a request: resolve every spec's
14
+ * `env[binding]` into the `exportName → Workflow binding` map and wrap it in
15
+ * {@link createWorkflows}. A spec whose binding is absent from `env` is skipped
16
+ * here — the helpful "no workflow named …" error is raised lazily by
17
+ * `workflows.get(name)` when the missing workflow is actually used.
18
+ */
19
19
  declare const createWorkflowContext: (env: Record<string, unknown>, specs: ReadonlyArray<WorkflowBindingSpec>) => Workflows;
20
20
  /**
21
- * Build the `ctx.workflows` handle from a map of `lunora/workflows.ts` export
22
- * name → Cloudflare `Workflow` binding. `get(name)` resolves the typed handle;
23
- * an unknown name throws with the list of declared workflows.
24
- */
21
+ * Build the `ctx.workflows` handle from a map of `lunora/workflows.ts` export
22
+ * name → Cloudflare `Workflow` binding. `get(name)` resolves the typed handle;
23
+ * an unknown name throws with the list of declared workflows.
24
+ */
25
25
  declare const createWorkflows: (options: LunoraWorkflowsOptions) => Workflows;
26
26
  /**
27
- * Declare a reusable durable step. Same `args` map shape a Lunora `query` /
28
- * `mutation` / `action` uses, so a step reads like a function:
29
- *
30
- * ```ts
31
- * // lunora/steps.ts
32
- * import { defineStep } from "@lunora/workflow";
33
- * import { v } from "@lunora/values";
34
- *
35
- * export const fetchImage = defineStep("fetch image", {
36
- * args: { imageKey: v.string() },
37
- * returns: v.object({ data: v.bytes() }),
38
- * handler: async (ctx, { imageKey }) => {
39
- * const object = await (ctx.env.BUCKET as R2Bucket).get(imageKey);
40
- * return { data: new Uint8Array(await object!.arrayBuffer()) };
41
- * },
42
- * rollback: async (ctx) => {
43
- * await (ctx.env.BUCKET as R2Bucket).delete(`tmp/${ctx.args.imageKey}`);
44
- * },
45
- * });
46
- * ```
47
- *
48
- * Then, inside a `defineWorkflow` handler:
49
- *
50
- * ```ts
51
- * const { data } = await ctx.runStep(fetchImage, { imageKey: ctx.params.imageKey });
52
- * ```
53
- */
27
+ * Declare a reusable durable step. Same `args` map shape a Lunora `query` /
28
+ * `mutation` / `action` uses, so a step reads like a function:
29
+ *
30
+ * ```ts
31
+ * // lunora/steps.ts
32
+ * import { defineStep } from "@lunora/workflow";
33
+ * import { v } from "@lunora/values";
34
+ *
35
+ * export const fetchImage = defineStep("fetch image", {
36
+ * args: { imageKey: v.string() },
37
+ * returns: v.object({ data: v.bytes() }),
38
+ * handler: async (ctx, { imageKey }) => {
39
+ * const object = await (ctx.env.BUCKET as R2Bucket).get(imageKey);
40
+ * return { data: new Uint8Array(await object!.arrayBuffer()) };
41
+ * },
42
+ * rollback: async (ctx) => {
43
+ * await (ctx.env.BUCKET as R2Bucket).delete(`tmp/${ctx.args.imageKey}`);
44
+ * },
45
+ * });
46
+ * ```
47
+ *
48
+ * Then, inside a `defineWorkflow` handler:
49
+ *
50
+ * ```ts
51
+ * const { data } = await ctx.runStep(fetchImage, { imageKey: ctx.params.imageKey });
52
+ * ```
53
+ */
54
54
  declare const defineStep: <A extends StepArgsValidator, Result>(name: string, config: StepConfig<A, Result>) => StepDefinition<A, Result>;
55
55
  /** True when a value is a `defineStep` result (the runtime brand check). */
56
56
  declare const isStepDefinition: (value: unknown) => value is StepDefinition;
57
57
  /**
58
- * The generated `WorkflowEntrypoint` class name for a `lunora/workflows.ts`
59
- * export: `orderPipeline` → `OrderPipelineWorkflow`. wrangler's
60
- * `workflows[].class_name` references it, so codegen and the config layer MUST
61
- * derive it identically — always via this helper.
62
- */
58
+ * The generated `WorkflowEntrypoint` class name for a `lunora/workflows.ts`
59
+ * export: `orderPipeline` → `OrderPipelineWorkflow`. wrangler's
60
+ * `workflows[].class_name` references it, so codegen and the config layer MUST
61
+ * derive it identically — always via this helper.
62
+ */
63
63
  declare const workflowClassName: (exportName: string) => string;
64
64
  /**
65
- * The wrangler binding name for a workflow export: `orderPipeline` →
66
- * `WORKFLOW_ORDER_PIPELINE`, `etl` → `WORKFLOW_ETL`. The `WORKFLOW_` prefix
67
- * namespaces these away from `SHARD`/`SESSION`/`SCHEDULER`/`CONTAINER_*` so a
68
- * workflow export can never collide with the built-in bindings.
69
- */
65
+ * The wrangler binding name for a workflow export: `orderPipeline` →
66
+ * `WORKFLOW_ORDER_PIPELINE`, `etl` → `WORKFLOW_ETL`. The `WORKFLOW_` prefix
67
+ * namespaces these away from `SHARD`/`SESSION`/`SCHEDULER`/`CONTAINER_*` so a
68
+ * workflow export can never collide with the built-in bindings.
69
+ */
70
70
  declare const workflowBindingName: (exportName: string) => string;
71
71
  /**
72
- * The stable workflow name wrangler registers (`workflows[].name`):
73
- * `orderPipeline` → `order-pipeline`. Used as the deployed workflow's
74
- * identifier when no explicit `name` override is given.
75
- */
72
+ * The stable workflow name wrangler registers (`workflows[].name`):
73
+ * `orderPipeline` → `order-pipeline`. Used as the deployed workflow's
74
+ * identifier when no explicit `name` override is given.
75
+ */
76
76
  declare const workflowDefaultName: (exportName: string) => string;
77
77
  /**
78
- * Declare a durable workflow deployed alongside the app. Pure validation +
79
- * branding: codegen discovers the export, emits the `WorkflowEntrypoint`
80
- * subclass (`_generated/workflows.ts`), and wires the typed `ctx.workflows`
81
- * handle; the config layer reconciles the wrangler `workflows[]` entry from the
82
- * same definition.
83
- *
84
- * ```ts
85
- * // lunora/workflows.ts
86
- * import { defineWorkflow } from "@lunora/workflow";
87
- * import { api } from "./_generated/api";
88
- *
89
- * export const orderPipeline = defineWorkflow&lt;{ orderId: string }>({
90
- * handler: async (ctx) => {
91
- * const order = await ctx.step.do("load", () => ctx.run(api.orders.get, { id: ctx.params.orderId }));
92
- * await ctx.step.sleep("cool-off", "1 minute");
93
- * await ctx.step.do("charge", () => ctx.run(api.payments.charge, { orderId: ctx.params.orderId }));
94
- * return order;
95
- * },
96
- * });
97
- * ```
98
- */
78
+ * Declare a durable workflow deployed alongside the app. Pure validation +
79
+ * branding: codegen discovers the export, emits the `WorkflowEntrypoint`
80
+ * subclass (`_generated/workflows.ts`), and wires the typed `ctx.workflows`
81
+ * handle; the config layer reconciles the wrangler `workflows[]` entry from the
82
+ * same definition.
83
+ *
84
+ * ```ts
85
+ * // lunora/workflows.ts
86
+ * import { defineWorkflow } from "@lunora/workflow";
87
+ * import { api } from "./_generated/api";
88
+ *
89
+ * export const orderPipeline = defineWorkflow&lt;{ orderId: string }>({
90
+ * handler: async (ctx) => {
91
+ * const order = await ctx.step.do("load", () => ctx.run(api.orders.get, { id: ctx.params.orderId }));
92
+ * await ctx.step.sleep("cool-off", "1 minute");
93
+ * await ctx.step.do("charge", () => ctx.run(api.payments.charge, { orderId: ctx.params.orderId }));
94
+ * return order;
95
+ * },
96
+ * });
97
+ * ```
98
+ */
99
99
  declare const defineWorkflow: <Params = Record<string, unknown>, Output = unknown>(config: WorkflowConfig<Params, Output>) => WorkflowDefinition<Params, Output>;
100
100
  /** True when a value is a `defineWorkflow` result (the runtime brand check). */
101
101
  declare const isWorkflowDefinition: (value: unknown) => value is WorkflowDefinition;
102
102
  /**
103
- * Throw from a workflow step (or handler) to fail the instance immediately
104
- * **without** retrying — the portable mirror of `cloudflare:workflows`'
105
- * `NonRetryableError`. Importable from Node, so workflow code stays unit-testable.
106
- *
107
- * ```ts
108
- * import { NonRetryableError } from "@lunora/workflow";
109
- *
110
- * if (order.status === "cancelled") {
111
- * throw new NonRetryableError("order already cancelled — no point retrying");
112
- * }
113
- * ```
114
- */
103
+ * Throw from a workflow step (or handler) to fail the instance immediately
104
+ * **without** retrying — the portable mirror of `cloudflare:workflows`'
105
+ * `NonRetryableError`. Importable from Node, so workflow code stays unit-testable.
106
+ *
107
+ * ```ts
108
+ * import { NonRetryableError } from "@lunora/workflow";
109
+ *
110
+ * if (order.status === "cancelled") {
111
+ * throw new NonRetryableError("order already cancelled — no point retrying");
112
+ * }
113
+ * ```
114
+ */
115
115
  declare class NonRetryableError extends Error {
116
116
  constructor(message: string, name?: string);
117
117
  }
@@ -120,34 +120,31 @@ declare const isNonRetryableError: (value: unknown) => value is NonRetryableErro
120
120
  /** Constructor shape of `cloudflare:workflows`' native `NonRetryableError`. */
121
121
  type NativeNonRetryableErrorConstructor = new (message: string, name?: string) => Error;
122
122
  /**
123
- * Rebuild a portable {@link NonRetryableError} as the native Cloudflare one,
124
- * preserving its `name`, `message`, `cause`, and `stack`. Used at the `src/do`
125
- * boundary where the native constructor is available; everywhere else the
126
- * portable error is thrown unchanged (and still honored by name).
127
- */
123
+ * Rebuild a portable {@link NonRetryableError} as the native Cloudflare one,
124
+ * preserving its `name`, `message`, `cause`, and `stack`. Used at the `src/do`
125
+ * boundary where the native constructor is available; everywhere else the
126
+ * portable error is thrown unchanged (and still honored by name).
127
+ */
128
128
  declare const toNativeNonRetryableError: (error: NonRetryableError, NativeNonRetryableError: NativeNonRetryableErrorConstructor) => Error;
129
129
  /**
130
- * If `error` is a portable {@link NonRetryableError} and a native constructor is
131
- * available, rethrow it as the native error; otherwise rethrow `error` as-is.
132
- * Always throws — the `never` return lets callers `return convertNonRetryableError(...)`.
133
- */
130
+ * If `error` is a portable {@link NonRetryableError} and a native constructor is
131
+ * available, rethrow it as the native error; otherwise rethrow `error` as-is.
132
+ * Always throws — the `never` return lets callers `return convertNonRetryableError(...)`.
133
+ */
134
134
  declare const convertNonRetryableError: (error: unknown, NativeNonRetryableError: NativeNonRetryableErrorConstructor | undefined) => never;
135
135
  /** Hard cap on branches per `ctx.parallel` call — auto-scale, never silently spawn unbounded DOs. */
136
136
  declare const MAX_BRANCHES = 100;
137
- /** The params key the parent injects so a child knows to signal completion back. Stripped before the user handler sees `ctx.params`. */
138
-
139
137
  /**
140
- * Build a single fan-out branch: a declared child workflow referenced by its
141
- * `lunora/workflows.ts` export name, plus the params it is created with. Pass the
142
- * output type as the generic argument so `ctx.parallel(...)` infers the result
143
- * tuple — e.g. `branch("imageTag", { key })` typed as `branch` of `{ tags }`.
144
- */
138
+ * Build a single fan-out branch: a declared child workflow referenced by its
139
+ * `lunora/workflows.ts` export name, plus the params it is created with. Pass the
140
+ * output type as the generic argument so `ctx.parallel(...)` infers the result
141
+ * tuple — e.g. `branch("imageTag", { key })` typed as `branch` of `{ tags }`.
142
+ */
145
143
  declare const branch: <Output = unknown>(workflow: string, params?: Record<string, unknown>, options?: {
146
144
  compensateWith?: string;
147
145
  id?: string;
148
146
  timeout?: number | string;
149
147
  }) => WorkflowBranch<Output>;
150
- /** Build the success outcome a completed branch reports to its parent. */
151
148
  /** The lifecycle mutations the REST API exposes via `PATCH .../instances/{id}`. */
152
149
  type WorkflowInstanceAction = "pause" | "resume" | "terminate";
153
150
  /** Configuration for a {@link WorkflowsRestClient}. */
@@ -219,11 +216,11 @@ interface WorkflowsRestClient {
219
216
  }>;
220
217
  }
221
218
  /**
222
- * Build a {@link WorkflowsRestClient}. Each call hits the account-scoped REST
223
- * endpoint with the bearer token, unwraps Cloudflare's
224
- * `{ success, errors, result, result_info }` envelope, and normalizes the
225
- * snake_case payload into the camelCase shapes the studio renders.
226
- */
219
+ * Build a {@link WorkflowsRestClient}. Each call hits the account-scoped REST
220
+ * endpoint with the bearer token, unwraps Cloudflare's
221
+ * `{ success, errors, result, result_info }` envelope, and normalizes the
222
+ * snake_case payload into the camelCase shapes the studio renders.
223
+ */
227
224
  declare const createWorkflowsRestClient: (config: WorkflowsRestConfig) => WorkflowsRestClient;
228
225
  interface RunContextOptions<Params> {
229
226
  env: Record<string, unknown>;
@@ -237,12 +234,12 @@ interface RunContextOptions<Params> {
237
234
  /** Assemble the {@link WorkflowRunContext} passed to a `defineWorkflow` handler. */
238
235
  declare const createWorkflowRunContext: <Params = Record<string, unknown>>(options: RunContextOptions<Params>) => WorkflowRunContext<Params>;
239
236
  /**
240
- * Validate a step's args through its validator map, prefixing any
241
- * `ValidationError` with `step args.&lt;key>` so the failure points at the
242
- * offending field. Delegates to `@lunora/values`' shared {@link parseValidatorMap}
243
- * — the same parser the procedure builder and HTTP routes use — so the
244
- * optional-skip and error-prefix semantics stay in lockstep across the framework.
245
- */
237
+ * Validate a step's args through its validator map, prefixing any
238
+ * `ValidationError` with `step args.&lt;key>` so the failure points at the
239
+ * offending field. Delegates to `@lunora/values`' shared {@link parseValidatorMap}
240
+ * — the same parser the procedure builder and HTTP routes use — so the
241
+ * optional-skip and error-prefix semantics stay in lockstep across the framework.
242
+ */
246
243
  declare const validateStepArgs: (validators: StepArgsValidator, source: Record<string, unknown>) => Record<string, unknown>;
247
244
  /** Dependencies needed to run a step: the native step API plus the workflow's env / runner / logger. */
248
245
  interface RunStepDeps {
@@ -258,10 +255,10 @@ interface RunStepDeps {
258
255
  step: WorkflowStepLike;
259
256
  }
260
257
  /**
261
- * Build the `ctx.runStep` function bound to one workflow invocation. Each call
262
- * runs the step through `step.do(...)`: validate args → run body → validate
263
- * result (when `returns` is declared), with any portable `NonRetryableError`
264
- * converted to the native one and any declared rollback forwarded to Cloudflare.
265
- */
258
+ * Build the `ctx.runStep` function bound to one workflow invocation. Each call
259
+ * runs the step through `step.do(...)`: validate args → run body → validate
260
+ * result (when `returns` is declared), with any portable `NonRetryableError`
261
+ * converted to the native one and any declared rollback forwarded to Cloudflare.
262
+ */
266
263
  declare const createRunStep: (deps: RunStepDeps) => WorkflowRunStepFunction;
267
264
  export { type LunoraWorkflowsOptions, MAX_BRANCHES, type NativeNonRetryableErrorConstructor, NonRetryableError, type StepArgsValidator, type StepConfig, type StepDefinition, type WorkflowBindingSpec, type WorkflowBranch, type WorkflowConfig, type WorkflowDefinition, type WorkflowEventLike, type WorkflowInstanceAction, type WorkflowInstanceDetail, type WorkflowInstancePage, type WorkflowInstanceStatus, type WorkflowInstanceSummary, type WorkflowLogger, type WorkflowRunContext, type WorkflowRunFunction, type WorkflowRunStepFunction, type WorkflowStepDetail, type WorkflowStepLike, type Workflows, type WorkflowsRestClient, type WorkflowsRestConfig, WorkflowsRestError, branch, convertNonRetryableError, createRunStep, createWorkflowContext, createWorkflowRunContext, createWorkflows, createWorkflowsRestClient, defineStep, defineWorkflow, isNonRetryableError, isStepDefinition, isWorkflowDefinition, toNativeNonRetryableError, validateStepArgs, workflowBindingName, workflowClassName, workflowDefaultName };