1import type * as controltower from "@distilled.cloud/aws/controltower";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5/**
6 * Runtime binding for `controltower:GetBaseline`.
7 *
8 * An account-level operation that reads one entry of the Control Tower
9 * baseline catalog by its ARN — its name and description. Provide the
10 * implementation with `Effect.provide(AWS.ControlTower.GetBaselineHttp)`.
11 * ### Browsing the Baseline Catalog
12 * **Example:** Read a Baseline's Details
13 * ```typescript
14 * // init — account-level binding takes no resource
15 * const getBaseline = yield* AWS.ControlTower.GetBaseline();
16 *
17 * // runtime
18 * const baseline = yield* getBaseline({ baselineIdentifier: baselineArn });
19 * console.log(baseline.name, baseline.description);
20 * ```
21 *
22 * @binding
23 */
24export interface GetBaseline extends Binding.Service<
25 GetBaseline,
26 "AWS.ControlTower.GetBaseline",
27 () => Effect.Effect<
28 (
29 request: controltower.GetBaselineInput,
30 ) => Effect.Effect<
31 controltower.GetBaselineOutput,
32 controltower.GetBaselineError
33 >
34 >
35> {}
36
37export const GetBaseline = Binding.Service<GetBaseline>(
38 "AWS.ControlTower.GetBaseline",
39);