import { type TestContext as BaseTestContext } from "./vitest-compat.js"; import { KV2 } from "../cached-kv.js"; import { ManifestLog } from "../manifest-log.js"; import { UpstreamKV } from "../upstream-kv.js"; import type { BlobStore } from "../types.js"; /** Metadata type for UpstreamKV tests */ interface TestVersionMetadata { version: number; } /** Context available to each UpstreamKV test */ export interface UpstreamKVTestContext extends BaseTestContext { blobStore: BlobStore; localKV: KV2; upstreamKV: KV2; manifest: ManifestLog; kv: UpstreamKV; cleanup?: () => Promise; } /** * Sets up an UpstreamKV test context. * Each test gets its own isolated FakeBlobStore and UpstreamKV. * Uses real blob store if INTEGRATION_TEST=1. */ export declare function setupUpstreamKVTestContext(): void; /** Typed test function that receives UpstreamKVTestContext */ type TypedTestFn = (ctx: UpstreamKVTestContext) => Promise | void; /** Typed `it` that provides UpstreamKVTestContext to tests */ export declare const it: (name: string, fn: TypedTestFn) => void; export {}; //# sourceMappingURL=upstream-kv-test-setup.d.ts.map