1import type * as serverless from "@distilled.cloud/aws/redshift-serverless";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for the `ListRecoveryPoints` operation (IAM actions
7 * `redshift-serverless:ListRecoveryPoints`).
8 *
9 * Lists the automatic recovery points Redshift Serverless created in the
10 * last 24 hours, optionally filtered by namespace — the discovery half of
11 * point-in-time recovery tooling. Provide the implementation with
12 * `Effect.provide(AWS.RedshiftServerless.ListRecoveryPointsHttp)`.
13 * ### Working with Recovery Points
14 * **Example:** List Recovery Points for a Namespace
15 * ```typescript
16 * // init — resolve the runtime client
17 * const listRecoveryPoints = yield* AWS.RedshiftServerless.ListRecoveryPoints();
18 *
19 * const { recoveryPoints } = yield* listRecoveryPoints({ namespaceName });
20 * ```
21 *
22 * @binding
23 */
24export interface ListRecoveryPoints extends Binding.Service<
25 ListRecoveryPoints,
26 "AWS.RedshiftServerless.ListRecoveryPoints",
27 () => Effect.Effect<
28 (
29 request?: serverless.ListRecoveryPointsRequest,
30 ) => Effect.Effect<
31 serverless.ListRecoveryPointsResponse,
32 serverless.ListRecoveryPointsError
33 >
34 >
35> {}
36export const ListRecoveryPoints = Binding.Service<ListRecoveryPoints>(
37 "AWS.RedshiftServerless.ListRecoveryPoints",
38);