/** * Convex optimistic concurrency helpers for `versionProperty` / * `versionAtProperty` (semantics.md ยง Entity Concurrency). * * Projection behavior: create seeds version=1; updates compare an optional * client-provided expected version, throw on mismatch, then increment. */ import type { IREntity } from '../../ir'; /** True when the field is managed by versionProperty / versionAtProperty. */ export declare function isConvexVersionManagedField(entity: IREntity, fieldName: string): boolean; /** Schema field lines for version metadata not already declared as properties. */ export declare function synthesizeConvexVersionSchemaFields(entity: IREntity): string[]; /** Doc assignments for create inserts (server-seeded; never client args). */ export declare function convexCreateVersionDocLines(entity: IREntity): string[]; export interface ConvexUpdateVersionOcc { /** Optional expected-version arg line (indent for args block). */ argLine: string | null; /** Local name for the expected version (same as versionProperty). */ expectedArgName: string | null; /** Lines after doc load, before patch. */ checkLines: string[]; /** Fields to merge into the `updates` object. */ updateFields: string[]; } /** OCC check + increment for non-create mutations. */ export declare function renderConvexUpdateVersionOcc(entity: IREntity): ConvexUpdateVersionOcc; //# sourceMappingURL=version-occ.d.ts.map