1import type * as datazone from "@distilled.cloud/aws/datazone";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Domain } from "./Domain.ts";
5
6export interface ListTimeSeriesDataPointsRequest extends Omit<
7 datazone.ListTimeSeriesDataPointsInput,
8 "domainIdentifier"
9> {}
10
11/**
12 * Runtime binding for `datazone:ListTimeSeriesDataPoints`.
13 *
14 * Lists time series data points recorded on an asset or listing in the bound domain. The domain id is injected from the binding.
15 * Provide the implementation with
16 * `Effect.provide(AWS.DataZone.ListTimeSeriesDataPointsHttp)`.
17 * ### Time Series Metadata
18 * **Example:** Read Back Metric History
19 * ```typescript
20 * // init — bind the operation to the domain
21 * const listTimeSeriesDataPoints = yield* AWS.DataZone.ListTimeSeriesDataPoints(domain);
22 *
23 * // runtime
24 * const points = yield* listTimeSeriesDataPoints({
25 * entityIdentifier: assetId,
26 * entityType: "ASSET",
27 * formName: "quality",
28 * });
29 * ```
30 *
31 * @binding
32 */
33export interface ListTimeSeriesDataPoints extends Binding.Service<
34 ListTimeSeriesDataPoints,
35 "AWS.DataZone.ListTimeSeriesDataPoints",
36 (
37 domain: Domain,
38 ) => Effect.Effect<
39 (
40 request: ListTimeSeriesDataPointsRequest,
41 ) => Effect.Effect<
42 datazone.ListTimeSeriesDataPointsOutput,
43 datazone.ListTimeSeriesDataPointsError
44 >
45 >
46> {}
47export const ListTimeSeriesDataPoints =
48 Binding.Service<ListTimeSeriesDataPoints>(
49 "AWS.DataZone.ListTimeSeriesDataPoints",
50 );