import type { z } from "zod"; import type { assertion } from "./v1"; export type HttpAssertionRequest = { body: string; header: Record; status: number; }; export type DnsAssertionRequest = { records: Partial>; }; export type AssertionRequest = HttpAssertionRequest | DnsAssertionRequest; export type AssertionResult = | { success: true; message?: never; } | { success: false; message: string; }; export interface Assertion { schema: z.infer; assert: (req: AssertionRequest) => AssertionResult; }