/** * Shared §2.6.1 submission validation. * Used by both @atrib/log-dev and log-node servers. * * Steps 2–5 of §2.6.1 plus required-field presence checks. * Step 1 (Ed25519 signature verification) is intentionally excluded here. * it lives in @atrib/verify and would create a circular workspace dependency. * Step 6 (idempotency) is state-dependent and handled by each server's * proof-cache / storage layer. * * The 10-minute future-skew window (Step 4) matches §2.6.1's log-server * tolerance. Client-side record verification (§1.4.3) uses a tighter * 5-minute window; see packages/mcp/src/signing.ts for that path. */ import type { AtribRecord } from './types.js'; export interface ValidationResult { ok: boolean; status?: number; error?: string; } /** * Validate a §2.6.1 submission body (Steps 2–5 + required fields). * Returns `{ ok: true }` if all checks pass, or `{ ok: false, status, error }` * if any check fails. */ export declare function validateSubmission(record: Partial): ValidationResult; //# sourceMappingURL=validation.d.ts.map