1import type * as fms from "@distilled.cloud/aws/fms";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Request for {@link ListProtocolsLists}.
7 */
8export interface ListProtocolsListsRequest
9 extends fms.ListProtocolsListsRequest {}
10
11/**
12 * Runtime binding for `fms:ListProtocolsLists`.
13 *
14 * Returns an array of `ProtocolsListDataSummary` objects for the protocols lists in the administrator's account. Provide the
15 * implementation with `Effect.provide(AWS.FMS.ListProtocolsListsHttp)`.
16 * ### Protocols Lists
17 * **Example:** List Protocols Lists
18 * ```typescript
19 * // init — account-level binding takes no resource
20 * const listProtocolsLists = yield* AWS.FMS.ListProtocolsLists();
21 *
22 * // runtime
23 * const result = yield* listProtocolsLists({ MaxResults: 25 });
24 * console.log(result.ProtocolsLists?.length);
25 * ```
26 *
27 * @binding
28 */
29export interface ListProtocolsLists extends Binding.Service<
30 ListProtocolsLists,
31 "AWS.FMS.ListProtocolsLists",
32 () => Effect.Effect<
33 (
34 request: ListProtocolsListsRequest,
35 ) => Effect.Effect<
36 fms.ListProtocolsListsResponse,
37 fms.ListProtocolsListsError
38 >
39 >
40> {}
41
42export const ListProtocolsLists = Binding.Service<ListProtocolsLists>(
43 "AWS.FMS.ListProtocolsLists",
44);