1import * as rma from "@distilled.cloud/gcp/rapidmigrationassessment_v1";
2import { Credentials } from "@distilled.cloud/gcp/Credentials";
3import * as Layer from "effect/Layer";
4import * as HttpClient from "effect/http/HttpClient";
5import { makeCollectorHttpBinding } from "./BindingHttp.ts";
6import { ResumeCollector } from "./ResumeCollector.ts";
7
8/**
9 * HTTP implementation of {@link ResumeCollector}.
10 *
11 * @layer
12 * @provides GCP.RapidMigrationAssessment.ResumeCollector
13 */
14export const ResumeCollectorHttp: Layer.Layer<
15 ResumeCollector,
16 never,
17 Credentials | HttpClient.HttpClient
18> = Layer.effect(
19 ResumeCollector,
20 makeCollectorHttpBinding<
21 rma.ResumeProjectsLocationsCollectorsRequest,
22 rma.Operation,
23 rma.ResumeProjectsLocationsCollectorsError
24 >({
25 tag: "GCP.RapidMigrationAssessment.ResumeCollector",
26 iam: { role: "roles/rma.runner" },
27 operation: rma.resumeProjectsLocationsCollectors,
28 }),
29);