import type * as batch from "@distilled.cloud/aws/batch"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; import type { JobQueue } from "./JobQueue.ts"; export interface TerminateJobRequest extends batch.TerminateJobRequest {} /** * Terminate a running (or cancel a queued) AWS Batch job from runtime code. * * ### Terminating Jobs * **Example:** Terminate a job * ```typescript * const terminateJob = yield* Batch.TerminateJob(queue); * yield* terminateJob({ jobId, reason: "superseded" }); * ``` * * @binding */ export interface TerminateJob extends Binding.Service< TerminateJob, "AWS.Batch.TerminateJob", ( queue: JobQueue, ) => Effect.Effect< ( request: TerminateJobRequest, ) => Effect.Effect > > {} export const TerminateJob = Binding.Service( "AWS.Batch.TerminateJob", );