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