1import type * as ssm from "@distilled.cloud/aws/ssm-contacts";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `ssm-contacts:DescribeEngagement`.
7 *
8 * Read the details of an engagement — sender, subject, content, and the
9 * incident it belongs to.
10 * Provide the implementation with
11 * `Effect.provide(AWS.SSMContacts.DescribeEngagementHttp)`.
12 * ### Managing Engagements
13 * **Example:** Inspect an Engagement
14 * ```typescript
15 * const describeEngagement = yield* AWS.SSMContacts.DescribeEngagement();
16 *
17 * const engagement = yield* describeEngagement({ EngagementId: engagementArn });
18 * // engagement.Subject, engagement.ContactArn, ...
19 * ```
20 *
21 * @binding
22 */
23export interface DescribeEngagement extends Binding.Service<
24 DescribeEngagement,
25 "AWS.SSMContacts.DescribeEngagement",
26 () => Effect.Effect<
27 (
28 request: ssm.DescribeEngagementRequest,
29 ) => Effect.Effect<
30 ssm.DescribeEngagementResult,
31 ssm.DescribeEngagementError
32 >
33 >
34> {}
35export const DescribeEngagement = Binding.Service<DescribeEngagement>(
36 "AWS.SSMContacts.DescribeEngagement",
37);