1import type * as mm from "@distilled.cloud/aws/mailmanager";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { AddressList } from "./AddressList.ts";
5
6/**
7 * Runtime binding for `ses:StartAddressListImportJob`.
8 *
9 * Starts a created import job once its address data has been uploaded
10 * to the pre-signed URL. IAM access is granted on the bound list's ARN. Provide the implementation with
11 * `Effect.provide(AWS.MailManager.StartAddressListImportJobHttp)`.
12 * ### Bulk Importing Members
13 * **Example:** Start an Import Job
14 * ```typescript
15 * const startImportJob = yield* MailManager.StartAddressListImportJob(blockList);
16 *
17 * // runtime
18 * yield* startImportJob({ JobId });
19 * ```
20 *
21 * @binding
22 */
23export interface StartAddressListImportJob extends Binding.Service<
24 StartAddressListImportJob,
25 "AWS.MailManager.StartAddressListImportJob",
26 (
27 list: AddressList,
28 ) => Effect.Effect<
29 (
30 request: mm.StartAddressListImportJobRequest,
31 ) => Effect.Effect<
32 mm.StartAddressListImportJobResponse,
33 mm.StartAddressListImportJobError
34 >
35 >
36> {}
37export const StartAddressListImportJob =
38 Binding.Service<StartAddressListImportJob>(
39 "AWS.MailManager.StartAddressListImportJob",
40 );