import { i as ContentItem } from "../types-C4ZXxSAE.mjs"; import "../options-B5K8QEV1.mjs"; import "../types-BCOU_CXE.mjs"; import { It as ResolvedPlugin } from "../types-XJPFqvc1.mjs"; import "../authz-cKSuylYa.mjs"; import { Dr as LocalStorageConfig, Ei as MediaItem, Er as getStoredConfig, Or as S3StorageConfig, kr as StorageDescriptor, wr as EmDashConfig } from "../index-HRJ8DhHY.mjs"; import "../runner-Bnq68jCZ.mjs"; import "../index-BFUET8yL.mjs"; import { i as ObjectCacheRuntimeConfig, r as ObjectCacheDescriptor } from "../types-D5VVLr7J.mjs"; import "../types-C2avdenh.mjs"; import "../hreflang-BktsQIF_.mjs"; import "../validate-3945fzPI.mjs"; import { EmDashHandlers, EmDashManifest, ManifestCollection } from "./types.mjs"; import { AstroIntegration } from "astro"; //#region src/astro/storage/adapters.d.ts /** * S3-compatible storage adapter * * Works with AWS S3, Cloudflare R2 (via S3 API), MinIO, etc. * * Any field omitted here is resolved from the matching `S3_*` environment * variable when the container starts (`S3_ENDPOINT`, `S3_BUCKET`, * `S3_ACCESS_KEY_ID`, `S3_SECRET_ACCESS_KEY`, `S3_REGION`, `S3_PUBLIC_URL`). * Explicit values always take precedence over env vars. * * Note: env var resolution reads `process.env` on Node at runtime. * Workers users should continue passing explicit values to `s3({...})`. * * @example * ```ts * // All fields from env (container deployments) * storage: s3() * * // Mix: CDN from config, credentials from env * storage: s3({ publicUrl: "https://cdn.example.com" }) * * // All explicit (unchanged from before) * storage: s3({ * endpoint: "https://xxx.r2.cloudflarestorage.com", * bucket: "media", * accessKeyId: process.env.R2_ACCESS_KEY_ID, * secretAccessKey: process.env.R2_SECRET_ACCESS_KEY, * }) * ``` */ declare function s3(config?: Partial): StorageDescriptor; /** * Local filesystem storage adapter * * For development and testing. Stores files in a local directory. * Does NOT support signed upload URLs. * * @example * ```ts * storage: local({ * directory: "./uploads", * baseUrl: "/_emdash/api/media/file", * }) * ``` */ declare function local(config: LocalStorageConfig): StorageDescriptor; //#endregion //#region src/astro/object-cache/adapters.d.ts /** Options for {@link memoryCache}. */ interface MemoryCacheOptions extends ObjectCacheRuntimeConfig { /** * Soft cap on the number of cached keys per isolate before FIFO eviction. * @default 1000 */ maxEntries?: number; } /** * In-isolate memory object cache. * * Caches query results across requests within a single isolate/process. On * Node (one long-lived process) this is a genuine cross-request cache; on * multi-isolate platforms (Cloudflare) prefer `kvCache()` so the cache is * shared. Useful for local development regardless of target. * * @example * ```ts * emdash({ objectCache: memoryCache({ defaultTtl: 600 }) }) * ``` */ declare function memoryCache(options?: MemoryCacheOptions): ObjectCacheDescriptor; //#endregion //#region src/astro/integration/index.d.ts /** * Create the EmDash Astro integration */ declare function emdash(config?: EmDashConfig): AstroIntegration; //#endregion export { type ContentItem, type EmDashConfig, type EmDashHandlers, type EmDashManifest, type LocalStorageConfig, type ManifestCollection, type MediaItem, type MemoryCacheOptions, type ObjectCacheDescriptor, type ObjectCacheRuntimeConfig, type ResolvedPlugin, type S3StorageConfig, type StorageDescriptor, emdash as default, getStoredConfig, local, memoryCache, s3 }; //# sourceMappingURL=index.d.mts.map