1import type * as SVC from "@distilled.cloud/aws/codebuild";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4import type { Project } from "./Project.ts";
5
6/**
7 * Runtime binding for `codebuild:StopBuild` — stops an in-progress build
8 * of the bound project by build id.
9 * ### Stopping Builds
10 * **Example:** Stop a Running Build
11 * ```typescript
12 * const stopBuild = yield* AWS.CodeBuild.StopBuild(project);
13 *
14 * const { build } = yield* stopBuild({ id: buildId });
15 * // build.buildStatus transitions to "STOPPED"
16 * ```
17 *
18 * @binding
19 */
20export interface StopBuild extends Binding.Service<
21 StopBuild,
22 "AWS.CodeBuild.StopBuild",
23 <P extends Project>(
24 project: P,
25 ) => Effect.Effect<
26 (
27 request: SVC.StopBuildInput,
28 ) => Effect.Effect<SVC.StopBuildOutput, SVC.StopBuildError>
29 >
30> {}
31export const StopBuild = Binding.Service<StopBuild>("AWS.CodeBuild.StopBuild");