1import * as aiplatform from "@distilled.cloud/gcp/aiplatform_v1";
2import * as Layer from "effect/Layer";
3import { makeNamedHttpBinding } from "./BindingHttp.ts";
4import { GetSandboxEnvironmentTemplate } from "./GetSandboxEnvironmentTemplate.ts";
5import type { ReasoningEnginesSandboxEnvironmentTemplate } from "./ReasoningEnginesSandboxEnvironmentTemplate.ts";
6
7/**
8 * HTTP implementation of {@link GetSandboxEnvironmentTemplate}.
9 *
10 * @layer
11 * @provides GCP.AIPlatform.GetSandboxEnvironmentTemplate
12 */
13export const GetSandboxEnvironmentTemplateHttp = Layer.effect(
14 GetSandboxEnvironmentTemplate,
15 makeNamedHttpBinding<
16 ReasoningEnginesSandboxEnvironmentTemplate,
17 aiplatform.GetReasoningEnginesSandboxEnvironmentTemplatesRequest,
18 aiplatform.GoogleCloudAiplatformV1SandboxEnvironmentTemplate,
19 aiplatform.GetReasoningEnginesSandboxEnvironmentTemplatesError
20 >({
21 tag: "GCP.AIPlatform.GetSandboxEnvironmentTemplate",
22 operation: aiplatform.getReasoningEnginesSandboxEnvironmentTemplates,
23 iam: { role: "roles/aiplatform.viewer" },
24 }),
25);