import { z } from "zod"; import { type StudyAnalysisArtifact, type StudyAnalysisCorrection, type StudyAnalysisInput, type StudyAnalysisResult } from "./study-analysis.js"; export declare const studyAnalysisResultSchema: z.ZodObject<{ summary: z.ZodString; participants: z.ZodArray; outcomeReason: z.ZodString; evidenceIds: z.ZodArray; feedback: z.ZodArray>; limitations: z.ZodArray; }, z.core.$strict>>; findings: z.ZodArray; affectedStreamIds: z.ZodArray; exposedStreamIds: z.ZodArray; exposureReason: z.ZodString; recovery: z.ZodEnum<{ unknown: "unknown"; recovered: "recovered"; not_observed: "not_observed"; }>; confidence: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; }>; observations: z.ZodArray; evidenceIds: z.ZodArray; limitation: z.ZodString; }, z.core.$strict>>; nextStep: z.ZodString; priorityReason: z.ZodString; }, z.core.$strict>>; concernReviews: z.ZodOptional; evidenceIds: z.ZodArray; limitation: z.ZodString; disposition: z.ZodEnum<{ finding: "finding"; context: "context"; unsupported: "unsupported"; }>; findingId: z.ZodNullable; reason: z.ZodString; }, z.core.$strict>>>; limitations: z.ZodArray; }, z.core.$strict>; /** Historical artifacts may omit concernReviews; every new provider response must supply it. */ export declare const studyAnalysisResponseSchema: z.ZodObject<{ summary: z.ZodString; participants: z.ZodArray; outcomeReason: z.ZodString; evidenceIds: z.ZodArray; feedback: z.ZodArray>; limitations: z.ZodArray; }, z.core.$strict>>; findings: z.ZodArray; affectedStreamIds: z.ZodArray; exposedStreamIds: z.ZodArray; exposureReason: z.ZodString; recovery: z.ZodEnum<{ unknown: "unknown"; recovered: "recovered"; not_observed: "not_observed"; }>; confidence: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; }>; observations: z.ZodArray; evidenceIds: z.ZodArray; limitation: z.ZodString; }, z.core.$strict>>; nextStep: z.ZodString; priorityReason: z.ZodString; }, z.core.$strict>>; concernReviews: z.ZodNonOptional; evidenceIds: z.ZodArray; limitation: z.ZodString; disposition: z.ZodEnum<{ finding: "finding"; context: "context"; unsupported: "unsupported"; }>; findingId: z.ZodNullable; reason: z.ZodString; }, z.core.$strict>>>>; limitations: z.ZodArray; }, z.core.$strict>; export declare const studyAnalysisResultJsonSchema: z.core.ZodStandardJSONSchemaPayload; outcomeReason: z.ZodString; evidenceIds: z.ZodArray; feedback: z.ZodArray>; limitations: z.ZodArray; }, z.core.$strict>>; findings: z.ZodArray; affectedStreamIds: z.ZodArray; exposedStreamIds: z.ZodArray; exposureReason: z.ZodString; recovery: z.ZodEnum<{ unknown: "unknown"; recovered: "recovered"; not_observed: "not_observed"; }>; confidence: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; }>; observations: z.ZodArray; evidenceIds: z.ZodArray; limitation: z.ZodString; }, z.core.$strict>>; nextStep: z.ZodString; priorityReason: z.ZodString; }, z.core.$strict>>; concernReviews: z.ZodNonOptional; evidenceIds: z.ZodArray; limitation: z.ZodString; disposition: z.ZodEnum<{ finding: "finding"; context: "context"; unsupported: "unsupported"; }>; findingId: z.ZodNullable; reason: z.ZodString; }, z.core.$strict>>>>; limitations: z.ZodArray; }, z.core.$strict>>; export declare const studyAnalysisCoverageSchema: z.ZodObject<{ includedStreamIds: z.ZodArray; omittedStreamIds: z.ZodArray; evidenceCount: z.ZodNumber; captureCount: z.ZodNumber; complete: z.ZodBoolean; omissions: z.ZodArray; }, z.core.$strict>; export declare const studyAnalysisEvidenceSchema: z.ZodObject<{ id: z.ZodString; streamId: z.ZodString; eventId: z.ZodString; kind: z.ZodString; text: z.ZodString; quoteEligible: z.ZodBoolean; at: z.ZodNullable; elapsedMs: z.ZodNullable; frame: z.ZodNullable; capture: z.ZodNullable; }, z.core.$strict>>; }, z.core.$strict>; export declare const studyAnalysisParticipantProvenanceSchema: z.ZodObject<{ actorStatus: z.ZodNullable>; completionReason: z.ZodNullable>; stopCause: z.ZodNullable>; goalSource: z.ZodNullable>; declaredOutcome: z.ZodNullable>; taskOutcomes: z.ZodNullable; turn: z.ZodNullable; }, z.core.$strict>>>; }, z.core.$strict>; export declare const studyAnalysisArtifactSchema: z.ZodObject<{ schema: z.ZodLiteral<"humanish.study-analysis.v1">; captureVersion: z.ZodOptional>; id: z.ZodString; runId: z.ZodString; status: z.ZodEnum<{ failed: "failed"; cancelled: "cancelled"; complete: "complete"; partial: "partial"; }>; createdAt: z.ZodString; completedAt: z.ZodString; sourceRunSha256: z.ZodString; inputDigest: z.ZodString; configDigest: z.ZodString; config: z.ZodObject<{ model: z.ZodString; question: z.ZodNullable; maxCostUsd: z.ZodNumber; timeoutMs: z.ZodNumber; maxOutputTokens: z.ZodNumber; }, z.core.$strict>; promptVersion: z.ZodString; provider: z.ZodLiteral<"openai">; usage: z.ZodObject<{ cacheWriteInputTokens: z.ZodNullable; cachedInputTokens: z.ZodNullable; usageComplete: z.ZodBoolean; dispatched: z.ZodBoolean; ratesAsOf: z.ZodNullable; estimatedAdmissionUsd: z.ZodNullable; inputTokens: z.ZodNullable; outputTokens: z.ZodNullable; estimatedCostUsd: z.ZodNullable; }, z.core.$strict>; participants: z.ZodArray; recordedStatus: z.ZodString; recordedReason: z.ZodNullable; provenance: z.ZodObject<{ actorStatus: z.ZodNullable>; completionReason: z.ZodNullable>; stopCause: z.ZodNullable>; goalSource: z.ZodNullable>; declaredOutcome: z.ZodNullable>; taskOutcomes: z.ZodNullable; turn: z.ZodNullable; }, z.core.$strict>>>; }, z.core.$strict>; }, z.core.$strict>>; coverage: z.ZodObject<{ includedStreamIds: z.ZodArray; omittedStreamIds: z.ZodArray; evidenceCount: z.ZodNumber; captureCount: z.ZodNumber; complete: z.ZodBoolean; omissions: z.ZodArray; }, z.core.$strict>; evidence: z.ZodArray; elapsedMs: z.ZodNullable; frame: z.ZodNullable; capture: z.ZodNullable; }, z.core.$strict>>; }, z.core.$strict>>; result: z.ZodNullable; outcomeReason: z.ZodString; evidenceIds: z.ZodArray; feedback: z.ZodArray>; limitations: z.ZodArray; }, z.core.$strict>>; findings: z.ZodArray; affectedStreamIds: z.ZodArray; exposedStreamIds: z.ZodArray; exposureReason: z.ZodString; recovery: z.ZodEnum<{ unknown: "unknown"; recovered: "recovered"; not_observed: "not_observed"; }>; confidence: z.ZodEnum<{ low: "low"; medium: "medium"; high: "high"; }>; observations: z.ZodArray; evidenceIds: z.ZodArray; limitation: z.ZodString; }, z.core.$strict>>; nextStep: z.ZodString; priorityReason: z.ZodString; }, z.core.$strict>>; concernReviews: z.ZodOptional; evidenceIds: z.ZodArray; limitation: z.ZodString; disposition: z.ZodEnum<{ finding: "finding"; context: "context"; unsupported: "unsupported"; }>; findingId: z.ZodNullable; reason: z.ZodString; }, z.core.$strict>>>; limitations: z.ZodArray; }, z.core.$strict>>; error: z.ZodNullable; }, z.core.$strict>; export declare const studyAnalysisCorrectionSchema: z.ZodObject<{ schema: z.ZodLiteral<"humanish.study-analysis-correction.v1">; id: z.ZodString; analysisId: z.ZodString; analysisSha256: z.ZodString; findingId: z.ZodString; findingSha256: z.ZodString; createdAt: z.ZodString; status: z.ZodEnum<{ confirmed: "confirmed"; dismissed: "dismissed"; amended: "amended"; }>; reason: z.ZodString; replacementClaim: z.ZodNullable; }, z.core.$strict>; /** Stable hashing is independent of object insertion order and excludes no fields implicitly. */ export declare function hashStudyAnalysisValue(value: unknown): string; export declare function digestStudyAnalysisInput(input: Pick): string; export declare function checkAnalysisResult(input: StudyAnalysisInput, value: unknown): { ok: true; result: StudyAnalysisResult; } | { ok: false; errors: string[]; }; export declare function validateAnalysisResult(input: StudyAnalysisInput, value: unknown): StudyAnalysisResult; export declare function validateStudyAnalysisArtifact(value: unknown): StudyAnalysisArtifact; export declare function validateStudyAnalysisCorrection(value: unknown): StudyAnalysisCorrection; /** Accounting survives a stale source without retaining generated or participant text. */ export declare const studyAnalysisExecutionReceiptSchema: z.ZodObject<{ usage: z.ZodObject<{ cacheWriteInputTokens: z.ZodNullable; cachedInputTokens: z.ZodNullable; usageComplete: z.ZodBoolean; dispatched: z.ZodBoolean; ratesAsOf: z.ZodNullable; estimatedAdmissionUsd: z.ZodNullable; inputTokens: z.ZodNullable; outputTokens: z.ZodNullable; estimatedCostUsd: z.ZodNullable; }, z.core.$strict>; provider: z.ZodLiteral<"openai">; error: z.ZodNullable; status: z.ZodEnum<{ failed: "failed"; cancelled: "cancelled"; complete: "complete"; partial: "partial"; }>; id: z.ZodString; completedAt: z.ZodString; runId: z.ZodString; createdAt: z.ZodString; sourceRunSha256: z.ZodString; inputDigest: z.ZodString; configDigest: z.ZodString; promptVersion: z.ZodString; schema: z.ZodLiteral<"humanish.analysis-execution.v1">; model: z.ZodString; maxCostUsd: z.ZodNumber; }, z.core.$strict>; export type StudyAnalysisExecutionReceipt = z.infer; /** Persisted before transport. It proves a request may have started, not that it was billed. */ export declare const studyAnalysisExecutionStartSchema: z.ZodObject<{ id: z.ZodString; runId: z.ZodString; sourceRunSha256: z.ZodString; inputDigest: z.ZodString; configDigest: z.ZodString; promptVersion: z.ZodString; schema: z.ZodLiteral<"humanish.analysis-execution-start.v1">; createdAt: z.ZodISODateTime; }, z.core.$strict>; export type StudyAnalysisExecutionStart = z.infer; export declare function validateStudyAnalysisExecutionReceipt(value: unknown): StudyAnalysisExecutionReceipt; /** Validate the packet before any paid request, including typed-library callers. */ export declare function validateStudyAnalysisInputMetadata(input: StudyAnalysisInput): void;