/** * Converts validated entity mappings into sync projection metadata. * * This module owns ownership manifests, projection headers, and registration * payloads; it does not validate entity declarations or encode field values. */ import type { OwnershipManifest } from "../../domain/model/types.js"; import type { RegisterSyncSheetInput } from "../../storage/syncRegistry.js"; import type { TypedSheetsEntityMapping, TypedSheetsEntityProjection, TypedSheetsEntityProjectionMapping, TypedSheetsMappedProjectionDefinition } from "./contracts.js"; /** Returns the one physical route registered for the requested projection kind. */ export declare function requireTypedSheetsEntityProjection(mapping: TypedSheetsEntityMapping, projection: TypedSheetsEntityProjection): TypedSheetsEntityProjectionMapping; /** Builds the core ownership manifest used by evaluation for this entity mapping. */ export declare function createTypedSheetsEntityOwnershipManifest(mapping: TypedSheetsEntityMapping): OwnershipManifest; /** Serializes the logical ownership manifest in deterministic field-name order. */ export declare function serializeTypedSheetsEntityOwnershipManifest(mapping: TypedSheetsEntityMapping): string; /** Returns the headers that setup must materialize for one physical projection. */ export declare function typedSheetsEntityProjectionHeaders(mapping: TypedSheetsEntityMapping, projection: TypedSheetsEntityProjection): readonly string[]; /** Creates one registry declaration for a validated mapping projection. */ export declare function createTypedSheetsEntityProjectionRegistration(mapping: TypedSheetsEntityMapping, projection: TypedSheetsEntityProjectionMapping): RegisterSyncSheetInput; /** Returns every setup definition necessary to register and provision a mapping collection. */ export declare function createTypedSheetsMappedProjectionDefinitions(mappings: readonly TypedSheetsEntityMapping[]): readonly TypedSheetsMappedProjectionDefinition[]; //# sourceMappingURL=projection.d.ts.map