/** * Parsing model sessions' final messages into structured data — the * generalization of the bootstrap sweep's parseLeftovers, and the ONLY * sanctioned way a role turns text into a typed value. * * The contract with every data-returning prompt: "your final message must * be nothing but JSON" — and the parse tolerates surrounding chatter or a * code fence by cutting to the outermost brackets. Anything less shaped * than that is a step defect worth throwing about, not guessing around: * a malformed report means the SESSION failed its instructions, and the * budgets/escalation machinery upstream is the place that handles it. */ /** * Parse a JSON array of validated entries. `entryShape` names the * expected entry form in the error message (e.g. "{file, description}"). */ export declare function parseArrayOf(report: string, what: string, entryShape: string, isEntry: (entry: unknown) => entry is T): T[]; /** Parse a single JSON object matching the given validator. */ export declare function parseObjectOf(report: string, what: string, shape: string, isShape: (value: unknown) => value is T): T; /** Field guards for validators — small on purpose, composed per role. */ export declare const isRecord: (value: unknown) => value is Record; export declare const isString: (value: unknown) => value is string; export declare const isBoolean: (value: unknown) => value is boolean; export declare const isStringArray: (value: unknown) => value is string[];