1import type * as securityhub from "@distilled.cloud/aws/securityhub";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `securityhub:BatchUpdateStandardsControlAssociations`.
7 *
8 * Enables or disables a batch of controls within specific standards.
9 * Account-level operation — invoked with the caller's request as-is.
10 * Provide the implementation with
11 * `Effect.provide(AWS.SecurityHub.BatchUpdateStandardsControlAssociationsHttp)`.
12 * ### Standards & Controls
13 * **Example:** Disable a Control in One Standard
14 * ```typescript
15 * // init — account-level binding, no resource argument
16 * const batchUpdateStandardsControlAssociations = yield* AWS.SecurityHub.BatchUpdateStandardsControlAssociations();
17 *
18 * // runtime
19 * yield* batchUpdateStandardsControlAssociations({
20 * StandardsControlAssociationUpdates: [{
21 * SecurityControlId: "IAM.1",
22 * StandardsArn: standardsArn,
23 * AssociationStatus: "DISABLED",
24 * UpdatedReason: "handled by SSO",
25 * }],
26 * });
27 * ```
28 *
29 * @binding
30 */
31export interface BatchUpdateStandardsControlAssociations extends Binding.Service<
32 BatchUpdateStandardsControlAssociations,
33 "AWS.SecurityHub.BatchUpdateStandardsControlAssociations",
34 () => Effect.Effect<
35 (
36 request?: securityhub.BatchUpdateStandardsControlAssociationsRequest,
37 ) => Effect.Effect<
38 securityhub.BatchUpdateStandardsControlAssociationsResponse,
39 securityhub.BatchUpdateStandardsControlAssociationsError
40 >
41 >
42> {}
43export const BatchUpdateStandardsControlAssociations =
44 Binding.Service<BatchUpdateStandardsControlAssociations>(
45 "AWS.SecurityHub.BatchUpdateStandardsControlAssociations",
46 );