import type { RunStore } from './RunStore.js'; type TestBlock = () => void | Promise; export interface RunStoreContractApi { describe: (name: string, fn: () => void) => void; test: (name: string, fn: TestBlock) => void; beforeEach: (fn: TestBlock) => void; expect: (actual: unknown) => { toEqual(expected: unknown): void; toBe(expected: unknown): void; toHaveProperty(key: string): void; toBeNull(): void; not: { toHaveProperty(key: string): void; toBeNull(): void; }; rejects: { toBeInstanceOf(expected: unknown): unknown; }; }; } export type RunStoreFactory = () => RunStore | Promise; /** * Registers the shared RunStore contract tests. Must be invoked at the * top level of a test file with that file's `describe`/`test`/`expect`/`beforeEach`. */ export declare function runRunStoreContract(factory: RunStoreFactory, t: RunStoreContractApi): void; export {};