import type { S3Client } from "@aws-sdk/client-s3"; import type { Adapter } from "../index.js"; export interface FilebaseAdapterOptions { /** Filebase bucket name. The adapter scopes all operations to it. */ bucket: string; /** * Filebase S3 endpoint. Defaults to `https://s3.filebase.com` — Filebase * runs a single global S3-compatible gateway that fronts IPFS, Sia, and * Storj storage networks (the network is chosen per-bucket in the * dashboard, not per-request). */ endpoint?: string; /** * Static credentials. Falls back to `FILEBASE_ACCESS_KEY_ID`; required if * that env var isn't set. */ accessKeyId?: string; /** * Static credentials. Falls back to `FILEBASE_SECRET_ACCESS_KEY`; required * if that env var isn't set. */ secretAccessKey?: string; /** * SigV4 region. Defaults to `"us-east-1"`. Filebase ignores it for routing * but the SigV4 signature still requires *some* value. */ region?: string; /** * Use path-style addressing (`//`) rather than virtual-hosted * style. Defaults to `false` — Filebase supports virtual-hosted style on * the bucket subdomain (`.s3.filebase.com`). */ forcePathStyle?: boolean; /** * Origin used to build URLs from `url()`. When set, `url(key)` returns * `${publicBaseUrl}/${key}` and skips signing. Filebase serves public * objects via per-network gateways (e.g. an IPFS CID gateway); the natural * value is whatever gateway URL the dashboard exposes for your bucket. * When unset, `url()` falls back to a presigned GetObject (default * expiry: 1 hour). */ publicBaseUrl?: string; /** * Default expiry, in seconds, for the presigned URLs returned by `url()` * when `publicBaseUrl` is not set. Defaults to 3600 (1 hour). */ defaultUrlExpiresIn?: number; } export type FilebaseAdapter = Adapter; export declare const filebase: (opts: FilebaseAdapterOptions) => FilebaseAdapter; //# sourceMappingURL=index.d.ts.map