1import type * as Firehose from "@distilled.cloud/aws/firehose";
2import type * as Effect from "effect/Effect";
3import * as Binding from "../../Binding.ts";
4
5export interface ListDeliveryStreamsRequest
6 extends Firehose.ListDeliveryStreamsInput {}
7
8/**
9 * Runtime binding for `firehose:ListDeliveryStreams`.
10 *
11 * An account-level binding — call it with no arguments to get a callable
12 * that lists delivery stream names in the region (paged via
13 * `ExclusiveStartDeliveryStreamName` + `HasMoreDeliveryStreams`). Provide
14 * the `ListDeliveryStreamsHttp` layer on the Function to satisfy the
15 * binding.
16 * ### Stream Metadata
17 * **Example:** List Delivery Streams in the Region
18 * ```typescript
19 * const listDeliveryStreams = yield* AWS.Firehose.ListDeliveryStreams();
20 *
21 * const response = yield* listDeliveryStreams();
22 * const names = response.DeliveryStreamNames;
23 * ```
24 *
25 * @binding
26 */
27export interface ListDeliveryStreams extends Binding.Service<
28 ListDeliveryStreams,
29 "AWS.Firehose.ListDeliveryStreams",
30 () => Effect.Effect<
31 (
32 request?: ListDeliveryStreamsRequest,
33 ) => Effect.Effect<
34 Firehose.ListDeliveryStreamsOutput,
35 Firehose.ListDeliveryStreamsError
36 >
37 >
38> {}
39
40export const ListDeliveryStreams = Binding.Service<ListDeliveryStreams>(
41 "AWS.Firehose.ListDeliveryStreams",
42);