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:DescribeTopicsDetectionJob` — get the
7 * properties (status, input/output config, timings) of an asynchronous
8 * topic modeling job started with {@link StartTopicsDetectionJob}.
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 TopicsDetection Job
15 * ```typescript
16 * // init
17 * const describeTopicsDetectionJob = yield* AWS.Comprehend.DescribeTopicsDetectionJob();
18 *
19 * // runtime
20 * const job = yield* describeTopicsDetectionJob({ JobId: jobId });
21 * // job.TopicsDetectionJobProperties?.JobStatus: "SUBMITTED" | "IN_PROGRESS" | "COMPLETED" | …
22 * ```
23 *
24 * @binding
25 */
26export interface DescribeTopicsDetectionJob extends Binding.Service<
27 DescribeTopicsDetectionJob,
28 "AWS.Comprehend.DescribeTopicsDetectionJob",
29 () => Effect.Effect<
30 (
31 request: comprehend.DescribeTopicsDetectionJobRequest,
32 ) => Effect.Effect<
33 comprehend.DescribeTopicsDetectionJobResponse,
34 comprehend.DescribeTopicsDetectionJobError
35 >
36 >
37> {}
38export const DescribeTopicsDetectionJob =
39 Binding.Service<DescribeTopicsDetectionJob>(
40 "AWS.Comprehend.DescribeTopicsDetectionJob",
41 );