1import type * as opensearch from "@distilled.cloud/aws/opensearch";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for the `CancelServiceSoftwareUpdate` operation (IAM action
7 * `es:CancelServiceSoftwareUpdate`).
8 *
9 * Cancels a scheduled service software update — only while the update is in the `PENDING_UPDATE` state. Provide the implementation with
10 * `Effect.provide(AWS.OpenSearch.CancelServiceSoftwareUpdateHttp)`.
11 * ### Service Software Updates
12 * **Example:** Cancel a Pending Update
13 * ```typescript
14 * const cancelServiceSoftwareUpdate = yield* OpenSearch.CancelServiceSoftwareUpdate();
15 *
16 * const result = yield* cancelServiceSoftwareUpdate({ DomainName: name });
17 * // result.ServiceSoftwareOptions?.UpdateStatus → "NOT_ELIGIBLE" | "ELIGIBLE"
18 * ```
19 *
20 * @binding
21 */
22export interface CancelServiceSoftwareUpdate extends Binding.Service<
23 CancelServiceSoftwareUpdate,
24 "AWS.OpenSearch.CancelServiceSoftwareUpdate",
25 () => Effect.Effect<
26 (
27 request: opensearch.CancelServiceSoftwareUpdateRequest,
28 ) => Effect.Effect<
29 opensearch.CancelServiceSoftwareUpdateResponse,
30 opensearch.CancelServiceSoftwareUpdateError
31 >
32 >
33> {}
34export const CancelServiceSoftwareUpdate =
35 Binding.Service<CancelServiceSoftwareUpdate>(
36 "AWS.OpenSearch.CancelServiceSoftwareUpdate",
37 );