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 GetProtocolsList}.
7 */
8export interface GetProtocolsListRequest extends fms.GetProtocolsListRequest {}
9
10/**
11 * Runtime binding for `fms:GetProtocolsList`.
12 *
13 * Returns the specified Firewall Manager protocols list. Provide the
14 * implementation with `Effect.provide(AWS.FMS.GetProtocolsListHttp)`.
15 * ### Protocols Lists
16 * **Example:** Read a Protocols List
17 * ```typescript
18 * // init — account-level binding takes no resource
19 * const getProtocolsList = yield* AWS.FMS.GetProtocolsList();
20 *
21 * // runtime
22 * const result = yield* getProtocolsList({ ListId: listId });
23 * console.log(result.ProtocolsList?.ProtocolsList);
24 * ```
25 *
26 * @binding
27 */
28export interface GetProtocolsList extends Binding.Service<
29 GetProtocolsList,
30 "AWS.FMS.GetProtocolsList",
31 () => Effect.Effect<
32 (
33 request: GetProtocolsListRequest,
34 ) => Effect.Effect<fms.GetProtocolsListResponse, fms.GetProtocolsListError>
35 >
36> {}
37
38export const GetProtocolsList = Binding.Service<GetProtocolsList>(
39 "AWS.FMS.GetProtocolsList",
40);