1import type * as appsignals from "@distilled.cloud/aws/application-signals";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `application-signals:ListServiceOperations`.
7 *
8 * Lists the operations of a discovered service that were invoked during a
9 * time range. Provide the implementation with
10 * `Effect.provide(AWS.ApplicationSignals.ListServiceOperationsHttp)`.
11 * ### Exploring the Service Topology
12 * **Example:** List a Service's Operations
13 * ```typescript
14 * // init — account-level, no resource argument
15 * const listServiceOperations =
16 * yield* AWS.ApplicationSignals.ListServiceOperations();
17 *
18 * // runtime
19 * const page = yield* listServiceOperations({
20 * StartTime: new Date(Date.now() - 3600_000),
21 * EndTime: new Date(),
22 * KeyAttributes: {
23 * Type: "Service",
24 * Name: "checkout-service",
25 * Environment: "eks:prod",
26 * },
27 * });
28 * ```
29 *
30 * @binding
31 */
32export interface ListServiceOperations extends Binding.Service<
33 ListServiceOperations,
34 "AWS.ApplicationSignals.ListServiceOperations",
35 () => Effect.Effect<
36 (
37 request: appsignals.ListServiceOperationsInput,
38 ) => Effect.Effect<
39 appsignals.ListServiceOperationsOutput,
40 appsignals.ListServiceOperationsError
41 >
42 >
43> {}
44
45export const ListServiceOperations = Binding.Service<ListServiceOperations>(
46 "AWS.ApplicationSignals.ListServiceOperations",
47);