1import type * as appintegrations from "@distilled.cloud/aws/appintegrations";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { DataIntegration } from "./DataIntegration.ts";
5
6export interface ListDataIntegrationAssociationsRequest extends Omit<
7 appintegrations.ListDataIntegrationAssociationsRequest,
8 "DataIntegrationIdentifier"
9> {}
10
11/**
12 * Lists the associations of an AppIntegrations {@link DataIntegration} — the
13 * clients (e.g. Amazon Connect / Amazon Q) it has been associated with
14 * (`app-integrations:ListDataIntegrationAssociations`).
15 *
16 * Provide the `ListDataIntegrationAssociationsHttp` layer on the Function to
17 * satisfy the binding.
18 * ### Listing Data Integration Associations
19 * **Example:** List a Data Integration's Associations
20 * ```typescript
21 * // init (provide AWS.AppIntegrations.ListDataIntegrationAssociationsHttp on the Function)
22 * const listDataIntegrationAssociations =
23 * yield* AWS.AppIntegrations.ListDataIntegrationAssociations(integration);
24 *
25 * // runtime — the DataIntegrationIdentifier is injected automatically
26 * const { DataIntegrationAssociations } =
27 * yield* listDataIntegrationAssociations();
28 * ```
29 *
30 * @binding
31 */
32export interface ListDataIntegrationAssociations extends Binding.Service<
33 ListDataIntegrationAssociations,
34 "AWS.AppIntegrations.ListDataIntegrationAssociations",
35 <R extends DataIntegration>(
36 integration: R,
37 ) => Effect.Effect<
38 (
39 request?: ListDataIntegrationAssociationsRequest,
40 ) => Effect.Effect<
41 appintegrations.ListDataIntegrationAssociationsResponse,
42 appintegrations.ListDataIntegrationAssociationsError
43 >
44 >
45> {}
46export const ListDataIntegrationAssociations =
47 Binding.Service<ListDataIntegrationAssociations>(
48 "AWS.AppIntegrations.ListDataIntegrationAssociations",
49 );