import type { SurveyInput } from "./types.js"; import type { ReviewItem } from "./review-resource.js"; import type { ReviewWorkbenchResult } from "./review-workbench/review-workbench.js"; import { type DeriveFieldStatesInput } from "./field-states.js"; export interface BuildCanonicalReviewedTrustInputOptions { /** Producer identity for the resulting SurveyInput batch. */ readonly source: string; /** Server-controlled projection time. */ readonly generatedAt: string; /** Stable producer-owned identity for this review projection. */ readonly projectionContextId: string; /** Canonical ReviewItems from the server-owned pre-decision snapshot. */ readonly items: readonly ReviewItem[]; /** Results derived by Survey's server apply boundary from snapshot + events. */ readonly results: readonly ReviewWorkbenchResult[]; /** * The extraction imports the items came from (and optionally verifier * records and supersessions). When present, each claim whose item one of * these imports produced carries its derived content and lifecycle states * under `metadata["survey.kontourai.io/field-state"]` (see * `deriveFieldStates`). The states are derived here from the imports and the * results' own decisions, never supplied as labels. Claim status is unchanged. */ readonly fieldStates?: Omit; } export interface CanonicalReviewedTrustInput { readonly surveyInput: SurveyInput; /** Pass unchanged to buildSurveyTrustBundle's projectionContextId option. */ readonly projectionContextId: string; } /** * Projects server-applied review records into the complete SurveyInput consumed * by buildSurveyTrustBundle. The ReviewItem and ReviewWorkbenchResult are the * authority: callers cannot override status, value, identity, or provenance. * * The helper deliberately returns the projection context beside SurveyInput * because repeated append-only projections need that context at the Surface * projection boundary, while SurveyInput's existing byte shape remains * unchanged for compatibility. */ export declare function buildCanonicalReviewedTrustInput(options: BuildCanonicalReviewedTrustInputOptions): CanonicalReviewedTrustInput;