import { Store } from '@netlify/blobs'; import { Adapter } from '../index.js'; interface NetlifyBlobsAdapterOptions { /** * Store name. Required — Netlify Blobs is keyed per store, so the adapter * scopes every operation to this name. Max 64 bytes per Netlify's limits. */ name: string; /** * Netlify site ID. Falls back to `NETLIFY_SITE_ID`. On Netlify Functions / * Edge / build runtimes the SDK auto-detects context from * `NETLIFY_BLOBS_CONTEXT`, so passing this explicitly is only required when * running outside Netlify (local dev without `netlify dev`, your own * server, etc.). */ siteID?: string; /** * Netlify access token. Falls back to `NETLIFY_API_TOKEN` then * `NETLIFY_BLOBS_TOKEN`. Same auto-detection rules as `siteID` — only * required outside Netlify. */ token?: string; /** * Use a deploy-scoped store (lifetime of the current deploy) instead of a * site-scoped store (persists across deploys). Defaults to `false` — * site-scoped is the right choice for almost everything; deploy-scoped is * for build artifacts you want garbage-collected with the deploy. */ deployScoped?: boolean; /** * Read consistency mode. `"eventual"` (default) reads from the edge cache * and is faster; `"strong"` reads from the origin and guarantees * read-your-writes. */ consistency?: "eventual" | "strong"; } type NetlifyBlobsClient = Store; type NetlifyBlobsAdapter = Adapter; declare const netlifyBlobs: (opts: NetlifyBlobsAdapterOptions) => NetlifyBlobsAdapter; export { type NetlifyBlobsAdapter, type NetlifyBlobsAdapterOptions, type NetlifyBlobsClient, netlifyBlobs };