1import type * as comprehend from "@distilled.cloud/aws/comprehend";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `comprehend:DescribeTargetedSentimentDetectionJob` — get the
7 * properties (status, input/output config, timings) of an asynchronous
8 * targeted-sentiment detection job started with {@link StartTargetedSentimentDetectionJob}.
9 *
10 * The binding takes no arguments and grants the action on `*` (job APIs
11 * have no resource-level IAM).
12 *
13 * ### Monitoring Analysis Jobs
14 * **Example:** Poll a TargetedSentimentDetection Job
15 * ```typescript
16 * // init
17 * const describeTargetedSentimentDetectionJob = yield* AWS.Comprehend.DescribeTargetedSentimentDetectionJob();
18 *
19 * // runtime
20 * const job = yield* describeTargetedSentimentDetectionJob({ JobId: jobId });
21 * // job.TargetedSentimentDetectionJobProperties?.JobStatus: "SUBMITTED" | "IN_PROGRESS" | "COMPLETED" | …
22 * ```
23 *
24 * @binding
25 */
26export interface DescribeTargetedSentimentDetectionJob extends Binding.Service<
27 DescribeTargetedSentimentDetectionJob,
28 "AWS.Comprehend.DescribeTargetedSentimentDetectionJob",
29 () => Effect.Effect<
30 (
31 request: comprehend.DescribeTargetedSentimentDetectionJobRequest,
32 ) => Effect.Effect<
33 comprehend.DescribeTargetedSentimentDetectionJobResponse,
34 comprehend.DescribeTargetedSentimentDetectionJobError
35 >
36 >
37> {}
38export const DescribeTargetedSentimentDetectionJob =
39 Binding.Service<DescribeTargetedSentimentDetectionJob>(
40 "AWS.Comprehend.DescribeTargetedSentimentDetectionJob",
41 );