1import type * as bdar from "@distilled.cloud/aws/bedrock-data-automation-runtime";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for the `GetDataAutomationStatus` operation (IAM action
7 * `bedrock:GetDataAutomationStatus` on `*` — invocation ARNs are minted at
8 * runtime) — poll the status of an asynchronous Bedrock Data Automation job
9 * from a deployed Function.
10 *
11 * Provide the implementation with
12 * `Effect.provide(AWS.BedrockDataAutomation.GetDataAutomationStatusHttp)`.
13 * ### Polling Job Status
14 * **Example:** Check An Async Job's Status
15 * ```typescript
16 * // deploy time — account-level binding
17 * const getStatus = yield* AWS.BedrockDataAutomation.GetDataAutomationStatus();
18 *
19 * // runtime — poll the invocation returned by InvokeDataAutomationAsync
20 * const { status, outputConfiguration } = yield* getStatus({ invocationArn });
21 * if (status === "Success") {
22 * yield* Effect.log(`results at ${outputConfiguration?.s3Uri}`);
23 * }
24 * ```
25 *
26 * @binding
27 */
28export interface GetDataAutomationStatus extends Binding.Service<
29 GetDataAutomationStatus,
30 "AWS.BedrockDataAutomation.GetDataAutomationStatus",
31 () => Effect.Effect<
32 (
33 request: bdar.GetDataAutomationStatusRequest,
34 ) => Effect.Effect<
35 bdar.GetDataAutomationStatusResponse,
36 bdar.GetDataAutomationStatusError
37 >
38 >
39> {}
40export const GetDataAutomationStatus = Binding.Service<GetDataAutomationStatus>(
41 "AWS.BedrockDataAutomation.GetDataAutomationStatus",
42);