/**
 * EventId — total ordering identity for CRDT operations (WARP spec Section 7).
 */
export declare class EventId {
    /** Monotonic counter (positive integer) */
    readonly lamport: number;
    /** Writer identifier (non-empty string) */
    readonly writerId: string;
    /** Patch commit SHA (hex OID, 4-64 chars) */
    readonly patchSha: string;
    /** Operation index within patch (non-negative integer) */
    readonly opIndex: number;
    /**
     * Creates a validated EventId.
     *
     * @param lamport - Must be positive integer (> 0)
     * @param writerId - Must be non-empty string
     * @param patchSha - Must be valid hex OID (4-64 chars)
     * @param opIndex - Must be non-negative integer (>= 0)
     */
    constructor(lamport: number, writerId: string, patchSha: string, opIndex: number);
}
/**
 * Compares two EventIds lexicographically.
 * Order: lamport -> writerId -> patchSha -> opIndex
 *
 * SHA tiebreaker uses lexicographic string comparison. This is arbitrary but
 * deterministic — the specific order doesn't matter as long as all writers agree.
 */
export declare function compareEventIds(a: EventId, b: EventId): number;
/**
 * Checks if EventId a is greater than EventId b.
 */
export declare function isGreater(a: EventId, b: EventId): boolean;
