1import * as Layer from "effect/Layer";
2import { ConnectReadWrite } from "./Connect.ts";
3import {
4 KAFKA_CONNECT_ACTIONS,
5 KAFKA_READ_GROUP_ACTIONS,
6 KAFKA_READ_TOPIC_ACTIONS,
7 KAFKA_WRITE_CLUSTER_ACTIONS,
8 KAFKA_WRITE_TOPIC_ACTIONS,
9 KAFKA_WRITE_TRANSACTION_ACTIONS,
10 makeKafkaConnectHttpBinding,
11} from "./ConnectHttp.ts";
12
13export const ConnectReadWriteHttp = Layer.effect(
14 ConnectReadWrite,
15 makeKafkaConnectHttpBinding({
16 tag: "AWS.Kafka.ConnectReadWrite",
17 clusterActions: [...KAFKA_CONNECT_ACTIONS, ...KAFKA_WRITE_CLUSTER_ACTIONS],
18 topicActions: [
19 ...new Set([...KAFKA_READ_TOPIC_ACTIONS, ...KAFKA_WRITE_TOPIC_ACTIONS]),
20 ],
21 groupActions: KAFKA_READ_GROUP_ACTIONS,
22 transactionActions: KAFKA_WRITE_TRANSACTION_ACTIONS,
23 }),
24);