import type { BucketAttrs } from "./manifest.js"; interface BucketRow { id: string; name: string; public: boolean | null; file_size_limit: string | number | null; allowed_mime_types: string[] | null; } /** * 行 → manifest 形状的纯映射,含完整性关口:查询结果必须覆盖每一个请求的 bucket。 * storage.buckets 上的 RLS 或并发删除会**静默**少返回行——把不完整清单写进 manifest, * 恢复端就会漏建 bucket 还以为自己全知。缺任何一个 → 抛错,由调用方整体降级为"未捕获"。 * 请求标识来自 S3 层(ListBuckets),优先按 buckets.id 匹配(id 与 name 允许不同), * 无中再退 name。null 属性原样保留(= 源端未设置,不是猜测值)。 */ export declare function bucketAttrsFromRows(requestedBuckets: string[], bucketRows: BucketRow[]): BucketAttrs[]; /** 查询源库的 bucket 属性。bucketNames 含空 bucket(恢复端要能重建它们)。 */ export declare function inspectBucketAttrs(databaseUrl: string, bucketNames: string[]): Promise; export {};