1import * as Cloudflare from "@/Cloudflare/index.ts";
2import * as Alchemy from "@/index.ts";
3import { presignWorker } from "./routes.ts";
4
5/** A real R2 bucket, even under `alchemy dev`. */
6export const PresignRemoteBucket = Cloudflare.R2.Bucket("PresignRemoteBucket", {
7 forceDestroy: true,
8}).pipe(Alchemy.remote());
9
10/** Presign bindings over a live bucket (deployed or `Alchemy.remote()`). */
11export default class PresignRemoteWorker extends Cloudflare.Worker<PresignRemoteWorker>()(
12 "PresignRemoteWorker",
13 { main: import.meta.url },
14 presignWorker(PresignRemoteBucket),
15) {}