1import type * as imagebuilder from "@distilled.cloud/aws/imagebuilder";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `imagebuilder:ListWorkflowExecutions`.
7 *
8 * Enumerates the build/test/distribution workflow runs of an image build
9 * version — the drill-down view of what a build is currently doing (each
10 * entry reports the workflow's status and step counts). Account-level
11 * binding: pass the `imageBuildVersionArn`. Provide the implementation with
12 * `Effect.provide(AWS.ImageBuilder.ListWorkflowExecutionsHttp)`.
13 * ### Observing Builds
14 * **Example:** Inspect a Build's Workflow Progress
15 * ```typescript
16 * // init — account-level binding, no resource argument
17 * const listWorkflowExecutions =
18 * yield* AWS.ImageBuilder.ListWorkflowExecutions();
19 *
20 * // runtime
21 * const { workflowExecutions } = yield* listWorkflowExecutions({
22 * imageBuildVersionArn,
23 * });
24 * for (const execution of workflowExecutions ?? []) {
25 * yield* Effect.log(`${execution.type}: ${execution.status}`);
26 * }
27 * ```
28 *
29 * @binding
30 */
31export interface ListWorkflowExecutions extends Binding.Service<
32 ListWorkflowExecutions,
33 "AWS.ImageBuilder.ListWorkflowExecutions",
34 () => Effect.Effect<
35 (
36 request: imagebuilder.ListWorkflowExecutionsRequest,
37 ) => Effect.Effect<
38 imagebuilder.ListWorkflowExecutionsResponse,
39 imagebuilder.ListWorkflowExecutionsError
40 >
41 >
42> {}
43export const ListWorkflowExecutions = Binding.Service<ListWorkflowExecutions>(
44 "AWS.ImageBuilder.ListWorkflowExecutions",
45);