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 `GetDomainMaintenanceStatus` operation (IAM action
7 * `es:GetDomainMaintenanceStatus`).
8 *
9 * Reads the status of one in-progress or completed maintenance action started with `StartDomainMaintenance`. Provide the implementation with
10 * `Effect.provide(AWS.OpenSearch.GetDomainMaintenanceStatusHttp)`.
11 * ### Domain Maintenance
12 * **Example:** Check a Maintenance Action
13 * ```typescript
14 * const getDomainMaintenanceStatus = yield* OpenSearch.GetDomainMaintenanceStatus();
15 *
16 * const result = yield* getDomainMaintenanceStatus({
17 * DomainName: name,
18 * MaintenanceId: maintenanceId,
19 * });
20 * // result.Status → "COMPLETED"
21 * ```
22 *
23 * @binding
24 */
25export interface GetDomainMaintenanceStatus extends Binding.Service<
26 GetDomainMaintenanceStatus,
27 "AWS.OpenSearch.GetDomainMaintenanceStatus",
28 () => Effect.Effect<
29 (
30 request: opensearch.GetDomainMaintenanceStatusRequest,
31 ) => Effect.Effect<
32 opensearch.GetDomainMaintenanceStatusResponse,
33 opensearch.GetDomainMaintenanceStatusError
34 >
35 >
36> {}
37export const GetDomainMaintenanceStatus =
38 Binding.Service<GetDomainMaintenanceStatus>(
39 "AWS.OpenSearch.GetDomainMaintenanceStatus",
40 );