import type { EdictModule } from "../ast/nodes.js"; export interface GeneratedTest { functionName: string; testName: string; inputs: Record; expectedOutput?: number | boolean; shouldFail?: boolean; source: "boundary" | "counterexample" | "precondition_boundary"; contractId: string; } export interface GenerateTestsResult { ok: boolean; tests: GeneratedTest[]; skipped?: string[]; } /** * Generate test cases from contracts in the module. * * Uses Z3 to find boundary values (proven contracts) and counterexamples (failing contracts). * For functions with preconditions, also generates precondition boundary tests. * Output is pure structured data — no WASM compilation needed. * * @param module - A validated Edict module with function contracts * @returns `{ ok, tests, skipped? }` — generated tests and names of functions that were skipped (unsupported param types) */ export declare function generateTests(module: EdictModule): Promise; //# sourceMappingURL=generate-tests.d.ts.map