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:DeleteSlackWorkspaceAuthorization`.
7 *
8 * Revokes AWS Chatbot's authorization for an entire Slack workspace — the
9 * drastic end of offboarding automation. Existing channel configurations
10 * for the workspace stop working until it is re-authorized via the console
11 * OAuth flow. Provide the implementation with
12 * `Effect.provide(AWS.Chatbot.DeleteSlackWorkspaceAuthorizationHttp)`.
13 * ### Slack Identity Management
14 * **Example:** Revoke a Slack workspace authorization
15 * ```typescript
16 * const deleteSlackWorkspaceAuthorization =
17 * yield* AWS.Chatbot.DeleteSlackWorkspaceAuthorization();
18 * yield* deleteSlackWorkspaceAuthorization({ SlackTeamId: "T012ABCDEFG" });
19 * ```
20 *
21 * @binding
22 */
23export interface DeleteSlackWorkspaceAuthorization extends Binding.Service<
24 DeleteSlackWorkspaceAuthorization,
25 "AWS.Chatbot.DeleteSlackWorkspaceAuthorization",
26 () => Effect.Effect<
27 (
28 request: chatbot.DeleteSlackWorkspaceAuthorizationRequest,
29 ) => Effect.Effect<
30 chatbot.DeleteSlackWorkspaceAuthorizationResult,
31 chatbot.DeleteSlackWorkspaceAuthorizationError
32 >
33 >
34> {}
35
36export const DeleteSlackWorkspaceAuthorization =
37 Binding.Service<DeleteSlackWorkspaceAuthorization>(
38 "AWS.Chatbot.DeleteSlackWorkspaceAuthorization",
39 );