1import type * as healthlake from "@distilled.cloud/aws/healthlake";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { FHIRDatastore } from "./FHIRDatastore.ts";
5
6/**
7 * `ListFHIRExportJobs` request with `DatastoreId` injected from the bound
8 * data store.
9 */
10export interface ListFHIRExportJobsRequest extends Omit<
11 healthlake.ListFHIRExportJobsRequest,
12 "DatastoreId"
13> {}
14
15/**
16 * Runtime binding for the `ListFHIRExportJobs` operation (IAM action
17 * `healthlake:ListFHIRExportJobs`), scoped to one {@link FHIRDatastore}.
18 *
19 * Lists the bulk FHIR export jobs of the bound data store, optionally
20 * filtered by name, status or submit-time window. Provide the implementation
21 * with `Effect.provide(AWS.HealthLake.ListFHIRExportJobsHttp)`.
22 *
23 * ### Exporting FHIR Data
24 * **Example:** List Recent Export Jobs
25 * ```typescript
26 * const listExports = yield* HealthLake.ListFHIRExportJobs(datastore);
27 *
28 * const jobs = yield* listExports({ JobStatus: "IN_PROGRESS" });
29 * // jobs.ExportJobPropertiesList, jobs.NextToken
30 * ```
31 *
32 * @binding
33 */
34export interface ListFHIRExportJobs extends Binding.Service<
35 ListFHIRExportJobs,
36 "AWS.HealthLake.ListFHIRExportJobs",
37 (
38 datastore: FHIRDatastore,
39 ) => Effect.Effect<
40 (
41 request?: ListFHIRExportJobsRequest,
42 ) => Effect.Effect<
43 healthlake.ListFHIRExportJobsResponse,
44 healthlake.ListFHIRExportJobsError
45 >
46 >
47> {}
48export const ListFHIRExportJobs = Binding.Service<ListFHIRExportJobs>(
49 "AWS.HealthLake.ListFHIRExportJobs",
50);