1import type * as qbusiness from "@distilled.cloud/aws/qbusiness";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Application } from "./Application.ts";
5
6/**
7 * `DeleteChatControlsConfiguration` request with `applicationId` injected from the bound application.
8 */
9export interface DeleteChatControlsConfigurationRequest extends Omit<
10 qbusiness.DeleteChatControlsConfigurationRequest,
11 "applicationId"
12> {}
13
14/**
15 * Runtime binding for the `DeleteChatControlsConfiguration` operation (IAM action
16 * `qbusiness:DeleteChatControlsConfiguration`), scoped to one {@link Application}.
17 *
18 * Deletes the application's chat controls configuration.
19 * Provide the implementation with
20 * `Effect.provide(AWS.QBusiness.DeleteChatControlsConfigurationHttp)`.
21 *
22 * ### Admin Controls
23 * **Example:** Delete Chat Controls
24 * ```typescript
25 * const deleteControls =
26 * yield* AWS.QBusiness.DeleteChatControlsConfiguration(app);
27 *
28 * yield* deleteControls();
29 * ```
30 *
31 * @binding
32 */
33export interface DeleteChatControlsConfiguration extends Binding.Service<
34 DeleteChatControlsConfiguration,
35 "AWS.QBusiness.DeleteChatControlsConfiguration",
36 (
37 application: Application,
38 ) => Effect.Effect<
39 (
40 request?: DeleteChatControlsConfigurationRequest,
41 ) => Effect.Effect<
42 qbusiness.DeleteChatControlsConfigurationResponse,
43 qbusiness.DeleteChatControlsConfigurationError
44 >
45 >
46> {}
47export const DeleteChatControlsConfiguration =
48 Binding.Service<DeleteChatControlsConfiguration>(
49 "AWS.QBusiness.DeleteChatControlsConfiguration",
50 );