1import type * as microvms from "@distilled.cloud/aws/lambda-microvms";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { MicrovmImage } from "./MicrovmImage.ts";
5
6export interface DeleteMicrovmImageVersionRequest extends Omit<
7 microvms.DeleteMicrovmImageVersionInput,
8 "imageIdentifier"
9> {}
10
11/**
12 * Runtime binding for `DeleteMicrovmImageVersion`.
13 *
14 * Bind it to a {@link MicrovmImage} to delete a specific image version (the
15 * `imageIdentifier` is injected). Idempotent.
16 * ### Image Versions
17 *
18 * @binding
19 */
20export interface DeleteMicrovmImageVersion extends Binding.Service<
21 DeleteMicrovmImageVersion,
22 "AWS.Lambda.DeleteMicrovmImageVersion",
23 (
24 image: MicrovmImage,
25 ) => Effect.Effect<
26 (
27 request: DeleteMicrovmImageVersionRequest,
28 ) => Effect.Effect<
29 microvms.DeleteMicrovmImageVersionOutput,
30 microvms.DeleteMicrovmImageVersionError
31 >
32 >
33> {}
34export const DeleteMicrovmImageVersion =
35 Binding.Service<DeleteMicrovmImageVersion>(
36 "AWS.Lambda.DeleteMicrovmImageVersion",
37 );