1import type * as ssm from "@distilled.cloud/aws/ssm-contacts";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Contact } from "./Contact.ts";
5
6/**
7 * Runtime binding for `ssm-contacts:ListPagesByContact`.
8 *
9 * List the pages (individual engagement deliveries) sent to the bound
10 * contact. The contact's ARN is injected as `ContactId`.
11 * Provide the implementation with
12 * `Effect.provide(AWS.SSMContacts.ListPagesByContactHttp)`.
13 * ### Working with Pages
14 * **Example:** List Pages Sent to a Contact
15 * ```typescript
16 * const listPagesByContact = yield* AWS.SSMContacts.ListPagesByContact(oncall);
17 *
18 * const { Pages } = yield* listPagesByContact();
19 * ```
20 *
21 * @binding
22 */
23export interface ListPagesByContact extends Binding.Service<
24 ListPagesByContact,
25 "AWS.SSMContacts.ListPagesByContact",
26 (
27 contact: Contact,
28 ) => Effect.Effect<
29 (
30 request?: Omit<ssm.ListPagesByContactRequest, "ContactId">,
31 ) => Effect.Effect<
32 ssm.ListPagesByContactResult,
33 ssm.ListPagesByContactError
34 >
35 >
36> {}
37export const ListPagesByContact = Binding.Service<ListPagesByContact>(
38 "AWS.SSMContacts.ListPagesByContact",
39);