/** * Layer 0 — canonical serialization and content hashing (design §6.1, PR 1 / * task 3.6). * * Pure logic only: no I/O. In particular this module does NOT import * `node:crypto` — the hash algorithm is injected by the caller (plugin * layer), keeping this file free of the `io-seam-registry.json` obligation * (`antipattern-core-io`). */ /** Hash function injected by the caller (e.g. `node:crypto`'s sha256, hex-encoded). */ export type HashFn = (input: string) => string; /** 256 KB. Content beyond this size only has its prefix hashed (documented limitation). */ export declare const CANONICAL_JSON_MAX_CHARS = 262144; export declare function canonicalStringify(value: unknown): { readonly text: string; readonly truncated: boolean; }; export declare function computeContentHash(value: unknown, hash: HashFn): string; //# sourceMappingURL=artifact-content-hash.d.ts.map