1import type * as notifications from "@distilled.cloud/aws/notifications";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Request for {@link ListManagedNotificationChannelAssociations}.
7 */
8export interface ListManagedNotificationChannelAssociationsRequest
9 extends notifications.ListManagedNotificationChannelAssociationsRequest {}
10
11/**
12 * Runtime binding for
13 * `notifications:ListManagedNotificationChannelAssociations`.
14 *
15 * List the account contacts and channels associated with an AWS-managed
16 * notification configuration. Provide the implementation with
17 * `Effect.provide(AWS.Notifications.ListManagedNotificationChannelAssociationsHttp)`.
18 * ### Reading AWS-Managed Notifications
19 * **Example:** List a Managed Configuration's Channel Associations
20 * ```typescript
21 * // init — account-level binding takes no resource
22 * const listManagedNotificationChannelAssociations =
23 * yield* AWS.Notifications.ListManagedNotificationChannelAssociations();
24 *
25 * // runtime
26 * const result = yield* listManagedNotificationChannelAssociations({
27 * managedNotificationConfigurationArn: managedConfigArn,
28 * });
29 * const channels = result.channelAssociations;
30 * ```
31 *
32 * @binding
33 */
34export interface ListManagedNotificationChannelAssociations extends Binding.Service<
35 ListManagedNotificationChannelAssociations,
36 "AWS.Notifications.ListManagedNotificationChannelAssociations",
37 () => Effect.Effect<
38 (
39 request: ListManagedNotificationChannelAssociationsRequest,
40 ) => Effect.Effect<
41 notifications.ListManagedNotificationChannelAssociationsResponse,
42 notifications.ListManagedNotificationChannelAssociationsError
43 >
44 >
45> {}
46
47export const ListManagedNotificationChannelAssociations =
48 Binding.Service<ListManagedNotificationChannelAssociations>(
49 "AWS.Notifications.ListManagedNotificationChannelAssociations",
50 );