1import type * as backup from "@distilled.cloud/aws/backup";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for the `ListProtectedResources` operation (IAM action
7 * `backup:ListProtectedResources`).
8 *
9 * Lists the resources successfully backed up by AWS Backup — each entry
10 * carries the resource ARN, type, and last-backup time. Provide the
11 * implementation with `Effect.provide(AWS.Backup.ListProtectedResourcesHttp)`.
12 * ### Protected Resources
13 * **Example:** List Protected Resources
14 * ```typescript
15 * const listProtectedResources = yield* AWS.Backup.ListProtectedResources();
16 *
17 * const page = yield* listProtectedResources({ MaxResults: 25 });
18 * ```
19 *
20 * @binding
21 */
22export interface ListProtectedResources extends Binding.Service<
23 ListProtectedResources,
24 "AWS.Backup.ListProtectedResources",
25 () => Effect.Effect<
26 (
27 request?: backup.ListProtectedResourcesInput,
28 ) => Effect.Effect<
29 backup.ListProtectedResourcesOutput,
30 backup.ListProtectedResourcesError
31 >
32 >
33> {}
34export const ListProtectedResources = Binding.Service<ListProtectedResources>(
35 "AWS.Backup.ListProtectedResources",
36);