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:GetVocabulary` — read a custom vocabulary's processing state and download URI.
7 *
8 * Amazon Transcribe batch actions have no resource-level IAM; the host is
9 * granted `transcribe:GetVocabulary` on `*`.
10 *
11 * ### Custom Vocabularies
12 * **Example:** Poll a Custom Vocabulary
13 * ```typescript
14 * // init
15 * const getVocabulary = yield* AWS.Transcribe.GetVocabulary();
16 *
17 * // runtime
18 * const { VocabularyState } = yield* getVocabulary({
19 * VocabularyName: "tenant-123-vocabulary",
20 * });
21 * ```
22 *
23 * @binding
24 */
25export interface GetVocabulary extends Binding.Service<
26 GetVocabulary,
27 "AWS.Transcribe.GetVocabulary",
28 () => Effect.Effect<
29 (
30 request: transcribe.GetVocabularyRequest,
31 ) => Effect.Effect<
32 transcribe.GetVocabularyResponse,
33 transcribe.GetVocabularyError
34 >
35 >
36> {}
37export const GetVocabulary = Binding.Service<GetVocabulary>(
38 "AWS.Transcribe.GetVocabulary",
39);