1import * as Firehose from "@distilled.cloud/aws/firehose";
2import * as Layer from "effect/Layer";
3import { makeFirehoseAccountHttpBinding } from "./BindingHttp.ts";
4import { ListDeliveryStreams } from "./ListDeliveryStreams.ts";
5
6/**
7 * HTTP implementation of {@link ListDeliveryStreams}. At deploy time it
8 * grants `firehose:ListDeliveryStreams` on `*` (the action does not support
9 * resource-level permissions); at runtime it calls the Firehose API with the
10 * host Function's credentials. Provide this layer on the Function using the
11 * binding.
12 */
13export const ListDeliveryStreamsHttp = Layer.effect(
14 ListDeliveryStreams,
15 makeFirehoseAccountHttpBinding({
16 tag: "AWS.Firehose.ListDeliveryStreams",
17 operation: Firehose.listDeliveryStreams,
18 actions: ["firehose:ListDeliveryStreams"],
19 }),
20);