1import type * as transcribe from "@distilled.cloud/aws/transcribe";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `transcribe:CreateCallAnalyticsCategory` — create a Call Analytics category whose rules automatically flag matching calls (e.g. long silence, specific phrases, negative sentiment).
7 *
8 * Amazon Transcribe batch actions have no resource-level IAM; the host is
9 * granted `transcribe:CreateCallAnalyticsCategory` on `*`.
10 *
11 * ### Call Analytics Categories
12 * **Example:** Create a Call Analytics Category
13 * ```typescript
14 * // init
15 * const createCallAnalyticsCategory = yield* AWS.Transcribe.CreateCallAnalyticsCategory();
16 *
17 * // runtime
18 * yield* createCallAnalyticsCategory({
19 * CategoryName: "long-silence",
20 * Rules: [{ NonTalkTimeFilter: { Threshold: 30000 } }],
21 * });
22 * ```
23 *
24 * @binding
25 */
26export interface CreateCallAnalyticsCategory extends Binding.Service<
27 CreateCallAnalyticsCategory,
28 "AWS.Transcribe.CreateCallAnalyticsCategory",
29 () => Effect.Effect<
30 (
31 request: transcribe.CreateCallAnalyticsCategoryRequest,
32 ) => Effect.Effect<
33 transcribe.CreateCallAnalyticsCategoryResponse,
34 transcribe.CreateCallAnalyticsCategoryError
35 >
36 >
37> {}
38export const CreateCallAnalyticsCategory =
39 Binding.Service<CreateCallAnalyticsCategory>(
40 "AWS.Transcribe.CreateCallAnalyticsCategory",
41 );