1import type * as incidents from "@distilled.cloud/aws/ssm-incidents";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `ssm-incidents:DeleteIncidentRecord`.
7 *
8 * Deletes an incident record (idempotent — deleting a record that does not
9 * exist succeeds). Incident-record ARNs only exist at runtime, so the
10 * deploy-time grant is account-level (`Resource: "*"`).
11 * Provide the implementation with
12 * `Effect.provide(AWS.SSMIncidents.DeleteIncidentRecordHttp)`.
13 * ### Updating Incident Records
14 * **Example:** Delete An Incident Record
15 * ```typescript
16 * // init
17 * const deleteIncidentRecord = yield* AWS.SSMIncidents.DeleteIncidentRecord();
18 *
19 * // runtime
20 * yield* deleteIncidentRecord({ arn: incidentRecordArn });
21 * ```
22 *
23 * @binding
24 */
25export interface DeleteIncidentRecord extends Binding.Service<
26 DeleteIncidentRecord,
27 "AWS.SSMIncidents.DeleteIncidentRecord",
28 () => Effect.Effect<
29 (
30 request: incidents.DeleteIncidentRecordInput,
31 ) => Effect.Effect<
32 incidents.DeleteIncidentRecordOutput,
33 incidents.DeleteIncidentRecordError
34 >
35 >
36> {}
37export const DeleteIncidentRecord = Binding.Service<DeleteIncidentRecord>(
38 "AWS.SSMIncidents.DeleteIncidentRecord",
39);