1import * as Layer from "effect/Layer";
2import {
3 makeVectorsHttpBinding,
4 makeWriteVectorsClient,
5 writeVectorsActions,
6} from "./BindingHttp.ts";
7import { VectorsWrite } from "./VectorsWrite.ts";
8
9/**
10 * HTTP implementation of {@link VectorsWrite} — calls the S3 Vectors data
11 * plane with the host Function's own credentials, granting only the write
12 * actions (`PutVectors`, `DeleteVectors`) on the bound index.
13 */
14export const VectorsWriteHttp = Layer.effect(
15 VectorsWrite,
16 makeVectorsHttpBinding({
17 name: "VectorsWrite",
18 actions: writeVectorsActions,
19 makeClient: makeWriteVectorsClient,
20 }),
21);