/** * Shared contract tests for {@link AgentSubmissionStore} implementations. * * Store packages call {@link defineSubmissionStoreContractTests} with a * factory that creates their backend. The tests exercise every method on * `AgentSubmissionStore` with identical behavioral assertions regardless of * the underlying storage engine — no store-specific assumptions. * * @example * ```ts * import { defineSubmissionStoreContractTests } from '@fabric-harness/sdk/testing'; * * defineSubmissionStoreContractTests('My backend', async () => ({ * store: await createMyStore(), * close: async () => myStore.close(), * })); * ``` */ import type { AgentSubmissionStore } from './submission-store.js'; export interface SubmissionStoreContractHandle { /** The fresh store under test. */ store: AgentSubmissionStore; /** Optional cleanup after the test (close connections, delete temp files). */ close?: () => Promise; } /** * Register the standard {@link AgentSubmissionStore} contract tests under the * given describe label. Each test gets a fresh store from `factory()`. */ export declare function defineSubmissionStoreContractTests(name: string, factory: () => Promise): void; //# sourceMappingURL=submission-store-contract.d.ts.map