1import * as Layer from "effect/Layer";
2import {
3 makeFirestoreDatabaseBinding,
4 writeDatabaseIam,
5} from "./DatabaseHttp.ts";
6import { WriteDatabase } from "./WriteDatabase.ts";
7
8/**
9 * HTTP implementation of {@link WriteDatabase} over the Firestore REST API.
10 *
11 * @layer
12 * @provides GCP.Firestore.WriteDatabase
13 * @category Firestore
14 */
15export const WriteDatabaseHttp = Layer.effect(
16 WriteDatabase,
17 makeFirestoreDatabaseBinding({
18 tag: "GCP.Firestore.WriteDatabase",
19 iam: writeDatabaseIam,
20 makeClient: (helpers, name) => helpers.makeWrite(name),
21 }),
22);