// @generated by microsandbox-types. Do not edit by hand. export type SnapshotManifest = { /** * Schema version. Exactly [`SCHEMA_VERSION`]. */ schema: number; /** * Artifact kind. Exactly [`SNAPSHOT_ARTIFACT_KIND`]. */ artifact: string; /** * Snapshot payload scope. */ scope: SnapshotScope; /** * Normalized RFC 3339 creation timestamp. */ created_at: string; /** * Exact snapshot identity of the logical lineage parent. */ parent: string | null; /** * Pinned base image. */ image: ImageRef; /** * Informational source-sandbox name. */ source_sandbox: string | null; /** * Closed file/checkpoint state variant. */ state: SnapshotState; /** * User-supplied labels, sorted by key in canonical form. */ labels: { [key in string]: string }; /** * Namespaced additive extension values. */ extensions: { [key in string]: unknown }; /** * Sorted unique must-understand extension keys. */ requires: Array; }; export type SnapshotScope = "disk" | "resumable"; export type ImageRef = { /** * Human-readable image reference. */ ref: string; /** * Pinned OCI manifest digest. */ manifest_digest: string; }; export type SnapshotState = | { "kind": "file" } & FileSnapshotState | { "kind": "checkpoint" } & CheckpointSnapshotState; export type FileSnapshotState = { /** * On-disk payload format. */ format: SnapshotFormat; /** * Filesystem type inside the payload. */ fstype: string; /** * File-backed upper-layer binding. */ upper: UpperLayer; }; export type CheckpointSnapshotState = { /** * Stable identifier for the captured cut. */ checkpoint_id: string; /** * SHA-256 identity of the disk or composite checkpoint manifest. */ manifest: string; }; export type SnapshotFormat = "raw" | "qcow2"; export type UpperLayer = { /** * One normal filename relative to the artifact directory. */ file: string; /** * Apparent file size, including sparse holes. */ size_bytes: number; /** * Optional semantic payload integrity. The field itself is required so * readers distinguish an intentional `null` from a malformed descriptor. */ integrity: UpperIntegrity | null; }; export type UpperIntegrity = { "algorithm": "sha256"; /** * Algorithm output in qualified digest form. */ digest: string; } | { "algorithm": "msb-sparse-sha256-v1"; /** * Algorithm output in qualified digest form. */ digest: string; } | { "algorithm": "msb-file-merkle-blake3-v1"; /** * Domain-separated Merkle root in qualified digest form. */ root: string; /** * Exact logical file length bound into the final root. */ logical_size: number; /** * Fixed leaf size. Exactly [`FILE_MERKLE_BLAKE3_LEAF_SIZE`]. */ leaf_size: number; };