1import type * as chatbot from "@distilled.cloud/aws/chatbot";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `chatbot:DescribeSlackUserIdentities`.
7 *
8 * Lists the Slack user identities linked to AWS user identities, optionally
9 * filtered to one channel configuration — the read half of identity
10 * offboarding automation. Provide the implementation with
11 * `Effect.provide(AWS.Chatbot.DescribeSlackUserIdentitiesHttp)`.
12 * ### Slack Identity Management
13 * **Example:** List linked Slack user identities
14 * ```typescript
15 * const describeSlackUserIdentities =
16 * yield* AWS.Chatbot.DescribeSlackUserIdentities();
17 * const result = yield* describeSlackUserIdentities();
18 * const users = (result.SlackUserIdentities ?? []).map((u) => u.SlackUserId);
19 * ```
20 *
21 * @binding
22 */
23export interface DescribeSlackUserIdentities extends Binding.Service<
24 DescribeSlackUserIdentities,
25 "AWS.Chatbot.DescribeSlackUserIdentities",
26 () => Effect.Effect<
27 (
28 request?: chatbot.DescribeSlackUserIdentitiesRequest,
29 ) => Effect.Effect<
30 chatbot.DescribeSlackUserIdentitiesResult,
31 chatbot.DescribeSlackUserIdentitiesError
32 >
33 >
34> {}
35
36export const DescribeSlackUserIdentities =
37 Binding.Service<DescribeSlackUserIdentities>(
38 "AWS.Chatbot.DescribeSlackUserIdentities",
39 );