import type { EvidenceParentIdentity, GitIdentity, PosixPathIdentity } from "./ci-reverification-identity.js"; import type { GitStatusSnapshot, MutationClassification } from "./ci-reverification-mutation.js"; import { type SourceIdentity } from "./source-identity.js"; export declare const MUTATION_SNAPSHOT_SCHEMA: "mutationSnapshot.2"; export type MutationDigest = { readonly count: number; readonly digest: string; }; export type PersistedPathIdentity = { readonly deviceIdentity: string; readonly identityDigest: string; readonly relativePath: string; }; export type CompleteMutationSnapshot = { readonly allowlist: { readonly allowedTracked: MutationDigest; readonly id: "java-spring-gradle-wrapper.1"; readonly roots: readonly ["build/**", ".gradle/**"]; }; readonly artifactParent: { readonly equal: boolean; readonly post?: PersistedPathIdentity; readonly pre: PersistedPathIdentity; readonly relativePath: string; }; readonly decision: "allowed" | "partial" | "report-only" | "snapshot-unavailable"; readonly disallowedTracked: MutationDigest; readonly git: { readonly available: boolean; readonly diagnosticCode: string; readonly headEqual: boolean; readonly postHead?: string; readonly preHead?: string; }; readonly kind: "complete"; readonly observed: MutationDigest; readonly post: { readonly entryCount: number; readonly normalizedPorcelainNameStatusNulSha256: string; }; readonly pre: { readonly entryCount: number; readonly normalizedPorcelainNameStatusNulSha256: string; }; readonly schemaVersion: typeof MUTATION_SNAPSHOT_SCHEMA; readonly sourceIdentity: { readonly equal: boolean; readonly post?: SourceIdentity; readonly pre: SourceIdentity; }; readonly untracked: MutationDigest; readonly workspaceRoot: { readonly equal: boolean; readonly post?: PersistedPathIdentity; readonly pre: PersistedPathIdentity; }; }; export type OverflowMutationSnapshot = { readonly kind: "overflow"; readonly overflowSummary: { readonly byteCount: number; readonly entryCount: number; readonly entryDigest: string; }; readonly schemaVersion: typeof MUTATION_SNAPSHOT_SCHEMA; }; export type MutationSnapshot = CompleteMutationSnapshot | OverflowMutationSnapshot; export type MutationSnapshotInput = { readonly classified: MutationClassification; readonly postGit: GitIdentity; readonly postParent: EvidenceParentIdentity | undefined; readonly postRoot: PosixPathIdentity | undefined; readonly postSourceIdentity: SourceIdentity | undefined; readonly postStatus: GitStatusSnapshot; readonly preGit: GitIdentity; readonly preParent: EvidenceParentIdentity; readonly preRoot: PosixPathIdentity; readonly preSourceIdentity: SourceIdentity; readonly preStatus: GitStatusSnapshot; }; export declare function createMutationSnapshot(input: MutationSnapshotInput): MutationSnapshot; export declare function createOverflowMutationSnapshot(source: string, entryCount: number): MutationSnapshot; export declare function verificationWorkspaceBinding(identity: PosixPathIdentity): { readonly deviceIdentity: string; readonly rootDigest: string; }; export declare function isSafeMutationSnapshotReference(value: string): boolean;