/**
 * Anonymous Type Shape Analysis — Serialization & Hashing
 *
 * Type serialization, shape computation, and hash generation for
 * anonymous type lowering. Split from anon-type-shape-analysis.ts
 * for file-size compliance.
 */
import type { IrType, IrObjectType, IrReferenceType } from "../types.js";
export type SerializeState = {
    readonly seen: WeakMap<object, number>;
    nextId: number;
};
export declare const beginSerializeNode: (state: SerializeState, node: object) => {
    readonly id: number;
    readonly seenBefore: boolean;
};
/**
 * Serialize an IrType to a stable string for shape signature.
 *
 * This must be cycle-safe because source ports can legitimately contain
 * recursive alias/object graphs (for example handler arrays that reference
 * themselves transitively).
 */
export declare const serializeType: (type: IrType, state?: SerializeState) => string;
/**
 * Compute shape signature for an objectType
 */
export declare const computeShapeSignature: (objectType: IrObjectType) => string;
/**
 * Generate a short hash from shape signature
 */
export declare const generateShapeHash: (signature: string) => string;
/**
 * Generate a module-unique hash from file path
 */
export declare const generateModuleHash: (filePath: string) => string;
export declare const getReferenceLoweringStableKey: (type: IrReferenceType) => string | undefined;
//# sourceMappingURL=anon-type-shape-serialization.d.ts.map