import type * as SVC from "@distilled.cloud/aws/codepipeline"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { Pipeline } from "./Pipeline.ts"; /** * Runtime binding for `codepipeline:GetPipelineState` — returns the current * state of every stage and action in the pipeline, including in-flight * executions, transition states, and manual-approval tokens. * ### Observing Pipelines * **Example:** Read the Pipeline State * ```typescript * const getState = yield* AWS.CodePipeline.GetPipelineState(pipeline); * * const state = yield* getState(); * const approval = state.stageStates * ?.find((s) => s.stageName === "Approve") * ?.actionStates?.find((a) => a.actionName === "ManualApproval"); * ``` * * @binding */ export interface GetPipelineState extends Binding.Service< GetPipelineState, "AWS.CodePipeline.GetPipelineState",
(
pipeline: P,
) => Effect.Effect<
() => Effect.Effect