1import * as S3 from "@distilled.cloud/aws/s3";
2import * as Layer from "effect/Layer";
3import { makeTigrisS3Binding } from "./BucketBinding.ts";
4import { ListObjectsV2 } from "./ListObjectsV2.ts";
5
6/**
7 * HTTP implementation of {@link ListObjectsV2}. Calls distilled S3
8 * `listObjectsV2` against the Tigris endpoint with the bucket's credentials.
9 *
10 * @layer
11 * @product Bucket
12 * @provides Fly.ListObjectsV2
13 */
14export const ListObjectsV2Http = Layer.effect(
15 ListObjectsV2,
16 makeTigrisS3Binding({
17 tag: "Fly.ListObjectsV2",
18 operation: S3.listObjectsV2,
19 }),
20);