1import type * as auditmanager from "@distilled.cloud/aws/auditmanager";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Assessment } from "./Assessment.ts";
5
6/** `BatchDeleteDelegationByAssessment` request with `assessmentId` injected from the bound {@link Assessment}. */
7export interface BatchDeleteDelegationByAssessmentRequest extends Omit<
8 auditmanager.BatchDeleteDelegationByAssessmentRequest,
9 "assessmentId"
10> {}
11
12/**
13 * Runtime binding for `auditmanager:BatchDeleteDelegationByAssessment`.
14 *
15 * Deletes a batch of delegations from the bound assessment. Provide the
16 * implementation with `Effect.provide(AWS.AuditManager.BatchDeleteDelegationByAssessmentHttp)`.
17 * ### Delegations
18 * **Example:** Revoke Delegations
19 * ```typescript
20 * const batchDeleteDelegationByAssessment = yield* AWS.AuditManager.BatchDeleteDelegationByAssessment(assessment);
21 * const result = yield* batchDeleteDelegationByAssessment({ delegationIds });
22 * ```
23 *
24 * @binding
25 */
26export interface BatchDeleteDelegationByAssessment extends Binding.Service<
27 BatchDeleteDelegationByAssessment,
28 "AWS.AuditManager.BatchDeleteDelegationByAssessment",
29 (
30 assessment: Assessment,
31 ) => Effect.Effect<
32 (
33 request: BatchDeleteDelegationByAssessmentRequest,
34 ) => Effect.Effect<
35 auditmanager.BatchDeleteDelegationByAssessmentResponse,
36 auditmanager.BatchDeleteDelegationByAssessmentError
37 >
38 >
39> {}
40
41export const BatchDeleteDelegationByAssessment =
42 Binding.Service<BatchDeleteDelegationByAssessment>(
43 "AWS.AuditManager.BatchDeleteDelegationByAssessment",
44 );