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 * `ListFHIRImportJobs` request with `DatastoreId` injected from the bound
8 * data store.
9 */
10export interface ListFHIRImportJobsRequest extends Omit<
11 healthlake.ListFHIRImportJobsRequest,
12 "DatastoreId"
13> {}
14
15/**
16 * Runtime binding for the `ListFHIRImportJobs` operation (IAM action
17 * `healthlake:ListFHIRImportJobs`), scoped to one {@link FHIRDatastore}.
18 *
19 * Lists the bulk FHIR import 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.ListFHIRImportJobsHttp)`.
22 *
23 * ### Importing FHIR Data
24 * **Example:** List Recent Import Jobs
25 * ```typescript
26 * const listImports = yield* HealthLake.ListFHIRImportJobs(datastore);
27 *
28 * const jobs = yield* listImports({ JobStatus: "COMPLETED" });
29 * // jobs.ImportJobPropertiesList, jobs.NextToken
30 * ```
31 *
32 * @binding
33 */
34export interface ListFHIRImportJobs extends Binding.Service<
35 ListFHIRImportJobs,
36 "AWS.HealthLake.ListFHIRImportJobs",
37 (
38 datastore: FHIRDatastore,
39 ) => Effect.Effect<
40 (
41 request?: ListFHIRImportJobsRequest,
42 ) => Effect.Effect<
43 healthlake.ListFHIRImportJobsResponse,
44 healthlake.ListFHIRImportJobsError
45 >
46 >
47> {}
48export const ListFHIRImportJobs = Binding.Service<ListFHIRImportJobs>(
49 "AWS.HealthLake.ListFHIRImportJobs",
50);