/** * Content hashing for installed extension packages. * * @experimental This API is unstable and may change without notice. */ import * as Effect from "effect/Effect"; import * as FileSystem from "effect/FileSystem"; import * as Path from "effect/Path"; import { type AppError } from "../app-error/index.js"; import type { SourceHash } from "./rendered-files.js"; /** * Compute an advisory SHA-256 change marker over package content recursively. * * File order is normalized by sorting on relative path, and each entry * contributes its path and bytes separated by NUL so that a rename cannot * collide with a content change. * * The result is a change-detection marker for created/updated/unchanged * reporting, never a tamper seal — installed content is workspace-owned and * may be rewritten by content-preserving tools after install. * * @experimental This API is unstable and may change without notice. */ export declare const computePackageContentHash: (packageDir: string) => Effect.Effect; //# sourceMappingURL=package-hash.d.ts.map